public class AggSvcGroupAllAccessOnlyImpl extends java.lang.Object implements AggregationService, AggregationResultFuture
Constructor and Description |
---|
AggSvcGroupAllAccessOnlyImpl(AggregationAccessorSlotPair[] accessors,
AggregationState[] states,
AggregationStateFactory[] accessAggSpecs) |
Modifier and Type | Method and Description |
---|---|
void |
accept(AggregationServiceVisitor visitor) |
void |
acceptGroupDetail(AggregationServiceVisitorWGroupDetail visitor) |
void |
applyEnter(EventBean[] eventsPerStream,
java.lang.Object groupKey,
ExprEvaluatorContext exprEvaluatorContext)
Apply events as entering a window (new events).
|
void |
applyLeave(EventBean[] eventsPerStream,
java.lang.Object groupKey,
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 AggSvcGroupAllAccessOnlyImpl(AggregationAccessorSlotPair[] accessors, AggregationState[] states, AggregationStateFactory[] accessAggSpecs)
public void applyEnter(EventBean[] eventsPerStream, java.lang.Object groupKey, ExprEvaluatorContext exprEvaluatorContext)
AggregationService
applyEnter
in interface AggregationService
eventsPerStream
- - events for each stream entering windowgroupKey
- - 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 groupKey, ExprEvaluatorContext exprEvaluatorContext)
AggregationService
applyLeave
in interface AggregationService
eventsPerStream
- - events for each stream entering windowgroupKey
- - 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
setCurrentAccess
in interface AggregationService
groupKey
- - single key identifying the row of aggregation statesagentInstanceId
- context partition idpublic java.lang.Object getValue(int column, int agentInstanceId)
AggregationResultFuture
getValue
in interface AggregationResultFuture
column
- is assigned to the aggregation expression node and passed as an column (index) into a rowagentInstanceId
- the context partition idpublic EventBean getEventBean(int column, ExprEvaluatorContext context)
getEventBean
in interface AggregationResultFuture
public java.util.Collection<EventBean> getCollection(int column, ExprEvaluatorContext context)
getCollection
in interface AggregationResultFuture
public void clearResults(ExprEvaluatorContext exprEvaluatorContext)
AggregationService
clearResults
in interface AggregationService
public void setRemovedCallback(AggregationRowRemovedCallback callback)
setRemovedCallback
in interface AggregationService
public void accept(AggregationServiceVisitor visitor)
accept
in interface AggregationService
public void acceptGroupDetail(AggregationServiceVisitorWGroupDetail visitor)
acceptGroupDetail
in interface AggregationService
public boolean isGrouped()
isGrouped
in interface AggregationService
public java.lang.Object getGroupKey(int agentInstanceId)
getGroupKey
in interface AggregationResultFuture
public java.util.Collection<java.lang.Object> getGroupKeys(ExprEvaluatorContext exprEvaluatorContext)
getGroupKeys
in interface AggregationResultFuture