Interface AggregationService

All Superinterfaces:
AggregationResultFuture, StopCallback
All Known Subinterfaces:
AIRegistryAggregation
All Known Implementing Classes:
AggregationServiceNull, AggSvcGroupAllWTableImpl, AggSvcGroupByWTableBase, AggSvcGroupByWTableImpl, AggSvcGroupByWTableRollupMultiKeyImpl, AggSvcGroupByWTableRollupSingleKeyImpl, AIRegistryAggregationMap, AIRegistryAggregationMultiPerm, AIRegistryAggregationSingle

public interface AggregationService extends AggregationResultFuture, StopCallback
Service for maintaining aggregation state. Processes events entering (a window, a join etc,) and events leaving. Answers questions about current aggregation state for a given row.
  • Field Details

  • Method Details

    • applyEnter

      void applyEnter(EventBean[] eventsPerStream, Object optionalGroupKeyPerRow, ExprEvaluatorContext exprEvaluatorContext)
      Apply events as entering a window (new events).
      Parameters:
      eventsPerStream - - events for each stream entering window
      optionalGroupKeyPerRow - - can be null if grouping without keys is desired, else the keys or array of keys to use for grouping, each distinct key value results in a new row of aggregation state.
      exprEvaluatorContext - context for expression evaluatiom
    • applyLeave

      void applyLeave(EventBean[] eventsPerStream, Object optionalGroupKeyPerRow, ExprEvaluatorContext exprEvaluatorContext)
      Apply events as leaving a window (old events).
      Parameters:
      eventsPerStream - - events for each stream entering window
      optionalGroupKeyPerRow - - can be null if grouping without keys is desired, else the keys or array of keys to use for grouping, each distinct key value results in a new row of aggregation state.
      exprEvaluatorContext - context for expression evaluatiom
    • clearResults

      void clearResults(ExprEvaluatorContext exprEvaluatorContext)
      Clear current aggregation state.
      Parameters:
      exprEvaluatorContext - context
    • setRemovedCallback

      void setRemovedCallback(AggregationRowRemovedCallback callback)
    • accept

      void accept(AggregationServiceVisitor visitor)
    • acceptGroupDetail

      void acceptGroupDetail(AggregationServiceVisitorWGroupDetail visitor)
    • isGrouped

      boolean isGrouped()