org.apache.lucene.search.grouping

## Class AllGroupHeadsCollector.GroupHead<T>

- java.lang.Object
- - org.apache.lucene.search.grouping.AllGroupHeadsCollector.GroupHead<T>

- Enclosing class:
    AllGroupHeadsCollector<T>

      public abstract static class AllGroupHeadsCollector.GroupHead<T>
      extends Object

  Represents a group head. A group head is the most relevant document for a particular group. The relevancy is based is usually based on the sort. The group head contains a group value with its associated most relevant document id.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `int` | `doc`
    `protected int` | `docBase`
    `T` | `groupValue`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `GroupHead(T groupValue, int doc, int docBase)` Create a new GroupHead for the given value

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected abstract int` | `compare(int compIDX, int doc)` Compares the specified document for a specified comparator against the current most relevant document.
    `protected void` | `setNextReader(LeafReaderContext ctx)` Called for each segment
    `protected abstract void` | `setScorer(Scorable scorer)` Called for each segment
    `protected abstract void` | `updateDocHead(int doc)` Updates the current most relevant document with the specified document.

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

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

- - ### Field Detail

    - #### groupValue

          public final T groupValue

    - #### doc

          public int doc

    - #### docBase

          protected int docBase

  - ### Constructor Detail

    - #### GroupHead

          protected GroupHead(T groupValue,
                              int doc,
                              int docBase)

      Create a new GroupHead for the given value

  - ### Method Detail

    - #### setNextReader

          protected void setNextReader(LeafReaderContext ctx)
                                throws IOException

      Called for each segment
      Throws:
        `IOException`

    - #### setScorer

          protected abstract void setScorer(Scorable scorer)
                                     throws IOException

      Called for each segment
      Throws:
        `IOException`

    - #### compare

          protected abstract int compare(int compIDX,
                                         int doc)
                                  throws IOException

      Compares the specified document for a specified comparator against the current most relevant document.
      Parameters:
        `compIDX` - The comparator index of the specified comparator.
        `doc` - The specified document.
      Returns:
        -1 if the specified document wasn't competitive against the current most relevant document, 1 if the specified document was competitive against the current most relevant document. Otherwise 0.
      Throws:
        `IOException` - If I/O related errors occur

    - #### updateDocHead

          protected abstract void updateDocHead(int doc)
                                         throws IOException

      Updates the current most relevant document with the specified document.
      Parameters:
        `doc` - The specified document
      Throws:
        `IOException` - If I/O related errors occur

Copyright © 2000-2020 Apache Software Foundation. All Rights Reserved.