Package org.apache.lucene.sandbox.search
Class LargeNumHitsTopDocsCollector
- java.lang.Object
-
- org.apache.lucene.sandbox.search.LargeNumHitsTopDocsCollector
-
- All Implemented Interfaces:
Collector
public final class LargeNumHitsTopDocsCollector extends Object implements Collector
Optimized collector for large number of hits. The collector maintains an ArrayList of hits until it accumulates the requested number of hits. Post that, it builds a Priority Queue and starts filtering further hits based on the minimum competitive score.
-
-
Constructor Summary
Constructors Constructor Description LargeNumHitsTopDocsCollector(int requestedHitCount)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description LeafCollectorgetLeafCollector(LeafReaderContext context)protected TopDocsnewTopDocs(ScoreDoc[] results)Returns aTopDocsinstance containing the given results.protected voidpopulateResults(ScoreDoc[] results, int howMany)Populates the results array with the ScoreDoc instances.ScoreModescoreMode()TopDocstopDocs()Returns the top docs that were collected by this collector.TopDocstopDocs(int howMany)Returns the top docs that were collected by this collector.
-
-
-
Method Detail
-
getLeafCollector
public LeafCollector getLeafCollector(LeafReaderContext context)
- Specified by:
getLeafCollectorin interfaceCollector
-
topDocs
public TopDocs topDocs(int howMany)
Returns the top docs that were collected by this collector.
-
populateResults
protected void populateResults(ScoreDoc[] results, int howMany)
Populates the results array with the ScoreDoc instances. This can be overridden in case a different ScoreDoc type should be returned.
-
newTopDocs
protected TopDocs newTopDocs(ScoreDoc[] results)
Returns 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.
-
topDocs
public TopDocs topDocs()
Returns the top docs that were collected by this collector.
-
-