org.apache.lucene.search

## Interface Collector

All Known Implementing Classes:
  CachingCollector, FilterCollector, MultiCollector, MultiCollectorManager.Collectors, PositiveScoresOnlyCollector, SimpleCollector, TimeLimitingCollector, 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:

- `TopDocsCollector` is an abstract base class that assumes you will retrieve the top N docs, according to some criteria, after collection is done.
- `TopScoreDocCollector` is a concrete subclass `TopDocsCollector` and sorts according to score + docID. This is used internally by the `IndexSearcher` search methods that do not take an explicit `Sort`. It is likely the most frequently used collector.
- `TopFieldCollector` subclasses `TopDocsCollector` and sorts according to a specified `Sort` object (sort by field). This is used internally by the `IndexSearcher` search methods that take an explicit `Sort`.
- `TimeLimitingCollector`, which wraps any other Collector and aborts the search if it's taken too much time.
- `PositiveScoresOnlyCollector` wraps 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

All Methods Instance Methods Abstract Methods
`LeafCollector` `getLeafCollector(LeafReaderContext context)` Create a new `collector` to collect the given context.
`ScoreMode` `scoreMode()` Indicates what features are required from the scorer.

### Method Detail

#### getLeafCollector

    LeafCollector getLeafCollector(LeafReaderContext context)
                            throws IOException

Create a new `collector` to collect the given context.

Parameters:
  `context` - next atomic reader context
Throws:
  `IOException`

#### scoreMode

    ScoreMode scoreMode()

Indicates what features are required from the scorer.