org.apache.lucene.search.grouping

## Class TermGroupFacetCollector

- java.lang.Object
- - org.apache.lucene.search.SimpleCollector
  - - org.apache.lucene.search.grouping.GroupFacetCollector
    - - org.apache.lucene.search.grouping.TermGroupFacetCollector

All Implemented Interfaces:
  Collector, LeafCollector

    public abstract class TermGroupFacetCollector
    extends GroupFacetCollector

An implementation of `GroupFacetCollector` that computes grouped facets based on the indexed terms from DocValues.

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

### Nested Class Summary

### Nested classes/interfaces inherited from class org.apache.lucene.search.grouping.GroupFacetCollector

`GroupFacetCollector.FacetEntry, GroupFacetCollector.GroupedFacetResult, GroupFacetCollector.SegmentResult`

### Field Summary

### Fields inherited from class org.apache.lucene.search.grouping.GroupFacetCollector

`endFacetOrd, facetField, facetPrefix, groupField, segmentFacetCounts, segmentResults, segmentTotalCount, startFacetOrd`

### Method Summary

All Methods Static Methods Concrete Methods
`static TermGroupFacetCollector` `createTermGroupFacetCollector(String groupField, String facetField, boolean facetFieldMultivalued, BytesRef facetPrefix, int initialSize)` Factory method for creating the right implementation based on the fact whether the facet field contains multiple tokens per documents.

### Methods inherited from class org.apache.lucene.search.grouping.GroupFacetCollector

`createSegmentResult, mergeSegmentResults, scoreMode, setScorer`

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

`collect, doSetNextReader, getLeafCollector`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Method Detail

#### createTermGroupFacetCollector

    public static TermGroupFacetCollector createTermGroupFacetCollector(String groupField,
                                                                        String facetField,
                                                                        boolean facetFieldMultivalued,
                                                                        BytesRef facetPrefix,
                                                                        int initialSize)

Factory method for creating the right implementation based on the fact whether the facet field contains multiple tokens per documents.

Parameters:
  `groupField` - The group field
  `facetField` - The facet field
  `facetFieldMultivalued` - Whether the facet field has multiple tokens per document
  `facetPrefix` - The facet prefix a facet entry should start with to be included.
  `initialSize` - The initial allocation size of the internal int set and group facet list which should roughly match the total number of expected unique groups. Be aware that the heap usage is 4 bytes * initialSize.
Returns:
  `TermGroupFacetCollector` implementation