- java.lang.Object
-
- org.apache.lucene.search.Weight
-
- org.apache.lucene.search.FilterWeight
-
- All Implemented Interfaces:
SegmentCacheable
- Direct Known Subclasses:
GlobalOrdinalsWithScoreQuery.W
,QueryProfilerWeight
,ToChildBlockJoinQuery.ToChildBlockJoinWeight
,ToParentBlockJoinQuery.BlockJoinWeight
public abstract class FilterWeight extends Weight
AFilterWeight
contains anotherWeight
and implements all abstract methods by calling the contained weight's method.Note that
FilterWeight
does not override the non-abstractWeight.bulkScorer(LeafReaderContext)
method and subclasses ofFilterWeight
must provide their bulkScorer implementation if required.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.lucene.search.Weight
Weight.DefaultBulkScorer
-
-
Field Summary
Fields Modifier and Type Field Description protected Weight
in
-
Fields inherited from class org.apache.lucene.search.Weight
parentQuery
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
FilterWeight(Query query, Weight weight)
Alternative constructor.protected
FilterWeight(Weight weight)
Default constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Explanation
explain(LeafReaderContext context, int doc)
An explanation of the score computation for the named document.boolean
isCacheable(LeafReaderContext ctx)
Matches
matches(LeafReaderContext context, int doc)
ReturnsMatches
for a specific document, ornull
if the document does not match the parent queryScorer
scorer(LeafReaderContext context)
Returns aScorer
which can iterate in order over all matching documents and assign them a score.-
Methods inherited from class org.apache.lucene.search.Weight
bulkScorer, count, getQuery, scorerSupplier
-
-
-
-
Field Detail
-
in
protected final Weight in
-
-
Constructor Detail
-
FilterWeight
protected FilterWeight(Weight weight)
Default constructor.
-
FilterWeight
protected FilterWeight(Query query, Weight weight)
Alternative constructor. Use this variant only if theweight
was not obtained via theQuery.createWeight(IndexSearcher, ScoreMode, float)
method of thequery
object.
-
-
Method Detail
-
isCacheable
public boolean isCacheable(LeafReaderContext ctx)
- Returns:
true
if the object can be cached against a given leaf
-
explain
public Explanation explain(LeafReaderContext context, int doc) throws java.io.IOException
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:
java.io.IOException
- if anIOException
occurs
-
scorer
public Scorer scorer(LeafReaderContext context) throws java.io.IOException
Description copied from class:Weight
Returns aScorer
which 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
Scorer
does not haveLeafReader.getLiveDocs()
applied, they need to be checked on top.- Specified by:
scorer
in classWeight
- Parameters:
context
- theLeafReaderContext
for which to return theScorer
.- Returns:
- a
Scorer
which scores documents in/out-of order. - Throws:
java.io.IOException
- if there is a low-level I/O error
-
matches
public Matches matches(LeafReaderContext context, int doc) throws java.io.IOException
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
-
-