public final class CoveringQuery extends Query implements Accountable
Query that allows to have a configurable number or required
matches per document. This is typically useful in order to build queries
whose query terms must all appear in documents.| Modifier and Type | Class and Description |
|---|---|
private static class |
CoveringQuery.CoveringWeight |
| Modifier and Type | Field and Description |
|---|---|
private static long |
BASE_RAM_BYTES |
private int |
hashCode |
private LongValuesSource |
minimumNumberMatch |
private java.util.Collection<Query> |
queries |
private long |
ramBytesUsed |
| Constructor and Description |
|---|
CoveringQuery(java.util.Collection<Query> queries,
LongValuesSource minimumNumberMatch)
Sole constructor.
|
| Modifier and Type | Method and Description |
|---|---|
private int |
computeHashCode() |
Weight |
createWeight(IndexSearcher searcher,
ScoreMode scoreMode,
float boost)
Expert: Constructs an appropriate Weight implementation for this query.
|
boolean |
equals(java.lang.Object obj)
Override and implement query instance equivalence properly in a subclass.
|
int |
hashCode()
Override and implement query hash code properly in a subclass.
|
long |
ramBytesUsed()
Return the memory usage of this object in bytes.
|
Query |
rewrite(IndexReader reader)
Expert: called to re-write queries into primitive queries.
|
java.lang.String |
toString(java.lang.String field)
Prints a query to a string, with
field assumed to be the
default field and omitted. |
void |
visit(QueryVisitor visitor)
Recurse through the query tree, visiting any child queries
|
classHash, sameClassAs, toStringclone, finalize, getClass, notify, notifyAll, wait, wait, waitgetChildResourcesprivate static final long BASE_RAM_BYTES
private final java.util.Collection<Query> queries
private final LongValuesSource minimumNumberMatch
private final int hashCode
private final long ramBytesUsed
public CoveringQuery(java.util.Collection<Query> queries, LongValuesSource minimumNumberMatch)
queries - Sub queries to match.minimumNumberMatch - Per-document long value that records how many queries
should match. Values that are less than 1 are treated
like 1: only documents that have at least one
matching clause will be considered matches. Documents
that do not have a value for minimumNumberMatch
do not match.public java.lang.String toString(java.lang.String field)
Queryfield assumed to be the
default field and omitted.public boolean equals(java.lang.Object obj)
QueryQueryCache works properly.
Typically a query will be equal to another only if it's an instance of
the same class and its document-filtering properties are identical that other
instance. Utility methods are provided for certain repetitive code.equals in class QueryQuery.sameClassAs(Object),
Query.classHash()private int computeHashCode()
public int hashCode()
QueryQueryCache works properly.hashCode in class QueryQuery.equals(Object)public long ramBytesUsed()
AccountableramBytesUsed in interface Accountablepublic Query rewrite(IndexReader reader) throws java.io.IOException
Querypublic void visit(QueryVisitor visitor)
Querypublic Weight createWeight(IndexSearcher searcher, ScoreMode scoreMode, float boost) throws java.io.IOException
QueryOnly implemented by primitive queries, which re-write to themselves.
createWeight in class QueryscoreMode - How the produced scorers will be consumed.boost - The boost that is propagated by the parent queries.java.io.IOException