java.lang.Object
org.apache.lucene.search.Weight
org.apache.lucene.queries.spans.SpanWeight
- All Implemented Interfaces:
SegmentCacheable
- Direct Known Subclasses:
PayloadScoreQuery.PayloadSpanWeight
,SpanContainQuery.SpanContainWeight
,SpanNearQuery.SpanGapQuery.SpanGapWeight
,SpanNearQuery.SpanNearWeight
,SpanNotQuery.SpanNotWeight
,SpanOrQuery.SpanOrWeight
,SpanPayloadCheckQuery.SpanPayloadCheckWeight
,SpanPositionCheckQuery.SpanPositionCheckWeight
,SpanTermQuery.SpanTermWeight
Expert-only. Public for use by other weight implementations
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enum
Enumeration defining what postings information should be retrieved from the index for a given Spansprivate static class
Nested classes/interfaces inherited from class org.apache.lucene.search.Weight
Weight.DefaultBulkScorer, Weight.DefaultScorerSupplier
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final String
protected final Similarity
protected final Similarity.SimScorer
Fields inherited from class org.apache.lucene.search.Weight
parentQuery
-
Constructor Summary
ConstructorsConstructorDescriptionSpanWeight
(SpanQuery query, IndexSearcher searcher, Map<Term, TermStates> termStates, float boost) Create a new SpanWeight -
Method Summary
Modifier and TypeMethodDescriptionprivate Similarity.SimScorer
buildSimWeight
(SpanQuery query, IndexSearcher searcher, Map<Term, TermStates> termStates, float boost) explain
(LeafReaderContext context, int doc) An explanation of the score computation for the named document.abstract void
extractTermStates
(Map<Term, TermStates> contexts) Collect all TermStates used by this WeightReturn the SimScorerabstract Spans
getSpans
(LeafReaderContext ctx, SpanWeight.Postings requiredPostings) Expert: Return a Spans object iterating over matches from this Weightmatches
(LeafReaderContext context, int doc) ReturnsMatches
for a specific document, ornull
if the document does not match the parent queryscorerSupplier
(LeafReaderContext context) Get aScorerSupplier
, which allows knowing the cost of theScorer
before building it.Methods inherited from class org.apache.lucene.search.Weight
bulkScorer, count, getQuery, scorer
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.lucene.search.SegmentCacheable
isCacheable
-
Field Details
-
similarity
-
simScorer
-
field
-
-
Constructor Details
-
SpanWeight
public SpanWeight(SpanQuery query, IndexSearcher searcher, Map<Term, TermStates> termStates, float boost) throws IOExceptionCreate a new SpanWeight- Parameters:
query
- the parent querysearcher
- the IndexSearcher to query againsttermStates
- a map of terms toTermStates
for use in building the similarity. May be null if scores are not required- Throws:
IOException
- on error
-
-
Method Details
-
buildSimWeight
private Similarity.SimScorer buildSimWeight(SpanQuery query, IndexSearcher searcher, Map<Term, TermStates> termStates, float boost) throws IOException- Throws:
IOException
-
extractTermStates
Collect all TermStates used by this Weight- Parameters:
contexts
- a map to add the TermStates to
-
getSpans
public abstract Spans getSpans(LeafReaderContext ctx, SpanWeight.Postings requiredPostings) throws IOException Expert: Return a Spans object iterating over matches from this Weight- Parameters:
ctx
- a LeafReaderContext for this Spans- Returns:
- a Spans
- Throws:
IOException
- on error
-
scorerSupplier
Description copied from class:Weight
Get aScorerSupplier
, which allows knowing the cost of theScorer
before building it. A scorer supplier for the sameLeafReaderContext
instance may be requested multiple times as part of a single search call.Note: It must return null if the scorer is null.
- Specified by:
scorerSupplier
in classWeight
- Parameters:
context
- the leaf reader context- Returns:
- a
ScorerSupplier
providing the scorer, or null if scorer is null - Throws:
IOException
- if an IOException occurs- See Also:
-
getSimScorer
Return the SimScorer -
explain
Description copied from class:Weight
An explanation of the score computation for the named document.- 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
-
matches
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
-