Package org.apache.lucene.search
Class DisjunctionMaxQuery.DisjunctionMaxWeight
java.lang.Object
org.apache.lucene.search.Weight
org.apache.lucene.search.DisjunctionMaxQuery.DisjunctionMaxWeight
- Enclosing class:
- DisjunctionMaxQuery
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.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionDisjunctionMaxWeight
(IndexSearcher searcher) Construct the Weight for this Query searched by searcher. -
Method Summary
Modifier and TypeMethodDescriptionexplain
(AtomicReaderContext context, int doc) Explain the score we computed for docgetQuery()
Return our associated DisjunctionMaxQueryfloat
Compute the sub of squared weights of us applied to our subqueries.void
normalize
(float norm, float topLevelBoost) Apply the computed normalization factor to our subqueriesscorer
(AtomicReaderContext context, boolean scoreDocsInOrder, boolean topScorer, Bits acceptDocs) Create the scorer used to score our associated DisjunctionMaxQueryMethods inherited from class org.apache.lucene.search.Weight
scoresDocsOutOfOrder
-
Field Details
-
weights
The Weights for our subqueries, in 1-1 correspondence with disjuncts
-
-
Constructor Details
-
DisjunctionMaxWeight
Construct the Weight for this Query searched by searcher. Recursively construct subquery weights.- Throws:
IOException
-
-
Method Details
-
getQuery
Return our associated DisjunctionMaxQuery -
getValueForNormalization
Compute the sub of squared weights of us applied to our subqueries. Used for normalization.- Specified by:
getValueForNormalization
in classWeight
- Throws:
IOException
-
normalize
public void normalize(float norm, float topLevelBoost) Apply the computed normalization factor to our subqueries -
scorer
public Scorer scorer(AtomicReaderContext context, boolean scoreDocsInOrder, boolean topScorer, Bits acceptDocs) throws IOException Create the scorer used to score our associated DisjunctionMaxQuery- Specified by:
scorer
in classWeight
- Parameters:
context
- theAtomicReaderContext
for which to return theScorer
.scoreDocsInOrder
- specifies whether in-order scoring of documents is required. Note that if set to false (i.e., out-of-order scoring is required), this method can return whatever scoring mode it supports, as every in-order scorer is also an out-of-order one. However, an out-of-order scorer may not supportDocIdSetIterator.nextDoc()
and/orDocIdSetIterator.advance(int)
, therefore it is recommended to request an in-order scorer if use of these methods is required.topScorer
- if true,Scorer.score(Collector)
will be called; if false,DocIdSetIterator.nextDoc()
and/orDocIdSetIterator.advance(int)
will be called.acceptDocs
- Bits that represent the allowable docs to match (typically deleted docs but possibly filtering other documents)- Returns:
- a
Scorer
which scores documents in/out-of order. - Throws:
IOException
- if there is a low-level I/O error
-
explain
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
-