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
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.
-
-
Constructor Summary
Constructors Constructor Description DisjunctionMaxWeight(IndexSearcher searcher)Construct the Weight for this Query searched by searcher.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Explanationexplain(AtomicReaderContext context, int doc)Explain the score we computed for docQuerygetQuery()Return our associated DisjunctionMaxQueryfloatgetValueForNormalization()Compute the sub of squared weights of us applied to our subqueries.voidnormalize(float norm, float topLevelBoost)Apply the computed normalization factor to our subqueriesScorerscorer(AtomicReaderContext context, boolean scoreDocsInOrder, boolean topScorer, Bits acceptDocs)Create the scorer used to score our associated DisjunctionMaxQuery-
Methods inherited from class org.apache.lucene.search.Weight
scoresDocsOutOfOrder
-
-
-
-
Constructor Detail
-
DisjunctionMaxWeight
public DisjunctionMaxWeight(IndexSearcher searcher) throws IOException
Construct the Weight for this Query searched by searcher. Recursively construct subquery weights.- Throws:
IOException
-
-
Method Detail
-
getQuery
public Query getQuery()
Return our associated DisjunctionMaxQuery
-
getValueForNormalization
public float getValueForNormalization() throws IOExceptionCompute the sub of squared weights of us applied to our subqueries. Used for normalization.- Specified by:
getValueForNormalizationin 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:
scorerin classWeight- Parameters:
context- theAtomicReaderContextfor 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
Scorerwhich scores documents in/out-of order. - Throws:
IOException- if there is a low-level I/O error
-
explain
public Explanation explain(AtomicReaderContext context, int doc) throws IOException
Explain the score we computed for doc- Specified by:
explainin classWeight- Parameters:
context- the readers context to create theExplanationfor.doc- the document's id relative to the given context's reader- Returns:
- an Explanation for the score
- Throws:
IOException- if anIOExceptionoccurs
-
-