Class SuppressedAggregatorFactory.SuppressedVectorAggregator
- java.lang.Object
-
- org.apache.druid.query.aggregation.SuppressedAggregatorFactory.SuppressedVectorAggregator
-
- All Implemented Interfaces:
VectorAggregator
- Enclosing class:
- SuppressedAggregatorFactory
public static class SuppressedAggregatorFactory.SuppressedVectorAggregator extends Object implements VectorAggregator
-
-
Constructor Summary
Constructors Constructor Description SuppressedVectorAggregator(VectorAggregator delegate)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
aggregate(ByteBuffer buf, int numRows, int[] positions, int[] rows, int positionOffset)
Aggregate a list of rows ("rows") into a list of aggregation slots ("positions").void
aggregate(ByteBuffer buf, int position, int startRow, int endRow)
Aggregate a range of rows into a single aggregation slot.void
close()
Release any resources used by the aggregator.boolean
equals(Object o)
Object
get(ByteBuffer buf, int position)
int
hashCode()
void
init(ByteBuffer buf, int position)
void
relocate(int oldPosition, int newPosition, ByteBuffer oldBuffer, ByteBuffer newBuffer)
String
toString()
-
-
-
Constructor Detail
-
SuppressedVectorAggregator
public SuppressedVectorAggregator(VectorAggregator delegate)
-
-
Method Detail
-
init
public void init(ByteBuffer buf, int position)
Description copied from interface:VectorAggregator
- Specified by:
init
in interfaceVectorAggregator
-
aggregate
public void aggregate(ByteBuffer buf, int position, int startRow, int endRow)
Description copied from interface:VectorAggregator
Aggregate a range of rows into a single aggregation slot. Implementations must not change the position, limit or mark of the given buffer- Specified by:
aggregate
in interfaceVectorAggregator
- Parameters:
buf
- byte buffer storing the byte array representation of the aggregateposition
- offset within the byte buffer at which the current aggregate value is storedstartRow
- first row of the range within the current batch to aggregate (inclusive)endRow
- end row of the range (exclusive)
-
aggregate
public void aggregate(ByteBuffer buf, int numRows, int[] positions, @Nullable int[] rows, int positionOffset)
Description copied from interface:VectorAggregator
Aggregate a list of rows ("rows") into a list of aggregation slots ("positions"). Implementations must not change the position, limit or mark of the given buffer- Specified by:
aggregate
in interfaceVectorAggregator
- Parameters:
buf
- byte buffer storing the byte array representation of the aggregatenumRows
- number of rows to aggregatepositions
- array of aggregate value positions within the buffer; must be at least as long as "numRows"rows
- array of row numbers within the current row batch; must be at least as long as "numRows". If null, the aggregator will aggregate rows from 0 (inclusive) to numRows (exclusive).positionOffset
- an offset to apply to each value from "positions"
-
get
@Nullable public Object get(ByteBuffer buf, int position)
Description copied from interface:VectorAggregator
- Specified by:
get
in interfaceVectorAggregator
-
relocate
public void relocate(int oldPosition, int newPosition, ByteBuffer oldBuffer, ByteBuffer newBuffer)
Description copied from interface:VectorAggregator
- Specified by:
relocate
in interfaceVectorAggregator
-
close
public void close()
Description copied from interface:VectorAggregator
Release any resources used by the aggregator.- Specified by:
close
in interfaceVectorAggregator
-
-