Package org.apache.lucene.search
Interface Collector
- All Known Implementing Classes:
CachingCollector,FilterCollector,MultiCollector,PositiveScoresOnlyCollector,SimpleCollector,TopDocsCollector,TopFieldCollector,TopScoreDocCollector,TotalHitCountCollector
public interface Collector
Expert: Collectors are primarily meant to be used to gather raw results from a search, and
implement sorting or custom result filtering, collation, etc.
Lucene's core collectors are derived from Collector and SimpleCollector.
Likely your application can use one of these classes, or subclass TopDocsCollector,
instead of implementing Collector directly:
TopDocsCollectoris an abstract base class that assumes you will retrieve the top N docs, according to some criteria, after collection is done.TopScoreDocCollectoris a concrete subclassTopDocsCollectorand sorts according to score + docID. This is used internally by theIndexSearchersearch methods that do not take an explicitSort. It is likely the most frequently used collector.TopFieldCollectorsubclassesTopDocsCollectorand sorts according to a specifiedSortobject (sort by field). This is used internally by theIndexSearchersearch methods that take an explicitSort.PositiveScoresOnlyCollectorwraps any other Collector and prevents collection of hits whose score is <= 0.0
- WARNING: This API is experimental and might change in incompatible ways in the next release.
-
Method Summary
Modifier and TypeMethodDescriptiongetLeafCollector(LeafReaderContext context) Create a newcollectorto collect the given context.Indicates what features are required from the scorer.default voidSet theWeightthat will be used to produce scorers that will feedLeafCollectors.
-
Method Details
-
getLeafCollector
Create a newcollectorto collect the given context.- Parameters:
context- next atomic reader context- Throws:
IOException
-
scoreMode
ScoreMode scoreMode()Indicates what features are required from the scorer. -
setWeight
Set theWeightthat will be used to produce scorers that will feedLeafCollectors. This is typically useful to have access toWeight.count(org.apache.lucene.index.LeafReaderContext)fromgetLeafCollector(org.apache.lucene.index.LeafReaderContext).
-