equal
deleted
inserted
replaced
28 getTermsFromBooleanQuery((BooleanQuery *) query, terms, prohibited); |
28 getTermsFromBooleanQuery((BooleanQuery *) query, terms, prohibited); |
29 else if (query->instanceOf( PhraseQuery::getClassName() )) |
29 else if (query->instanceOf( PhraseQuery::getClassName() )) |
30 getTermsFromPhraseQuery((PhraseQuery *) query, terms); |
30 getTermsFromPhraseQuery((PhraseQuery *) query, terms); |
31 else if (query->instanceOf( TermQuery::getClassName() )) |
31 else if (query->instanceOf( TermQuery::getClassName() )) |
32 getTermsFromTermQuery((TermQuery *) query, terms); |
32 getTermsFromTermQuery((TermQuery *) query, terms); |
|
33 // Adding support for prefix Query to have direct comparision of Query text |
|
34 else if (query->instanceOf( PrefixQuery::getClassName() )) |
|
35 getTermsFromPrefixQuery((PrefixQuery *) query, terms); |
33 //else if(query->instanceOf(_T("SpanNearQuery")) |
36 //else if(query->instanceOf(_T("SpanNearQuery")) |
34 // getTermsFromSpanNearQuery((SpanNearQuery*) query, terms); |
37 // getTermsFromSpanNearQuery((SpanNearQuery*) query, terms); |
35 } |
38 } |
36 |
39 |
37 /** |
40 /** |
119 terms->insert(pWT); |
122 terms->insert(pWT); |
120 else |
123 else |
121 _CLDELETE(pWT); |
124 _CLDELETE(pWT); |
122 } |
125 } |
123 |
126 |
|
127 |
|
128 void QueryTermExtractor::getTermsFromPrefixQuery( PrefixQuery * query, WeightedTermList * terms) |
|
129 { |
|
130 Term *term = query->getPrefix(); |
|
131 WeightedTerm * pWT = _CLNEW WeightedTerm(query->getBoost(),term->text()); |
|
132 _CLDECDELETE(term); |
|
133 if (terms->find(pWT)==terms->end()) // possible memory leak if key already present |
|
134 terms->insert(pWT); |
|
135 else |
|
136 _CLDELETE(pWT); |
|
137 } |
|
138 |
124 //todo: implement this when span queries are implemented |
139 //todo: implement this when span queries are implemented |
125 /*void getTermsFromSpanNearQuery(SpanNearQuery* query, WeightedTermList* terms){ |
140 /*void getTermsFromSpanNearQuery(SpanNearQuery* query, WeightedTermList* terms){ |
126 Collection queryTerms = query.getTerms(); |
141 Collection queryTerms = query.getTerms(); |
127 |
142 |
128 for(Iterator iterator = queryTerms.iterator(); iterator.hasNext();){ |
143 for(Iterator iterator = queryTerms.iterator(); iterator.hasNext();){ |