Class AggregationRuntime

  • All Implemented Interfaces:
    MemoryCalculable

    public class AggregationRuntime
    extends Object
    implements MemoryCalculable
    Aggregation runtime managing aggregation operations for aggregation definition.
    • Constructor Detail

      • AggregationRuntime

        public AggregationRuntime​(io.siddhi.query.api.definition.AggregationDefinition aggregationDefinition,
                                  boolean isProcessingOnExternalTime,
                                  boolean isDistributed,
                                  List<io.siddhi.query.api.aggregation.TimePeriod.Duration> aggregationDurations,
                                  Map<io.siddhi.query.api.aggregation.TimePeriod.Duration,​Executor> incrementalExecutorMap,
                                  Map<io.siddhi.query.api.aggregation.TimePeriod.Duration,​Table> aggregationTables,
                                  List<ExpressionExecutor> outputExpressionExecutors,
                                  Map<io.siddhi.query.api.aggregation.TimePeriod.Duration,​List<ExpressionExecutor>> aggregateProcessingExecutorsMap,
                                  ExpressionExecutor shouldUpdateTimestamp,
                                  Map<io.siddhi.query.api.aggregation.TimePeriod.Duration,​GroupByKeyGenerator> groupByKeyGeneratorMap,
                                  boolean isOptimisedLookup,
                                  List<io.siddhi.query.api.execution.query.selection.OutputAttribute> defaultSelectorList,
                                  List<String> groupByVariablesList,
                                  boolean isLatestEventColAdded,
                                  int baseAggregatorBeginIndex,
                                  List<io.siddhi.query.api.expression.Expression> finalBaseExpressionList,
                                  IncrementalDataPurger incrementalDataPurger,
                                  IncrementalExecutorsInitialiser incrementalExecutorInitialiser,
                                  SingleStreamRuntime singleStreamRuntime,
                                  MetaStreamEvent tableMetaStreamEvent,
                                  LatencyTracker latencyTrackerFind,
                                  ThroughputTracker throughputTrackerFind,
                                  String timeZone)
    • Method Detail

      • getAggregationDefinition

        public io.siddhi.query.api.definition.AggregationDefinition getAggregationDefinition()
      • startPurging

        public void startPurging()
      • initialiseExecutors

        public void initialiseExecutors​(boolean isFirstEventArrived)
      • getAggregationDurationExecutorMap

        public Map<String,​Map<io.siddhi.query.api.aggregation.TimePeriod.Duration,​Executor>> getAggregationDurationExecutorMap()
      • setAggregationDurationExecutorMap

        public void setAggregationDurationExecutorMap​(Map<String,​Map<io.siddhi.query.api.aggregation.TimePeriod.Duration,​Executor>> aggregationDurationExecutorMap)