org.apache.lucene.search.grouping

## Class AbstractAllGroupsCollector<GROUP_VALUE_TYPE>

- java.lang.Object
- - org.apache.lucene.search.Collector
  - - org.apache.lucene.search.grouping.AbstractAllGroupsCollector<GROUP_VALUE_TYPE>

Direct Known Subclasses:
  FunctionAllGroupsCollector, TermAllGroupsCollector

    public abstract class AbstractAllGroupsCollector<GROUP_VALUE_TYPE>
    extends Collector

A collector that collects all groups that match the query. Only the group value is collected, and the order is undefined. This collector does not determine the most relevant document of a group.

This is an abstract version. Concrete implementations define what a group actually is and how it is internally collected.

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

### Constructor Summary

Constructors
Constructor and Description
`AbstractAllGroupsCollector()`

### Method Summary

Methods
`boolean` `acceptsDocsOutOfOrder()`
`int` `getGroupCount()` Returns the total number of groups for the executed search.
`abstract Collection<GROUP_VALUE_TYPE>` `getGroups()` Returns the group values This is an unordered collections of group values.
`void` `setScorer(Scorer scorer)`

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

`collect, setNextReader`

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

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

### Constructor Detail

#### AbstractAllGroupsCollector

    public AbstractAllGroupsCollector()

### Method Detail

#### getGroupCount

    public int getGroupCount()

Returns the total number of groups for the executed search. This is a convenience method. The following code snippet has the same effect:

    getGroups().size()

Returns:
  The total number of groups for the executed search

#### getGroups

    public abstract Collection<GROUP_VALUE_TYPE> getGroups()

Returns the group values

This is an unordered collections of group values. For each group that matched the query there is a `BytesRef` representing a group value.

Returns:
  the group values

#### setScorer

    public void setScorer(Scorer scorer)
                   throws IOException

Specified by:
  `setScorer` in class `Collector`
Throws:
  `IOException`

#### acceptsDocsOutOfOrder

    public boolean acceptsDocsOutOfOrder()

Specified by:
  `acceptsDocsOutOfOrder` in class `Collector`