Package org.apache.lucene.search
Class DisjunctionMaxQuery.DisjunctionMaxWeight
- java.lang.Object
-
- org.apache.lucene.search.Weight
-
- org.apache.lucene.search.DisjunctionMaxQuery.DisjunctionMaxWeight
-
- All Implemented Interfaces:
SegmentCacheable
- Enclosing class:
- DisjunctionMaxQuery
protected class DisjunctionMaxQuery.DisjunctionMaxWeight extends Weight
Expert: the Weight for DisjunctionMaxQuery, used to normalize, score and explain these queries.NOTE: this API and implementation is subject to change suddenly in the next release.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.lucene.search.Weight
Weight.DefaultBulkScorer
-
-
Field Summary
Fields Modifier and Type Field Description protected ArrayList<Weight>
weights
The Weights for our subqueries, in 1-1 correspondence with disjuncts-
Fields inherited from class org.apache.lucene.search.Weight
parentQuery
-
-
Constructor Summary
Constructors Constructor Description DisjunctionMaxWeight(IndexSearcher searcher, ScoreMode scoreMode, float boost)
Construct the Weight for this Query searched by searcher.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Explanation
explain(LeafReaderContext context, int doc)
Explain the score we computed for docboolean
isCacheable(LeafReaderContext ctx)
Matches
matches(LeafReaderContext context, int doc)
ReturnsMatches
for a specific document, ornull
if the document does not match the parent queryScorer
scorer(LeafReaderContext context)
Returns aScorer
which can iterate in order over all matching documents and assign them a score.ScorerSupplier
scorerSupplier(LeafReaderContext context)
Optional method.-
Methods inherited from class org.apache.lucene.search.Weight
bulkScorer, count, getQuery
-
-
-
-
Constructor Detail
-
DisjunctionMaxWeight
public DisjunctionMaxWeight(IndexSearcher searcher, ScoreMode scoreMode, float boost) throws IOException
Construct the Weight for this Query searched by searcher. Recursively construct subquery weights.- Throws:
IOException
-
-
Method Detail
-
matches
public Matches matches(LeafReaderContext context, int doc) throws IOException
Description copied from class:Weight
ReturnsMatches
for a specific document, ornull
if the document does not match the parent queryA query match that contains no position information (for example, a Point or DocValues query) will return
MatchesUtils.MATCH_WITH_NO_TERMS
- Overrides:
matches
in classWeight
- Parameters:
context
- the reader's context to create theMatches
fordoc
- the document's id relative to the given context's reader- Throws:
IOException
-
scorerSupplier
public ScorerSupplier scorerSupplier(LeafReaderContext context) throws IOException
Description copied from class:Weight
Optional method. Get aScorerSupplier
, which allows to know the cost of theScorer
before building it. The default implementation callsWeight.scorer(org.apache.lucene.index.LeafReaderContext)
and builds aScorerSupplier
wrapper around it.- Overrides:
scorerSupplier
in classWeight
- Throws:
IOException
- See Also:
Weight.scorer(org.apache.lucene.index.LeafReaderContext)
-
scorer
public Scorer scorer(LeafReaderContext context) throws IOException
Description copied from class:Weight
Returns aScorer
which can iterate in order over all matching documents and assign them a score.NOTE: null can be returned if no documents will be scored by this query.
NOTE: The returned
Scorer
does not haveLeafReader.getLiveDocs()
applied, they need to be checked on top.- Specified by:
scorer
in classWeight
- Parameters:
context
- theLeafReaderContext
for which to return theScorer
.- Returns:
- a
Scorer
which scores documents in/out-of order. - Throws:
IOException
- if there is a low-level I/O error
-
isCacheable
public boolean isCacheable(LeafReaderContext ctx)
- Returns:
true
if the object can be cached against a given leaf
-
explain
public Explanation explain(LeafReaderContext context, int doc) throws IOException
Explain the score we computed for doc- Specified by:
explain
in classWeight
- Parameters:
context
- the readers context to create theExplanation
for.doc
- the document's id relative to the given context's reader- Returns:
- an Explanation for the score
- Throws:
IOException
- if anIOException
occurs
-
-