com.espertech.esper.epl.core
Class ResultSetProcessorAggregateGroupedFactory

java.lang.Object
  extended by com.espertech.esper.epl.core.ResultSetProcessorAggregateGroupedFactory
All Implemented Interfaces:
ResultSetProcessorFactory

public class ResultSetProcessorAggregateGroupedFactory
extends java.lang.Object
implements ResultSetProcessorFactory

Result-set processor prototype for the aggregate-grouped case: there is a group-by and one or more non-aggregation event properties in the select clause are not listed in the group by, and there are aggregation functions.


Constructor Summary
ResultSetProcessorAggregateGroupedFactory(SelectExprProcessor selectExprProcessor, ExprNode[] groupKeyNodeExpressions, ExprEvaluator[] groupKeyNodes, ExprEvaluator optionalHavingNode, boolean isSelectRStream, boolean isUnidirectional, OutputLimitSpec outputLimitSpec, boolean isSorting, boolean isHistoricalOnly, ResultSetProcessorHelperFactory resultSetProcessorHelperFactory, OutputConditionPolledFactory optionalOutputFirstConditionFactory, boolean enableOutputLimitOpt, int numStreams)
          Ctor.
 
Method Summary
 ExprEvaluator getGroupKeyNode()
           
 ExprNode[] getGroupKeyNodeExpressions()
           
 ExprEvaluator[] getGroupKeyNodes()
           
 int getNumStreams()
           
 ExprEvaluator getOptionalHavingNode()
           
 OutputConditionPolledFactory getOptionalOutputFirstConditionFactory()
           
 OutputLimitSpec getOutputLimitSpec()
           
 EventType getResultEventType()
          Returns the event type of processed results.
 ResultSetProcessorHelperFactory getResultSetProcessorHelperFactory()
           
 ResultSetProcessorType getResultSetProcessorType()
          Returns the type of result set processor.
 boolean hasAggregation()
           
 ResultSetProcessor instantiate(OrderByProcessor orderByProcessor, AggregationService aggregationService, AgentInstanceContext agentInstanceContext)
           
 boolean isEnableOutputLimitOpt()
           
 boolean isHistoricalOnly()
           
 boolean isOutputAll()
           
 boolean isOutputFirst()
           
 boolean isOutputLast()
           
 boolean isSelectRStream()
           
 boolean isSorting()
           
 boolean isUnidirectional()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ResultSetProcessorAggregateGroupedFactory

public ResultSetProcessorAggregateGroupedFactory(SelectExprProcessor selectExprProcessor,
                                                 ExprNode[] groupKeyNodeExpressions,
                                                 ExprEvaluator[] groupKeyNodes,
                                                 ExprEvaluator optionalHavingNode,
                                                 boolean isSelectRStream,
                                                 boolean isUnidirectional,
                                                 OutputLimitSpec outputLimitSpec,
                                                 boolean isSorting,
                                                 boolean isHistoricalOnly,
                                                 ResultSetProcessorHelperFactory resultSetProcessorHelperFactory,
                                                 OutputConditionPolledFactory optionalOutputFirstConditionFactory,
                                                 boolean enableOutputLimitOpt,
                                                 int numStreams)
Ctor.

Parameters:
selectExprProcessor - - for processing the select expression and generting the final output rows
groupKeyNodes - - list of group-by expression nodes needed for building the group-by keys
optionalHavingNode - - expression node representing validated HAVING clause, or null if none given. Aggregation functions in the having node must have been pointed to the AggregationService for evaluation.
isSelectRStream - - true if remove stream events should be generated
isUnidirectional - - true if unidirectional join
Method Detail

instantiate

public ResultSetProcessor instantiate(OrderByProcessor orderByProcessor,
                                      AggregationService aggregationService,
                                      AgentInstanceContext agentInstanceContext)
Specified by:
instantiate in interface ResultSetProcessorFactory

getResultEventType

public EventType getResultEventType()
Description copied from interface: ResultSetProcessorFactory
Returns the event type of processed results.

Specified by:
getResultEventType in interface ResultSetProcessorFactory
Returns:
event type of the resulting events posted by the processor.

hasAggregation

public boolean hasAggregation()
Specified by:
hasAggregation in interface ResultSetProcessorFactory

getGroupKeyNodes

public ExprEvaluator[] getGroupKeyNodes()

getOptionalHavingNode

public ExprEvaluator getOptionalHavingNode()

isSorting

public boolean isSorting()

isSelectRStream

public boolean isSelectRStream()

isUnidirectional

public boolean isUnidirectional()

getOutputLimitSpec

public OutputLimitSpec getOutputLimitSpec()

getGroupKeyNode

public ExprEvaluator getGroupKeyNode()

getGroupKeyNodeExpressions

public ExprNode[] getGroupKeyNodeExpressions()

isHistoricalOnly

public boolean isHistoricalOnly()

isOutputLast

public boolean isOutputLast()

isOutputAll

public boolean isOutputAll()

getResultSetProcessorType

public ResultSetProcessorType getResultSetProcessorType()
Description copied from interface: ResultSetProcessorFactory
Returns the type of result set processor.

Specified by:
getResultSetProcessorType in interface ResultSetProcessorFactory
Returns:
result set processor type

getOptionalOutputFirstConditionFactory

public OutputConditionPolledFactory getOptionalOutputFirstConditionFactory()

isEnableOutputLimitOpt

public boolean isEnableOutputLimitOpt()

getNumStreams

public int getNumStreams()

isOutputFirst

public boolean isOutputFirst()

getResultSetProcessorHelperFactory

public ResultSetProcessorHelperFactory getResultSetProcessorHelperFactory()

© 2006-2016 EsperTech Inc.
All rights reserved.
Visit us at espertech.com