Package org.apache.lucene.search
Class ScoreCachingWrappingScorer
- java.lang.Object
-
- org.apache.lucene.search.Scorable
-
- org.apache.lucene.search.ScoreCachingWrappingScorer
-
public final class ScoreCachingWrappingScorer extends Scorable
AScorer
which wraps another scorer and caches the score of the current document. Successive calls toscore()
will return the same result and will not invoke the wrapped Scorer's score() method, unless the current document has changed.
This class might be useful due to the changes done to theCollector
interface, in which the score is not computed for a document by default, only if the collector requests it. Some collectors may need to use the score in several places, however all they have in hand is aScorer
object, and might end up computing the score of a document more than once.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.lucene.search.Scorable
Scorable.ChildScorable
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description int
docID()
Returns the doc ID that is currently being scored.Collection<Scorable.ChildScorable>
getChildren()
Returns child sub-scorers positioned on the current documentfloat
score()
Returns the score of the current document matching the query.void
setMinCompetitiveScore(float minScore)
Optional method: Tell the scorer that its iterator may safely ignore all documents whose score is less than the givenminScore
.static Scorable
wrap(Scorable scorer)
Wraps the providedScorable
unless it's already an instance ofScoreCachingWrappingScorer
, in which case it will just return the provided instance.-
Methods inherited from class org.apache.lucene.search.Scorable
smoothingScore
-
-
-
-
Method Detail
-
wrap
public static Scorable wrap(Scorable scorer)
Wraps the providedScorable
unless it's already an instance ofScoreCachingWrappingScorer
, in which case it will just return the provided instance.- Parameters:
scorer
- UnderlyingScorable
to wrap- Returns:
- Instance of
ScoreCachingWrappingScorer
wrapping the underlyingscorer
-
score
public float score() throws IOException
Description copied from class:Scorable
Returns the score of the current document matching the query.- Specified by:
score
in classScorable
- Throws:
IOException
-
setMinCompetitiveScore
public void setMinCompetitiveScore(float minScore) throws IOException
Description copied from class:Scorable
Optional method: Tell the scorer that its iterator may safely ignore all documents whose score is less than the givenminScore
. This is a no-op by default.This method may only be called from collectors that use
ScoreMode.TOP_SCORES
, and successive calls may only set increasing values ofminScore
.- Overrides:
setMinCompetitiveScore
in classScorable
- Throws:
IOException
-
docID
public int docID()
Description copied from class:Scorable
Returns the doc ID that is currently being scored.
-
getChildren
public Collection<Scorable.ChildScorable> getChildren()
Description copied from class:Scorable
Returns child sub-scorers positioned on the current document- Overrides:
getChildren
in classScorable
-
-