Class FilterNode

All Implemented Interfaces:
NetworkStructureChangeSensitiveNode, Node, Receiver, Supplier, Tunnel
Direct Known Subclasses:
EqualityFilterNode, ExternalInputStatelessFilterNode, InequalityFilterNode, ValueBinderFilterNode

public abstract class FilterNode extends SingleInputNode
This node implements a simple filter. A stateless abstract check() predicate determines whether a matching is allowed to pass.
  • Constructor Details

  • Method Details

    • check

      public abstract boolean check(Tuple ps)
      Abstract filtering predicate. Expected to be stateless.
      Parameters:
      ps - the matching to be checked.
      Returns:
      true if and only if the parameter matching is allowed to pass through this node.
    • pullInto

      public void pullInto(Collection<Tuple> collector, boolean flush)
      Description copied from interface: Supplier
      Pulls the contents of this object in this particular moment into a target collection.
      Parameters:
      flush - if true, flushing of messages is allowed during the pull, otherwise flushing is not allowed
    • pullIntoWithTimeline

      public void pullIntoWithTimeline(Map<Tuple,Timeline<Timestamp>> collector, boolean flush)
    • update

      public void update(Direction direction, Tuple updateElement, Timestamp timestamp)
      Description copied from interface: Receiver
      Updates the receiver with a newly found or lost partial matching.