net.esper.eql.core
Class AggregationServiceNull

java.lang.Object
  extended by net.esper.eql.core.AggregationServiceNull
All Implemented Interfaces:
AggregationResultFuture, AggregationService

public class AggregationServiceNull
extends java.lang.Object
implements AggregationService

A null object implementation of the AggregationService interface.


Constructor Summary
AggregationServiceNull()
           
 
Method Summary
 void applyEnter(EventBean[] eventsPerStream, MultiKey optionalGroupKeyPerRow)
          Apply events as entering a window (new events).
 void applyLeave(EventBean[] eventsPerStream, MultiKey optionalGroupKeyPerRow)
          Apply events as leaving a window (old events).
 java.lang.Object getValue(int column)
          Returns current aggregation state, for use by expression node representing an aggregation function.
 void setCurrentRow(MultiKey groupKey)
          Set the current aggregation state row - for use when evaluation nodes are asked to evaluate.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AggregationServiceNull

public AggregationServiceNull()
Method Detail

applyEnter

public void applyEnter(EventBean[] eventsPerStream,
                       MultiKey optionalGroupKeyPerRow)
Description copied from interface: AggregationService
Apply events as entering a window (new events).

Specified by:
applyEnter in interface AggregationService
Parameters:
eventsPerStream - - events for each stream entering window
optionalGroupKeyPerRow - - can be null if grouping without keys is desired, else the keys to use for grouping, each distinct key value results in a new row of aggregation state.

applyLeave

public void applyLeave(EventBean[] eventsPerStream,
                       MultiKey optionalGroupKeyPerRow)
Description copied from interface: AggregationService
Apply events as leaving a window (old events).

Specified by:
applyLeave in interface AggregationService
Parameters:
eventsPerStream - - events for each stream entering window
optionalGroupKeyPerRow - - can be null if grouping without keys is desired, else the keys to use for grouping, each distinct key value results in a new row of aggregation state.

setCurrentRow

public void setCurrentRow(MultiKey groupKey)
Description copied from interface: AggregationService
Set the current aggregation state row - for use when evaluation nodes are asked to evaluate.

Specified by:
setCurrentRow in interface AggregationService
Parameters:
groupKey - - key identify the row of aggregation states

getValue

public java.lang.Object getValue(int column)
Description copied from interface: AggregationResultFuture
Returns current aggregation state, for use by expression node representing an aggregation function.

Specified by:
getValue in interface AggregationResultFuture
Parameters:
column - is assigned to the aggregation expression node and passed as an column (index) into a row
Returns:
current aggragation state