|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.espertech.esper.epl.join.exec.base.ExecNode
com.espertech.esper.epl.join.exec.base.NestedIterationExecNode
public class NestedIterationExecNode
Execution node that performs a nested iteration over all child nodes.
Each child node under this node typically represents a table lookup. The implementation 'hops' from the first child to the next recursively for each row returned by a child.
It passes a 'prototype' row (prefillPath) to each new child which contains the current partial event set.
Constructor Summary | |
---|---|
NestedIterationExecNode(int[] nestedStreams)
Ctor. |
Method Summary | |
---|---|
void |
addChildNode(ExecNode childNode)
Add a child node. |
void |
print(IndentWriter writer)
Output the execution strategy. |
void |
process(EventBean lookupEvent,
EventBean[] prefillPath,
java.util.Collection<EventBean[]> result,
ExprEvaluatorContext exprEvaluatorContext)
Process single event using the prefill events to compile lookup results. |
protected void |
recursiveNestedJoin(EventBean lookupEvent,
int nestingOrderIndex,
EventBean[] currentPath,
java.util.Collection<EventBean[]> result,
ExprEvaluatorContext exprEvaluatorContext)
Recursive method to run through all child nodes and, for each result set tuple returned by a child node, execute the inner child of the child node until there are no inner child nodes. |
Methods inherited from class com.espertech.esper.epl.join.exec.base.ExecNode |
---|
print |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public NestedIterationExecNode(int[] nestedStreams)
nestedStreams
- - array of integers defining order of streams in nested join.Method Detail |
---|
public void addChildNode(ExecNode childNode)
childNode
- to addpublic void process(EventBean lookupEvent, EventBean[] prefillPath, java.util.Collection<EventBean[]> result, ExprEvaluatorContext exprEvaluatorContext)
ExecNode
process
in class ExecNode
lookupEvent
- - event to look up for or query forprefillPath
- - set of events currently in the example tuple to serve
as a prototype for result rows.result
- is the list of tuples to add a result row toexprEvaluatorContext
- context for expression evaluationprotected void recursiveNestedJoin(EventBean lookupEvent, int nestingOrderIndex, EventBean[] currentPath, java.util.Collection<EventBean[]> result, ExprEvaluatorContext exprEvaluatorContext)
lookupEvent
- - current event to use for lookup by child nodenestingOrderIndex
- - index within the child nodes indicating what nesting level we are atcurrentPath
- - prototype result row to use by child nodes for generating result rowsresult
- - result tuple rows to be populatedexprEvaluatorContext
- context for expression evalauationpublic void print(IndentWriter writer)
ExecNode
print
in class ExecNode
writer
- to output to
|
© 2006-2015 EsperTech Inc. All rights reserved. Visit us at espertech.com |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |