Class CartesianProdAssemblyNode

java.lang.Object
com.espertech.esper.common.internal.epl.join.assemble.BaseAssemblyNode
com.espertech.esper.common.internal.epl.join.assemble.CartesianProdAssemblyNode
All Implemented Interfaces:
ResultAssembler

public class CartesianProdAssemblyNode extends BaseAssemblyNode
Assembly node for an event stream that is a branch with a two or more child nodes (required and optional) below it.
  • Constructor Details

    • CartesianProdAssemblyNode

      public CartesianProdAssemblyNode(int streamNum, int numStreams, boolean allSubStreamsOptional, int[] childStreamIndex)
      Ctor.
      Parameters:
      streamNum - - is the stream number
      numStreams - - is the number of streams
      allSubStreamsOptional - - true if all child nodes to this node are optional, or false if one or more child nodes are required for a result.
      childStreamIndex - indexes for child streams
  • Method Details

    • init

      public void init(List<Node>[] result)
      Description copied from class: BaseAssemblyNode
      Provides results to assembly nodes for initialization.
      Specified by:
      init in class BaseAssemblyNode
      Parameters:
      result - is a list of result nodes per stream
    • process

      public void process(List<Node>[] result, Collection<EventBean[]> resultFinalRows, EventBean resultRootEvent)
      Description copied from class: BaseAssemblyNode
      Process results.
      Specified by:
      process in class BaseAssemblyNode
      Parameters:
      result - is a list of result nodes per stream
      resultFinalRows - final row collection
      resultRootEvent - root event
    • result

      public void result(EventBean[] row, int fromStreamNum, EventBean myEvent, Node myNode, Collection<EventBean[]> resultFinalRows, EventBean resultRootEvent)
      Description copied from interface: ResultAssembler
      Publish a result row.
      Parameters:
      row - is the result to publish
      fromStreamNum - is the originitor that publishes the row
      myEvent - is optional and is the event that led to the row result
      myNode - is optional and is the result node of the event that led to the row result
      resultFinalRows - is the final result rows
      resultRootEvent - root event
    • print

      public void print(IndentWriter indentWriter)
      Description copied from class: BaseAssemblyNode
      Output this node using writer, not outputting child nodes.
      Specified by:
      print in class BaseAssemblyNode
      Parameters:
      indentWriter - to use for output