Package org.apache.lucene.search
Class TopScoreDocCollector
A
Collector implementation that collects the top-scoring hits,
returning them as a TopDocs. This is used by IndexSearcher to
implement TopDocs-based search. Hits are sorted by score descending
and then (when the scores are tied) docID ascending. When you create an
instance of this collector you should know in advance whether documents are
going to be collected in doc Id order or not.
NOTE: The values Float.NaN and
Float.NEGATIVE_INFINITY are not valid scores. This
collector will not properly collect hits with such
scores.
-
Method Summary
Modifier and TypeMethodDescriptionstatic TopScoreDocCollectorcreate(int numHits, boolean docsScoredInOrder) Creates a newTopScoreDocCollectorgiven the number of hits to collect and whether documents are scored in order by the inputScorertosetScorer(Scorer).static TopScoreDocCollectorCreates a newTopScoreDocCollectorgiven the number of hits to collect, the bottom of the previous page, and whether documents are scored in order by the inputScorertosetScorer(Scorer).voidsetNextReader(AtomicReaderContext context) Called before collecting from eachAtomicReaderContext.voidCalled before successive calls toCollector.collect(int).Methods inherited from class org.apache.lucene.search.TopDocsCollector
getTotalHits, topDocs, topDocs, topDocsMethods inherited from class org.apache.lucene.search.Collector
acceptsDocsOutOfOrder, collect
-
Method Details
-
create
Creates a newTopScoreDocCollectorgiven the number of hits to collect and whether documents are scored in order by the inputScorertosetScorer(Scorer).NOTE: The instances returned by this method pre-allocate a full array of length
numHits, and fill the array with sentinel objects. -
create
Creates a newTopScoreDocCollectorgiven the number of hits to collect, the bottom of the previous page, and whether documents are scored in order by the inputScorertosetScorer(Scorer).NOTE: The instances returned by this method pre-allocate a full array of length
numHits, and fill the array with sentinel objects. -
setNextReader
Description copied from class:CollectorCalled before collecting from eachAtomicReaderContext. All doc ids inCollector.collect(int)will correspond toIndexReaderContext.reader(). AddAtomicReaderContext.docBaseto the currentIndexReaderContext.reader()'s internal document id to re-base ids inCollector.collect(int).- Specified by:
setNextReaderin classCollector- Parameters:
context- next atomic reader context
-
setScorer
Description copied from class:CollectorCalled before successive calls toCollector.collect(int). Implementations that need the score of the current document (passed-in toCollector.collect(int)), should save the passed-in Scorer and call scorer.score() when needed.- Specified by:
setScorerin classCollector- Throws:
IOException
-