- Timestamp:
- 2018-10-09T19:35:40+13:00 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
main/trunk/greenstone2/common-src/indexers/lucene-gs/src/org/greenstone/LuceneWrapper4/GS2LuceneQuery.java
r32507 r32508 172 172 173 173 Query query = parseQuery(reader, query_parser, query_string, fuzziness); 174 query = recursive RewriteQuery(query, reader);174 query = recursivelyRewriteQuery(query, reader); 175 175 // System.err.println("@@@@ final query class name: " + query.getClass()); 176 176 … … 473 473 // season* 474 474 // snail farm 475 // Idea for th is method came from inspecting source code to BooleanQuery476 // https://github.com/apache/lucene-solr/blob/master/lucene/core/src/java/org/apache/lucene/search/BooleanQuery.java475 // Idea for the solution of recursively processing a BooleanQuery came from inspecting source code to BooleanQuery.java 476 // https://github.com/apache/lucene-solr/blob/master/lucene/core/src/java/org/apache/lucene/search/BooleanQuery.java 477 477 // which also does a recursive rewrite. Unfortunately, the existing BooleanQuery does not handle MultiTermQuery 478 478 // subcomponents. 479 protected Query recursive RewriteQuery(Query orig_query, IndexReader reader) throws java.io.IOException479 protected Query recursivelyRewriteQuery(Query orig_query, IndexReader reader) throws java.io.IOException 480 480 { 481 481 //Query query = orig_query.rewrite(reader); … … 487 487 for (BooleanClause clause : clauses) { 488 488 Query subQuery = clause.getQuery(); 489 subQuery = recursive RewriteQuery(subQuery, reader);489 subQuery = recursivelyRewriteQuery(subQuery, reader); 490 490 clause.setQuery(subQuery); 491 491 } … … 557 557 } 558 558 559 // BooleanQuery.java recurses rewriting any query until it is identical before and after rewrite, 560 // see reference to "recursively rewrite" in 561 // https://github.com/apache/lucene-solr/blob/master/lucene/core/src/java/org/apache/lucene/search/BooleanQuery.java 559 562 if(orig_query == query) { 560 563 return query; 561 564 } else { 562 return recursive RewriteQuery(query, reader);565 return recursivelyRewriteQuery(query, reader); 563 566 } 564 567 }
Note:
See TracChangeset
for help on using the changeset viewer.