Package org.apache.lucene.facet

# Class FacetsCollector

java.lang.Object
org.apache.lucene.search.SimpleCollector
org.apache.lucene.facet.FacetsCollector

All Implemented Interfaces:
  `Collector`, `LeafCollector`

Direct Known Subclasses:
  `RandomSamplingFacetsCollector`

public class FacetsCollector extends SimpleCollector
Collects hits for subsequent faceting. Once you've run a search and collect hits into this, instantiate one of the `Facets` subclasses to do the facet counting. Use the `search` utility methods to perform an "ordinary" search but also collect into a `Collector`.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static final record`
  `FacetsCollector.MatchingDocs`
  Holds the documents that were matched in the `LeafReaderContext`.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `FacetsCollector()`
  Default constructor
  `FacetsCollector(boolean keepScores)`
  Create this; if `keepScores` is true then a float[] is allocated to hold score of all hits.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `collect(int doc)`
  `protected void`
  `doSetNextReader(LeafReaderContext context)`
  `void`
  `finish()`
  `final boolean`
  `getKeepScores()`
  True if scores were saved.
  `List<FacetsCollector.MatchingDocs>`
  `getMatchingDocs()`
  Returns the documents matched by the query, one `FacetsCollector.MatchingDocs` per visited segment.
  `ScoreMode`
  `scoreMode()`
  `final void`
  `setScorer(Scorable scorer)`

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

  `getLeafCollector`

  ### 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

  `setWeight`

  ### Methods inherited from interface org.apache.lucene.search.LeafCollector

  `collect, collectRange, competitiveIterator`

- ## Constructor Details

  - ### FacetsCollector

    public FacetsCollector()
    Default constructor

  - ### FacetsCollector

    public FacetsCollector(boolean keepScores)
    Create this; if `keepScores` is true then a float[] is allocated to hold score of all hits.

- ## Method Details

  - ### getKeepScores

    public final boolean getKeepScores()
    True if scores were saved.

  - ### getMatchingDocs

    public List<FacetsCollector.MatchingDocs> getMatchingDocs()
    Returns the documents matched by the query, one `FacetsCollector.MatchingDocs` per visited segment.

  - ### collect

    public void collect(int doc) throws IOException
    Specified by:
      `collect` in interface `LeafCollector`
    Specified by:
      `collect` in class `SimpleCollector`
    Throws:
      `IOException`

  - ### scoreMode

    public ScoreMode scoreMode()

  - ### setScorer

    public final void setScorer(Scorable scorer) throws IOException
    Specified by:
      `setScorer` in interface `LeafCollector`
    Overrides:
      `setScorer` in class `SimpleCollector`
    Throws:
      `IOException`

  - ### doSetNextReader

    protected void doSetNextReader(LeafReaderContext context) throws IOException
    Overrides:
      `doSetNextReader` in class `SimpleCollector`
    Throws:
      `IOException`

  - ### finish

    public void finish() throws IOException
    Throws:
      `IOException`