com.espertech.esper.epl.core
Class ResultSetProcessorSimple

java.lang.Object
  extended by com.espertech.esper.epl.core.ResultSetProcessorBaseSimple
      extended by com.espertech.esper.epl.core.ResultSetProcessorSimple
All Implemented Interfaces:
ResultSetProcessor, StopCallback

public class ResultSetProcessorSimple
extends ResultSetProcessorBaseSimple

Result set processor for the simplest case: no aggregation functions used in the select clause, and no group-by.

The processor generates one row for each event entering (new event) and one row for each event leaving (old event).


Field Summary
protected  ExprEvaluatorContext exprEvaluatorContext
           
protected  ResultSetProcessorSimpleFactory prototype
           
 
Constructor Summary
ResultSetProcessorSimple(ResultSetProcessorSimpleFactory prototype, SelectExprProcessor selectExprProcessor, OrderByProcessor orderByProcessor, AgentInstanceContext agentInstanceContext)
           
 
Method Summary
 void applyJoinResult(java.util.Set<MultiKey<EventBean>> newEvents, java.util.Set<MultiKey<EventBean>> oldEvents)
           
 void applyViewResult(EventBean[] newData, EventBean[] oldData)
           
 void clear()
          Clear out current state.
 UniformPair<EventBean[]> continueOutputLimitedLastAllNonBufferedJoin(boolean isSynthesize, boolean isAll)
           
 UniformPair<EventBean[]> continueOutputLimitedLastAllNonBufferedView(boolean isSynthesize, boolean isAll)
           
 java.util.Iterator<EventBean> getIterator(java.util.Set<MultiKey<EventBean>> joinSet)
          Returns the iterator for iterating over a join-result.
 java.util.Iterator<EventBean> getIterator(Viewable parent)
          Returns the iterator implementing the group-by and aggregation and order-by logic specific to each case of use of these construct.
 EventType getResultEventType()
          Returns the event type of processed results.
 boolean hasAggregation()
           
 UniformPair<EventBean[]> processJoinResult(java.util.Set<MultiKey<EventBean>> newEvents, java.util.Set<MultiKey<EventBean>> oldEvents, boolean isSynthesize)
          For use by joins posting their result, process the event rows that are entered and removed (new and old events).
 void processOutputLimitedLastAllNonBufferedJoin(java.util.Set<MultiKey<EventBean>> newEvents, java.util.Set<MultiKey<EventBean>> oldEvents, boolean isGenerateSynthetic, boolean isAll)
           
 void processOutputLimitedLastAllNonBufferedView(EventBean[] newData, EventBean[] oldData, boolean isGenerateSynthetic, boolean isAll)
           
 UniformPair<EventBean[]> processViewResult(EventBean[] newData, EventBean[] oldData, boolean isSynthesize)
          For use by views posting their result, process the event rows that are entered and removed (new and old events).
 UniformPair<EventBean[]> processViewResultIterator(EventBean[] newData)
          Process view results for the iterator.
 void setAgentInstanceContext(AgentInstanceContext context)
           
 void stop()
          Stops the underlying resources.
 
Methods inherited from class com.espertech.esper.epl.core.ResultSetProcessorBaseSimple
processOutputLimitedJoin, processOutputLimitedView
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

prototype

protected final ResultSetProcessorSimpleFactory prototype

exprEvaluatorContext

protected ExprEvaluatorContext exprEvaluatorContext
Constructor Detail

ResultSetProcessorSimple

public ResultSetProcessorSimple(ResultSetProcessorSimpleFactory prototype,
                                SelectExprProcessor selectExprProcessor,
                                OrderByProcessor orderByProcessor,
                                AgentInstanceContext agentInstanceContext)
Method Detail

setAgentInstanceContext

public void setAgentInstanceContext(AgentInstanceContext context)

getResultEventType

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

Returns:
event type of the resulting events posted by the processor.

processJoinResult

public UniformPair<EventBean[]> processJoinResult(java.util.Set<MultiKey<EventBean>> newEvents,
                                                  java.util.Set<MultiKey<EventBean>> oldEvents,
                                                  boolean isSynthesize)
Description copied from interface: ResultSetProcessor
For use by joins posting their result, process the event rows that are entered and removed (new and old events). Processes according to select-clauses, group-by clauses and having-clauses and returns new events and old events as specified.

Parameters:
newEvents - - new events posted by join
oldEvents - - old events posted by join
isSynthesize - - set to true to indicate that synthetic events are required for an iterator result set
Returns:
pair of new events and old events

processViewResult

public UniformPair<EventBean[]> processViewResult(EventBean[] newData,
                                                  EventBean[] oldData,
                                                  boolean isSynthesize)
Description copied from interface: ResultSetProcessor
For use by views posting their result, process the event rows that are entered and removed (new and old events). Processes according to select-clauses, group-by clauses and having-clauses and returns new events and old events as specified.

Parameters:
newData - - new events posted by view
oldData - - old events posted by view
isSynthesize - - set to true to indicate that synthetic events are required for an iterator result set
Returns:
pair of new events and old events

processViewResultIterator

public UniformPair<EventBean[]> processViewResultIterator(EventBean[] newData)
Process view results for the iterator.

Parameters:
newData - new events
Returns:
pair of insert and remove stream

getIterator

public java.util.Iterator<EventBean> getIterator(Viewable parent)
Description copied from interface: ResultSetProcessor
Returns the iterator implementing the group-by and aggregation and order-by logic specific to each case of use of these construct.

Parameters:
parent - is the parent view iterator
Returns:
event iterator

getIterator

public java.util.Iterator<EventBean> getIterator(java.util.Set<MultiKey<EventBean>> joinSet)
Description copied from interface: ResultSetProcessor
Returns the iterator for iterating over a join-result.

Parameters:
joinSet - is the join result set
Returns:
iterator over join results

clear

public void clear()
Description copied from interface: ResultSetProcessor
Clear out current state.

Specified by:
clear in interface ResultSetProcessor
Overrides:
clear in class ResultSetProcessorBaseSimple

hasAggregation

public boolean hasAggregation()

applyViewResult

public void applyViewResult(EventBean[] newData,
                            EventBean[] oldData)

applyJoinResult

public void applyJoinResult(java.util.Set<MultiKey<EventBean>> newEvents,
                            java.util.Set<MultiKey<EventBean>> oldEvents)

processOutputLimitedLastAllNonBufferedView

public void processOutputLimitedLastAllNonBufferedView(EventBean[] newData,
                                                       EventBean[] oldData,
                                                       boolean isGenerateSynthetic,
                                                       boolean isAll)

processOutputLimitedLastAllNonBufferedJoin

public void processOutputLimitedLastAllNonBufferedJoin(java.util.Set<MultiKey<EventBean>> newEvents,
                                                       java.util.Set<MultiKey<EventBean>> oldEvents,
                                                       boolean isGenerateSynthetic,
                                                       boolean isAll)

continueOutputLimitedLastAllNonBufferedView

public UniformPair<EventBean[]> continueOutputLimitedLastAllNonBufferedView(boolean isSynthesize,
                                                                            boolean isAll)

continueOutputLimitedLastAllNonBufferedJoin

public UniformPair<EventBean[]> continueOutputLimitedLastAllNonBufferedJoin(boolean isSynthesize,
                                                                            boolean isAll)

stop

public void stop()
Description copied from interface: StopCallback
Stops the underlying resources.


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