java.lang.Object
org.apache.lucene.search.Weight
org.apache.lucene.search.FilterWeight
org.apache.lucene.sandbox.search.QueryProfilerWeight
- All Implemented Interfaces:
SegmentCacheable
-
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.FilterWeight
inFields inherited from class org.apache.lucene.search.Weight
parentQuery -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbulkScorer(LeafReaderContext context) Optional method, to return aBulkScorerto score the query and send hits to aCollector.intcount(LeafReaderContext context) Counts the number of live documents that match a givenWeight.parentQueryin a leaf.booleanscorer(LeafReaderContext context) Returns aScorerwhich can iterate in order over all matching documents and assign them a score.scorerSupplier(LeafReaderContext context) Optional method.Methods inherited from class org.apache.lucene.search.FilterWeight
explain, matches
-
Field Details
-
profile
-
-
Constructor Details
-
QueryProfilerWeight
-
-
Method Details
-
count
Description copied from class:WeightCounts the number of live documents that match a givenWeight.parentQueryin a leaf.The default implementation returns -1 for every query. This indicates that the count could not be computed in sub-linear time.
Specific query classes should override it to provide other accurate sub-linear implementations (that actually return the count). Look at
MatchAllDocsQuery.createWeight(IndexSearcher, ScoreMode, float)for an exampleWe use this property of the function to count hits in
IndexSearcher.count(Query).- Overrides:
countin classWeight- Parameters:
context- theLeafReaderContextfor which to return the count.- Returns:
- integer count of the number of matches
- Throws:
IOException- if there is a low-level I/O error
-
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.- Overrides:
scorerin classFilterWeight- 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
-
scorerSupplier
Description copied from class:WeightOptional method. Get aScorerSupplier, which allows to know the cost of theScorerbefore building it. The default implementation callsWeight.scorer(org.apache.lucene.index.LeafReaderContext)and builds aScorerSupplierwrapper around it.- Overrides:
scorerSupplierin classWeight- Throws:
IOException- See Also:
-
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
-
isCacheable
- Specified by:
isCacheablein interfaceSegmentCacheable- Overrides:
isCacheablein classFilterWeight- Returns:
trueif the object can be cached against a given leaf
-