public class ResultSetProcessorRowPerEventImpl extends java.lang.Object implements ResultSetProcessorRowPerEvent
This processor does not perform grouping, every event entering and leaving is in the same group. The processor generates one row for each event entering (new event) and one row for each event leaving (old event). Aggregation state is simply one row holding all the state.
public void setAgentInstanceContext(AgentInstanceContext context)
setAgentInstanceContext
in interface ResultSetProcessor
public EventType getResultEventType()
ResultSetProcessor
getResultEventType
in interface ResultSetProcessor
public void applyViewResult(EventBean[] newData, EventBean[] oldData)
applyViewResult
in interface ResultSetProcessor
public static void applyViewResultCodegen(CodegenMethodNode method)
public void applyJoinResult(java.util.Set<MultiKey<EventBean>> newEvents, java.util.Set<MultiKey<EventBean>> oldEvents)
applyJoinResult
in interface ResultSetProcessor
public static void applyJoinResultCodegen(CodegenMethodNode method)
public UniformPair<EventBean[]> processJoinResult(java.util.Set<MultiKey<EventBean>> newEvents, java.util.Set<MultiKey<EventBean>> oldEvents, boolean isSynthesize)
ResultSetProcessor
processJoinResult
in interface ResultSetProcessor
newEvents
- - new events posted by joinoldEvents
- - old events posted by joinisSynthesize
- - set to true to indicate that synthetic events are required for an iterator result setpublic static void processJoinResultCodegen(ResultSetProcessorRowPerEventForge forge, CodegenClassScope classScope, CodegenMethodNode method, CodegenInstanceAux instance)
public UniformPair<EventBean[]> processViewResult(EventBean[] newData, EventBean[] oldData, boolean isSynthesize)
ResultSetProcessor
processViewResult
in interface ResultSetProcessor
newData
- - new events posted by viewoldData
- - old events posted by viewisSynthesize
- - set to true to indicate that synthetic events are required for an iterator result setpublic static void processViewResultCodegen(ResultSetProcessorRowPerEventForge forge, CodegenClassScope classScope, CodegenMethodNode method, CodegenInstanceAux instance)
public java.util.Iterator<EventBean> getIterator(Viewable parent)
ResultSetProcessor
getIterator
in interface ResultSetProcessor
parent
- is the parent view iteratorpublic static void getIteratorViewCodegen(ResultSetProcessorRowPerEventForge forge, CodegenClassScope classScope, CodegenMethodNode method)
public SelectExprProcessor getSelectExprProcessor()
getSelectExprProcessor
in interface ResultSetProcessorRowPerEvent
public ExprEvaluator getOptionalHavingNode()
public java.util.Iterator<EventBean> getIterator(java.util.Set<MultiKey<EventBean>> joinSet)
ResultSetProcessor
getIterator
in interface ResultSetProcessor
joinSet
- is the join result setpublic static void getIteratorJoinCodegen(ResultSetProcessorRowPerEventForge forge, CodegenClassScope classScope, CodegenMethodNode method, CodegenInstanceAux instance)
public void clear()
ResultSetProcessor
clear
in interface ResultSetProcessor
public static void clearMethodCodegen(CodegenMethodNode method)
public UniformPair<EventBean[]> processOutputLimitedJoin(java.util.List<UniformPair<java.util.Set<MultiKey<EventBean>>>> joinEventsSet, boolean generateSynthetic)
ResultSetProcessor
processOutputLimitedJoin
in interface ResultSetProcessor
joinEventsSet
- the join resultsgenerateSynthetic
- flag to indicate whether synthetic events must be generatedpublic static void processOutputLimitedJoinCodegen(ResultSetProcessorRowPerEventForge forge, CodegenClassScope classScope, CodegenMethodNode method, CodegenInstanceAux instance)
public UniformPair<EventBean[]> processOutputLimitedView(java.util.List<UniformPair<EventBean[]>> viewEventsList, boolean generateSynthetic)
ResultSetProcessor
processOutputLimitedView
in interface ResultSetProcessor
viewEventsList
- the view resultsgenerateSynthetic
- flag to indicate whether synthetic events must be generatedpublic static void processOutputLimitedViewCodegen(ResultSetProcessorRowPerEventForge forge, CodegenClassScope classScope, CodegenMethodNode method, CodegenInstanceAux instance)
public void processOutputLimitedLastAllNonBufferedView(EventBean[] newData, EventBean[] oldData, boolean isGenerateSynthetic)
processOutputLimitedLastAllNonBufferedView
in interface ResultSetProcessor
public static void processOutputLimitedLastAllNonBufferedViewCodegen(ResultSetProcessorRowPerEventForge forge, CodegenClassScope classScope, CodegenMethodNode method, CodegenInstanceAux instance)
public void processOutputLimitedLastAllNonBufferedJoin(java.util.Set<MultiKey<EventBean>> newEvents, java.util.Set<MultiKey<EventBean>> oldEvents, boolean isGenerateSynthetic)
processOutputLimitedLastAllNonBufferedJoin
in interface ResultSetProcessor
public static void processOutputLimitedLastAllNonBufferedJoinCodegen(ResultSetProcessorRowPerEventForge forge, CodegenClassScope classScope, CodegenMethodNode method, CodegenInstanceAux instance)
public UniformPair<EventBean[]> continueOutputLimitedLastAllNonBufferedView(boolean isSynthesize)
continueOutputLimitedLastAllNonBufferedView
in interface ResultSetProcessor
public static void continueOutputLimitedLastAllNonBufferedViewCodegen(ResultSetProcessorRowPerEventForge forge, CodegenMethodNode method)
public UniformPair<EventBean[]> continueOutputLimitedLastAllNonBufferedJoin(boolean isSynthesize)
continueOutputLimitedLastAllNonBufferedJoin
in interface ResultSetProcessor
public static void continueOutputLimitedLastAllNonBufferedJoinCodegen(ResultSetProcessorRowPerEventForge forge, CodegenMethodNode method)
public void stop()
StopCallback
stop
in interface StopCallback
public void acceptHelperVisitor(ResultSetProcessorOutputHelperVisitor visitor)
acceptHelperVisitor
in interface ResultSetProcessor
public static void acceptHelperVisitorCodegen(CodegenMethodNode method, CodegenInstanceAux instance)
public boolean hasHavingClause()
hasHavingClause
in interface ResultSetProcessorRowPerEvent
public boolean evaluateHavingClause(EventBean[] eventsPerStream, boolean isNewData, ExprEvaluatorContext exprEvaluatorContext)
evaluateHavingClause
in interface ResultSetProcessorRowPerEvent