public class RootCartProdAssemblyNode extends BaseAssemblyNode
childNodes, numStreams, parentNode, streamNum
Constructor and Description |
---|
RootCartProdAssemblyNode(int streamNum,
int numStreams,
boolean allSubStreamsOptional,
int[] childStreamIndex)
Ctor.
|
Modifier and Type | Method and Description |
---|---|
protected static int[][] |
computeCombined(int[][] subStreamsPerChild)
Compute an array of supersets of sub stream numbers per stream, for at least 3 or more streams.
|
void |
init(List<Node>[] result)
Provides results to assembly nodes for initialization.
|
void |
print(IndentWriter indentWriter)
Output this node using writer, not outputting child nodes.
|
void |
process(List<Node>[] result,
Collection<EventBean[]> resultFinalRows,
EventBean resultRootEvent)
Process results.
|
void |
result(EventBean[] row,
int fromStreamNum,
EventBean myEvent,
Node myNode,
Collection<EventBean[]> resultFinalRows,
EventBean resultRootEvent)
Publish a result row.
|
addChild, getChildNodes, getStreamNum, getSubstreams, setParentAssembler
public RootCartProdAssemblyNode(int streamNum, int numStreams, boolean allSubStreamsOptional, int[] childStreamIndex)
streamNum
- - is the stream numbernumStreams
- - is the number of streamsallSubStreamsOptional
- - true if all substreams are optional and none are requiredchildStreamIndex
- indexes for child streamspublic void init(List<Node>[] result)
BaseAssemblyNode
init
in class BaseAssemblyNode
result
- is a list of result nodes per streampublic void process(List<Node>[] result, Collection<EventBean[]> resultFinalRows, EventBean resultRootEvent)
BaseAssemblyNode
process
in class BaseAssemblyNode
result
- is a list of result nodes per streamresultFinalRows
- final row collectionresultRootEvent
- root eventpublic void result(EventBean[] row, int fromStreamNum, EventBean myEvent, Node myNode, Collection<EventBean[]> resultFinalRows, EventBean resultRootEvent)
ResultAssembler
row
- is the result to publishfromStreamNum
- is the originitor that publishes the rowmyEvent
- is optional and is the event that led to the row resultmyNode
- is optional and is the result node of the event that led to the row resultresultFinalRows
- is the final result rowsresultRootEvent
- root eventpublic void print(IndentWriter indentWriter)
BaseAssemblyNode
print
in class BaseAssemblyNode
indentWriter
- to use for outputprotected static int[][] computeCombined(int[][] subStreamsPerChild)
subStreamsPerChild
- is for each stream number a list of direct child sub streams