public interface Aggregator
Modifier and Type | Method and Description |
---|---|
Object |
aggregate(Evaluator evaluator,
TupleList members,
Calc calc)
Applies this aggregator to an expression over a set of members and
returns the result.
|
Object |
aggregate(List<Object> rawData,
Dialect.Datatype datatype)
Applies this aggregator over a raw list of objects for a rollup
operation.
|
Aggregator |
getRollup()
Returns the aggregator used to combine sub-totals into a grand-total.
|
boolean |
supportsFastAggregates(Dialect.Datatype datatype)
Tells Mondrian if this aggregator can perform fast aggregation
using only the raw data of a given object type.
|
Aggregator getRollup()
Object aggregate(Evaluator evaluator, TupleList members, Calc calc)
evaluator
- Evaluation contextmembers
- List of members, not nullcalc
- Expression to evaluateboolean supportsFastAggregates(Dialect.Datatype datatype)
aggregate(mondrian.olap.Evaluator, mondrian.calc.TupleList, mondrian.calc.Calc)
.
This is only invoked for rollup operations.
datatype
- The datatype of the object we would like to rollup.Object aggregate(List<Object> rawData, Dialect.Datatype datatype)
SegmentBody
object.
Only gets called if
supportsFastAggregates(mondrian.spi.Dialect.Datatype)
is true.
This is only invoked for rollup operations.
rawData
- An array of values in its raw form, to be aggregated.Copyright © 2020 Hitachi Vantara. All rights reserved.