Package org.apache.lucene.sandbox.search
Class LargeNumHitsTopDocsCollector
java.lang.Object
org.apache.lucene.sandbox.search.LargeNumHitsTopDocsCollector
- All Implemented Interfaces:
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
-
Method Summary
Modifier and TypeMethodDescriptiongetLeafCollector
(LeafReaderContext context) protected TopDocs
newTopDocs
(ScoreDoc[] results) Returns aTopDocs
instance containing the given results.protected void
populateResults
(ScoreDoc[] results, int howMany) Populates the results array with the ScoreDoc instances.topDocs()
Returns the top docs that were collected by this collector.topDocs
(int howMany) Returns the top docs that were collected by this collector.
-
Constructor Details
-
LargeNumHitsTopDocsCollector
public LargeNumHitsTopDocsCollector(int requestedHitCount)
-
-
Method Details
-
scoreMode
-
getLeafCollector
- Specified by:
getLeafCollector
in interfaceCollector
-
topDocs
Returns the top docs that were collected by this collector. -
populateResults
Populates the results array with the ScoreDoc instances. This can be overridden in case a different ScoreDoc type should be returned. -
newTopDocs
Returns aTopDocs
instance containing the given results. Ifresults
is 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
Returns the top docs that were collected by this collector.
-