public class AggSvcGroupAllMixedAccessImpl extends AggregationServiceBaseUngrouped
Constructor and Description |
---|
AggSvcGroupAllMixedAccessImpl(ExprEvaluator[] evaluators,
AggregationMethod[] aggregators,
AggregationAccessorSlotPair[] accessors,
AggregationState[] states,
AggregationMethodFactory[] aggregatorFactories,
AggregationStateFactory[] accessAggregations) |
Modifier and Type | Method and Description |
---|---|
void |
accept(AggregationServiceVisitor visitor) |
void |
acceptGroupDetail(AggregationServiceVisitorWGroupDetail visitor) |
void |
applyEnter(EventBean[] eventsPerStream,
java.lang.Object optionalGroupKeyPerRow,
ExprEvaluatorContext exprEvaluatorContext)
Apply events as entering a window (new events).
|
void |
applyLeave(EventBean[] eventsPerStream,
java.lang.Object optionalGroupKeyPerRow,
ExprEvaluatorContext exprEvaluatorContext)
Apply events as leaving a window (old events).
|
void |
clearResults(ExprEvaluatorContext exprEvaluatorContext)
Clear current aggregation state.
|
java.util.Collection<EventBean> |
getCollection(int column,
ExprEvaluatorContext context) |
EventBean |
getEventBean(int column,
ExprEvaluatorContext context) |
java.lang.Object |
getGroupKey(int agentInstanceId) |
java.util.Collection<java.lang.Object> |
getGroupKeys(ExprEvaluatorContext exprEvaluatorContext) |
java.lang.Object |
getValue(int column,
int agentInstanceId)
Returns current aggregation state, for use by expression node representing an aggregation function.
|
boolean |
isGrouped() |
void |
setCurrentAccess(java.lang.Object groupKey,
int agentInstanceId,
AggregationGroupByRollupLevel rollupLevel)
Set the current aggregation state row - for use when evaluation nodes are asked to evaluate.
|
void |
setRemovedCallback(AggregationRowRemovedCallback callback) |
public AggSvcGroupAllMixedAccessImpl(ExprEvaluator[] evaluators, AggregationMethod[] aggregators, AggregationAccessorSlotPair[] accessors, AggregationState[] states, AggregationMethodFactory[] aggregatorFactories, AggregationStateFactory[] accessAggregations)
public void applyEnter(EventBean[] eventsPerStream, java.lang.Object optionalGroupKeyPerRow, ExprEvaluatorContext exprEvaluatorContext)
AggregationService
eventsPerStream
- - events for each stream entering windowoptionalGroupKeyPerRow
- - 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 evaluatiompublic void applyLeave(EventBean[] eventsPerStream, java.lang.Object optionalGroupKeyPerRow, ExprEvaluatorContext exprEvaluatorContext)
AggregationService
eventsPerStream
- - events for each stream entering windowoptionalGroupKeyPerRow
- - 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 evaluatiompublic void setCurrentAccess(java.lang.Object groupKey, int agentInstanceId, AggregationGroupByRollupLevel rollupLevel)
AggregationService
groupKey
- - single key identifying the row of aggregation statesagentInstanceId
- context partition idpublic java.lang.Object getValue(int column, int agentInstanceId)
AggregationResultFuture
column
- is assigned to the aggregation expression node and passed as an column (index) into a rowagentInstanceId
- the context partition idpublic java.util.Collection<EventBean> getCollection(int column, ExprEvaluatorContext context)
public EventBean getEventBean(int column, ExprEvaluatorContext context)
public void clearResults(ExprEvaluatorContext exprEvaluatorContext)
AggregationService
public void setRemovedCallback(AggregationRowRemovedCallback callback)
public void accept(AggregationServiceVisitor visitor)
public void acceptGroupDetail(AggregationServiceVisitorWGroupDetail visitor)
public boolean isGrouped()
public java.lang.Object getGroupKey(int agentInstanceId)
public java.util.Collection<java.lang.Object> getGroupKeys(ExprEvaluatorContext exprEvaluatorContext)