Module org.apache.lucene.suggest
Class CompletionWeight
java.lang.Object
org.apache.lucene.search.Weight
org.apache.lucene.search.suggest.document.CompletionWeight
- All Implemented Interfaces:
SegmentCacheable
- Direct Known Subclasses:
ContextQuery.ContextCompletionWeight,FuzzyCompletionQuery.FuzzyCompletionWeight
Expert: the Weight for CompletionQuery, used to score and explain these queries.
Subclasses can override setNextMatch(IntsRef), boost() and context() to calculate the boost and extract the context of a matched path prefix.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.lucene.search.Weight
Weight.DefaultBulkScorer -
Field Summary
FieldsFields inherited from class org.apache.lucene.search.Weight
parentQuery -
Constructor Summary
ConstructorsConstructorDescriptionCompletionWeight(CompletionQuery query, Automaton automaton) Creates a weight forquerywith anautomaton, using thereaderfor index stats -
Method Summary
Modifier and TypeMethodDescriptionprotected floatboost()Returns the boost of the partial path set bysetNextMatch(IntsRef)bulkScorer(LeafReaderContext context) Optional method, to return aBulkScorerto score the query and send hits to aCollector.protected CharSequencecontext()Returns the context of the partial path set bysetNextMatch(IntsRef)explain(LeafReaderContext context, int doc) An explanation of the score computation for the named document.Returns the automaton specified by theCompletionQuerybooleanThis object can be cachedscorer(LeafReaderContext context) Returns aScorerwhich can iterate in order over all matching documents and assign them a score.protected voidsetNextMatch(IntsRef pathPrefix) Set for every partial path in the index that matched the query automaton.Methods inherited from class org.apache.lucene.search.Weight
count, getQuery, matches, scorerSupplier
-
Field Details
-
completionQuery
-
automaton
-
-
Constructor Details
-
CompletionWeight
Creates a weight forquerywith anautomaton, using thereaderfor index stats- Throws:
IOException
-
-
Method Details
-
getAutomaton
Returns the automaton specified by theCompletionQuery- Returns:
- query automaton
-
bulkScorer
Description copied from class:WeightOptional method, to return aBulkScorerto score the query and send hits to aCollector. Only queries that have a different top-level approach need to override this; the default implementation pulls a normalScorerand iterates and collects the resulting hits which are not marked as deleted.- Overrides:
bulkScorerin classWeight- Parameters:
context- theLeafReaderContextfor which to return theScorer.- Returns:
- a
BulkScorerwhich scores documents and passes them to a collector. - Throws:
IOException- if there is a low-level I/O error
-
setNextMatch
Set for every partial path in the index that matched the query automaton.Subclasses should override
boost()andcontext()to return an appropriate value with respect to the current pathPrefix.- Parameters:
pathPrefix- the prefix of a matched path
-
boost
protected float boost()Returns the boost of the partial path set bysetNextMatch(IntsRef)- Returns:
- suggestion query-time boost
-
context
Returns the context of the partial path set bysetNextMatch(IntsRef)- Returns:
- suggestion context
-
scorer
Description copied from class:WeightReturns aScorerwhich 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
Scorerdoes not haveLeafReader.getLiveDocs()applied, they need to be checked on top.- Specified by:
scorerin classWeight- Parameters:
context- theLeafReaderContextfor which to return theScorer.- Returns:
- a
Scorerwhich scores documents in/out-of order. - Throws:
IOException- if there is a low-level I/O error
-
isCacheable
This object can be cached- Returns:
trueif the object can be cached against a given leaf- See Also:
-
explain
Description copied from class:WeightAn explanation of the score computation for the named document.- 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
-