Class TopScoreDocCollector
- java.lang.Object
-
- org.apache.lucene.search.TopDocsCollector<ScoreDoc>
-
- org.apache.lucene.search.TopScoreDocCollector
-
- All Implemented Interfaces:
Collector
public abstract class TopScoreDocCollector extends TopDocsCollector<ScoreDoc>
ACollectorimplementation that collects the top-scoring hits, returning them as aTopDocs. This is used byIndexSearcherto implementTopDocs-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.NaNandFloat.NEGATIVE_INFINITYare not valid scores. This collector will not properly collect hits with such scores.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classTopScoreDocCollector.ScorerLeafCollectorScorable leaf collector
-
Field Summary
-
Fields inherited from class org.apache.lucene.search.TopDocsCollector
EMPTY_TOPDOCS, pq, totalHits, totalHitsRelation
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static TopScoreDocCollectorcreate(int numHits, int totalHitsThreshold)Deprecated.This method is deprecated in favor of the constructor ofTopScoreDocCollectorManagerdue to its support for concurrency in IndexSearcherstatic TopScoreDocCollectorcreate(int numHits, ScoreDoc after, int totalHitsThreshold)Deprecated.This method is deprecated in favor of the constructor ofTopScoreDocCollectorManagerdue to its support for concurrency in IndexSearcherstatic CollectorManager<TopScoreDocCollector,TopDocs>createSharedManager(int numHits, ScoreDoc after, int totalHitsThreshold)Deprecated.This method is deprecated in favor of the constructor ofTopScoreDocCollectorManagerdue to its support for concurrency in IndexSearcherprotected TopDocsnewTopDocs(ScoreDoc[] results, int start)Returns aTopDocsinstance containing the given results.ScoreModescoreMode()Indicates what features are required from the scorer.protected voidupdateGlobalMinCompetitiveScore(Scorable scorer)protected voidupdateMinCompetitiveScore(Scorable scorer)-
Methods inherited from class org.apache.lucene.search.TopDocsCollector
getTotalHits, populateResults, topDocs, topDocs, topDocs, topDocsSize
-
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.Collector
getLeafCollector, setWeight
-
-
-
-
Method Detail
-
create
@Deprecated public static TopScoreDocCollector create(int numHits, int totalHitsThreshold)
Deprecated.This method is deprecated in favor of the constructor ofTopScoreDocCollectorManagerdue to its support for concurrency in IndexSearcherCreates a newTopScoreDocCollectorgiven the number of hits to collect and the number of hits to count accurately.NOTE: If the total hit count of the top docs is less than or exactly
totalHitsThresholdthen this value is accurate. On the other hand, if theTopDocs.totalHitsvalue is greater thantotalHitsThresholdthen its value is a lower bound of the hit count. A value ofInteger.MAX_VALUEwill make the hit count accurate but will also likely make query processing slower.NOTE: The instances returned by this method pre-allocate a full array of length
numHits, and fill the array with sentinel objects.
-
create
@Deprecated public static TopScoreDocCollector create(int numHits, ScoreDoc after, int totalHitsThreshold)
Deprecated.This method is deprecated in favor of the constructor ofTopScoreDocCollectorManagerdue to its support for concurrency in IndexSearcherCreates a newTopScoreDocCollectorgiven the number of hits to collect, the bottom of the previous page, and the number of hits to count accurately.NOTE: If the total hit count of the top docs is less than or exactly
totalHitsThresholdthen this value is accurate. On the other hand, if theTopDocs.totalHitsvalue is greater thantotalHitsThresholdthen its value is a lower bound of the hit count. A value ofInteger.MAX_VALUEwill make the hit count accurate but will also likely make query processing slower.NOTE: The instances returned by this method pre-allocate a full array of length
numHits, and fill the array with sentinel objects.
-
createSharedManager
@Deprecated public static CollectorManager<TopScoreDocCollector,TopDocs> createSharedManager(int numHits, ScoreDoc after, int totalHitsThreshold)
Deprecated.This method is deprecated in favor of the constructor ofTopScoreDocCollectorManagerdue to its support for concurrency in IndexSearcherCreate a CollectorManager which uses a shared hit counter to maintain number of hits and a sharedMaxScoreAccumulatorto propagate the minimum score accross segments
-
newTopDocs
protected TopDocs newTopDocs(ScoreDoc[] results, int start)
Description copied from class:TopDocsCollectorReturns aTopDocsinstance containing the given results. Ifresultsis null it means there are no results to return, either because there were 0 calls to collect() or because the arguments to topDocs were invalid.- Overrides:
newTopDocsin classTopDocsCollector<ScoreDoc>
-
scoreMode
public ScoreMode scoreMode()
Description copied from interface:CollectorIndicates what features are required from the scorer.
-
updateGlobalMinCompetitiveScore
protected void updateGlobalMinCompetitiveScore(Scorable scorer) throws IOException
- Throws:
IOException
-
updateMinCompetitiveScore
protected void updateMinCompetitiveScore(Scorable scorer) throws IOException
- Throws:
IOException
-
-