Package org.apache.lucene.search

# Class TopFieldCollector

java.lang.Object
org.apache.lucene.search.TopDocsCollector<FieldValueHitQueue.Entry>
org.apache.lucene.search.TopFieldCollector

All Implemented Interfaces:
  `Collector`

public abstract class TopFieldCollector extends TopDocsCollector<FieldValueHitQueue.Entry>
A `Collector` that sorts by `SortField` using `FieldComparator`s.

See the constructor of `TopFieldCollectorManager` for instantiating a TopFieldCollectorManager with support for concurrency in IndexSearcher.

WARNING: This API is experimental and might change in incompatible ways in the next release.

- ## Field Summary

  ### Fields inherited from class org.apache.lucene.search.TopDocsCollector

  `EMPTY_TOPDOCS, pq, totalHits, totalHitsRelation`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `isEarlyTerminated()`
  Return whether collection terminated early.
  `protected TopDocs`
  `newTopDocs(ScoreDoc[] results, int start)`
  Returns a `TopDocs` instance containing the given results.
  `protected void`
  `populateResults(ScoreDoc[] results, int howMany)`
  Populates the results array with the ScoreDoc instances.
  `static void`
  `populateScores(ScoreDoc[] topDocs, IndexSearcher searcher, Query query)`
  Populate `scores` of the given `topDocs`.
  `ScoreMode`
  `scoreMode()`
  Indicates what features are required from the scorer.
  `TopFieldDocs`
  `topDocs()`
  Returns the top docs that were collected by this collector.
  `protected void`
  `updateGlobalMinCompetitiveScore(Scorable scorer)`
  `protected void`
  `updateMinCompetitiveScore(Scorable scorer)`

  ### Methods inherited from class org.apache.lucene.search.TopDocsCollector

  `getTotalHits, pruneLeastCompetitiveHitsTo, 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 Details

  - ### scoreMode

    public ScoreMode scoreMode()
    Description copied from interface: `Collector`
    Indicates 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`

  - ### populateScores

    public static void populateScores(ScoreDoc[] topDocs, IndexSearcher searcher, Query query) throws IOException
    Populate `scores` of the given `topDocs`.
    Parameters:
      `topDocs` - the top docs to populate
      `searcher` - the index searcher that has been used to compute `topDocs`
      `query` - the query that has been used to compute `topDocs`
    Throws:
      `IllegalArgumentException` - if there is evidence that `topDocs` have been computed against a different searcher or a different query.
      `IOException`
    WARNING: This API is experimental and might change in incompatible ways in the next release.

  - ### populateResults

    protected void populateResults(ScoreDoc[] results, int howMany)
    Description copied from class: `TopDocsCollector`
    Populates the results array with the ScoreDoc instances. This can be overridden in case a different ScoreDoc type should be returned.
    Overrides:
      `populateResults` in class `TopDocsCollector<FieldValueHitQueue.Entry>`

  - ### newTopDocs

    protected TopDocs newTopDocs(ScoreDoc[] results, int start)
    Description copied from class: `TopDocsCollector`
    Returns a `TopDocs` instance containing the given results. If `results` 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.
    Overrides:
      `newTopDocs` in class `TopDocsCollector<FieldValueHitQueue.Entry>`

  - ### topDocs

    public TopFieldDocs topDocs()
    Description copied from class: `TopDocsCollector`
    Returns the top docs that were collected by this collector.
    Overrides:
      `topDocs` in class `TopDocsCollector<FieldValueHitQueue.Entry>`

  - ### isEarlyTerminated

    public boolean isEarlyTerminated()
    Return whether collection terminated early.