public abstract class TopTermsRewrite<B> extends MultiTermQuery.RewriteMethod
Constructor and Description |
---|
TopTermsRewrite(int size)
Create a TopTermsBooleanQueryRewrite for
at most
size terms. |
Modifier and Type | Method and Description |
---|---|
protected void |
addClause(B topLevel,
Term term,
int docCount,
float boost)
Add a MultiTermQuery term to the top-level query builder.
|
protected abstract void |
addClause(B topLevel,
Term term,
int docCount,
float boost,
TermContext states) |
protected abstract Query |
build(B builder)
Finalize the creation of the query from the builder.
|
boolean |
equals(Object obj) |
protected abstract int |
getMaxSize()
return the maximum size of the priority queue (for boolean rewrites this is BooleanQuery#getMaxClauseCount).
|
int |
getSize()
return the maximum priority queue size
|
protected abstract B |
getTopLevelBuilder()
Return a suitable builder for the top-level Query for holding all expanded terms.
|
int |
hashCode() |
Query |
rewrite(IndexReader reader,
MultiTermQuery query) |
getTermsEnum
public TopTermsRewrite(int size)
size
terms.
NOTE: if BooleanQuery.getMaxClauseCount()
is smaller than
size
, then it will be used instead.
public int getSize()
protected abstract int getMaxSize()
public final Query rewrite(IndexReader reader, MultiTermQuery query) throws IOException
rewrite
in class MultiTermQuery.RewriteMethod
IOException
protected abstract B getTopLevelBuilder() throws IOException
IOException
protected abstract Query build(B builder)
protected final void addClause(B topLevel, Term term, int docCount, float boost) throws IOException
IOException
protected abstract void addClause(B topLevel, Term term, int docCount, float boost, TermContext states) throws IOException
IOException
Copyright © 2000-2016 Apache Software Foundation. All Rights Reserved.