Class SingleInputNode

All Implemented Interfaces:
NetworkStructureChangeSensitiveNode, Node, Receiver, Supplier, Tunnel
Direct Known Subclasses:
AbstractColumnAggregatorNode, AbstractEvaluatorNode, DiscriminatorBucketNode, DiscriminatorDispatcherNode, FilterNode, RemoteReceiver, RemoteSupplier, RepresentativeElectionNode, TransformerNode, TransitiveClosureNode, TransparentNode

public abstract class SingleInputNode extends StandardNode implements Tunnel
  • Field Details

    • parent

      protected Supplier parent
    • mailbox

      protected Mailbox mailbox
      Since:
      1.6
  • Constructor Details

    • SingleInputNode

      public SingleInputNode(ReteContainer reteContainer)
  • Method Details

    • instantiateMailbox

      protected Mailbox instantiateMailbox()
      Instantiates the Mailbox of this receiver. Subclasses may override this method to provide their own mailbox implementation.
      Returns:
      the mailbox
      Since:
      2.0
    • getCommunicationTracker

      public CommunicationTracker getCommunicationTracker()
      Specified by:
      getCommunicationTracker in interface Node
    • getMailbox

      public Mailbox getMailbox()
      Description copied from interface: Receiver
      Returns the Mailbox of this receiver.
      Specified by:
      getMailbox in interface Receiver
      Returns:
      the mailbox
    • appendParent

      public void appendParent(Supplier supplier)
      Description copied from interface: Receiver
      appends a parent that will continuously send insert and revoke updates to this supplier
      Specified by:
      appendParent in interface Receiver
    • removeParent

      public void removeParent(Supplier supplier)
      Description copied from interface: Receiver
      removes a parent
      Specified by:
      removeParent in interface Receiver
    • propagatePullInto

      public void propagatePullInto(Collection<Tuple> collector, boolean flush)
      To be called by derived classes and ReteContainer.
    • propagatePullIntoWithTimestamp

      public void propagatePullIntoWithTimestamp(Map<Tuple,Timeline<Timestamp>> collector, boolean flush)
      To be called by derived classes and ReteContainer.
    • getParents

      public Collection<Supplier> getParents()
      Description copied from interface: Receiver
      access active parent
      Specified by:
      getParents in interface Receiver
    • assignTraceInfo

      public void assignTraceInfo(TraceInfo traceInfo)
      Description copied from interface: Node
      assigns new traceability info to this node
      Specified by:
      assignTraceInfo in interface Node
      Overrides:
      assignTraceInfo in class BaseNode