Class AbstractAllGroupsCollector<TGroupValue>
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.
@lucene.experimentalInheritance
Assembly: Lucene.Net.Grouping.dll
Syntax
public abstract class AbstractAllGroupsCollector<TGroupValue> : object, IAbstractAllGroupsCollector<TGroupValue>, ICollector
Type Parameters
Name | Description |
---|---|
TGroupValue |
Properties
Name | Description |
---|---|
AcceptsDocsOutOfOrder | |
GroupCount | Returns the total number of groups for the executed search. This is a convenience method. The following code snippet has the same effect:
|
Groups | 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. |
Methods
Name | Description |
---|---|
Collect(Int32) | Called once for every document matching a query, with the unbased document number. Note: The collection of the current segment can be terminated by throwing a CollectionTerminatedException. In this case, the last docs of the current AtomicReaderContext will be skipped and IndexSearcher will swallow the exception and continue collection with the next leaf. Note: this is called in an inner search loop. For good search performance, implementations of this method should not call Lucene.Net.Search.IndexSearcher.Doc(System.Int32) or Lucene.Net.Index.IndexReader.Document(System.Int32) on every hit. Doing so can slow searches by an order of magnitude or more. |
SetNextReader(AtomicReaderContext) | Called before collecting from each AtomicReaderContext. All doc ids in Collect(Int32) will correspond to Reader. Add DocBase to the current Reader's internal document id to re-base ids in Collect(Int32). |
SetScorer(Scorer) |