| Modifier and Type | Field and Description |
|---|---|
| private final GenericAggregator[] | |
| private final GenericAggregator[] | |
| private int |
| Access | Constructor and Description |
|---|---|
| public | AggregateSortObserver(boolean
If true, then rows that are retained
by the sorter will be cloned. This is needed
if language is reusing row wrappers. doClone, GenericAggregator[] the array of aggregates that
need to be accumulated/merged in the sorter. aggsToProcess, GenericAggregator[] the array of aggregates that
need to be iniitialized as they are inserted
into the sorter. This may be different than
aggsToProcess in the case where some distinct
aggregates are dropped in the initial pass of
a two phase aggregation for scalar or vector
distinct aggregation. The initialization process
consists of replacing an empty UserValue with a new,
initialized aggregate of the appropriate type.
Note that for each row, only the first aggregate
in this list is checked to see whether initialization
is needed. If so, ALL aggregates are initialized;
otherwise, NO aggregates are initialized. aggsToInitialize, ExecRow ExecRow to use as source of clone for store. execRow)Simple constructor |
| Modifier and Type | Method and Description |
|---|---|
| public DataValueDescriptor[] | insertDuplicateKey(DataValueDescriptor[]
the current row that the sorter
is on the verge of retaining. It is a duplicate
of existingRow. insertRow, DataValueDescriptor[] the row that is already in the
the sorter which is a duplicate of insertRow existingRow)Overrides org. Implements org. Called prior to inserting a duplicate sort key. |
| public DataValueDescriptor[] | Returns: the row to be inserted by the sorter. If null, then nothing is inserted by the sorter. Distinct sorts will want to return null.the current row that the sorter
is on the verge of retaining insertRow)Overrides org. Implements org. Called prior to inserting a distinct sort key. |
| aggsToInitialize | back to summary |
|---|---|
| private final GenericAggregator[] aggsToInitialize | |
| aggsToProcess | back to summary |
|---|---|
| private final GenericAggregator[] aggsToProcess | |
| firstAggregatorColumn | back to summary |
|---|---|
| private int firstAggregatorColumn | |
| AggregateSortObserver | back to summary |
|---|---|
| public AggregateSortObserver(boolean doClone, GenericAggregator[] aggsToProcess, GenericAggregator[] aggsToInitialize, ExecRow execRow) Simple constructor
| |
| insertDuplicateKey | back to summary |
|---|---|
| public DataValueDescriptor[] insertDuplicateKey(DataValueDescriptor[] insertRow, DataValueDescriptor[] existingRow) throws StandardException Overrides org. Implements org. Called prior to inserting a duplicate sort key. We do aggregation here.
| |
| insertNonDuplicateKey | back to summary |
|---|---|
| public DataValueDescriptor[] insertNonDuplicateKey(DataValueDescriptor[] insertRow) throws StandardException Overrides org. Implements org. Called prior to inserting a distinct sort key.
| |