Package org.apache.lucene.search
Class BooleanQuery.BooleanWeight
- java.lang.Object
-
- org.apache.lucene.search.Weight
-
- org.apache.lucene.search.BooleanQuery.BooleanWeight
-
- All Implemented Interfaces:
Serializable
- Enclosing class:
- BooleanQuery
protected class BooleanQuery.BooleanWeight extends Weight
Expert: the Weight for BooleanQuery, used to normalize, score and explain these queries.NOTE: this API and implementation is subject to change suddenly in the next release.
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected intmaxCoordprotected SimilaritysimilarityThe Similarity implementation.protected ArrayList<Weight>weights
-
Constructor Summary
Constructors Constructor Description BooleanWeight(Searcher searcher, boolean disableCoord)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Explanationexplain(IndexReader reader, int doc)An explanation of the score computation for the named document.QuerygetQuery()The query that this concerns.floatgetValue()The weight for this query.voidnormalize(float norm)Assigns the query normalization factor to this.Scorerscorer(IndexReader reader, boolean scoreDocsInOrder, boolean topScorer)Returns aScorerwhich scores documents in/out-of order according toscoreDocsInOrder.booleanscoresDocsOutOfOrder()Returns true iff this implementation scores docs only out of order.floatsumOfSquaredWeights()The sum of squared weights of contained query clauses.
-
-
-
Field Detail
-
similarity
protected Similarity similarity
The Similarity implementation.
-
maxCoord
protected int maxCoord
-
-
Constructor Detail
-
BooleanWeight
public BooleanWeight(Searcher searcher, boolean disableCoord) throws IOException
- Throws:
IOException
-
-
Method Detail
-
getQuery
public Query getQuery()
Description copied from class:WeightThe query that this concerns.
-
getValue
public float getValue()
Description copied from class:WeightThe weight for this query.
-
sumOfSquaredWeights
public float sumOfSquaredWeights() throws IOExceptionDescription copied from class:WeightThe sum of squared weights of contained query clauses.- Specified by:
sumOfSquaredWeightsin classWeight- Throws:
IOException
-
normalize
public void normalize(float norm)
Description copied from class:WeightAssigns the query normalization factor to this.
-
explain
public Explanation explain(IndexReader reader, int doc) throws IOException
Description copied from class:WeightAn explanation of the score computation for the named document.- Specified by:
explainin classWeight- Parameters:
reader- sub-reader containing the give doc- Returns:
- an Explanation for the score
- Throws:
IOException
-
scorer
public Scorer scorer(IndexReader reader, boolean scoreDocsInOrder, boolean topScorer) throws IOException
Description copied from class:WeightReturns aScorerwhich scores documents in/out-of order according toscoreDocsInOrder.NOTE: even if
scoreDocsInOrderis false, it is recommended to check whether the returnedScorerindeed scores documents out of order (i.e., callWeight.scoresDocsOutOfOrder()), as someScorerimplementations will always return documents in-order.
NOTE: null can be returned if no documents will be scored by this query.- Specified by:
scorerin classWeight- Parameters:
reader- theIndexReaderfor 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.- Returns:
- a
Scorerwhich scores documents in/out-of order. - Throws:
IOException
-
scoresDocsOutOfOrder
public boolean scoresDocsOutOfOrder()
Description copied from class:WeightReturns true iff this implementation scores docs only out of order. This method is used in conjunction withCollector'sacceptsDocsOutOfOrderandWeight.scorer(org.apache.lucene.index.IndexReader, boolean, boolean)to create a matchingScorerinstance for a givenCollector, or vice versa.NOTE: the default implementation returns
false, i.e. theScorerscores documents in-order.- Overrides:
scoresDocsOutOfOrderin classWeight
-
-