Interface Supplier
-
- All Superinterfaces:
Node
- All Known Subinterfaces:
ProductionNode,Tunnel
- All Known Implementing Classes:
AbstractColumnAggregatorNode,AbstractEvaluatorNode,AbstractUniquenessEnforcerNode,ColumnAggregatorNode,ConstantNode,CountNode,DefaultProductionNode,DiscriminatorBucketNode,DiscriminatorDispatcherNode,DualInputNode,EqualityFilterNode,ExistenceNode,ExternalInputEnumeratorNode,ExternalInputStatelessFilterNode,FilterNode,IndexerBasedAggregatorNode,InequalityFilterNode,JoinNode,MemorylessEvaluatorNode,OutputCachingEvaluatorNode,RelationEvaluatorNode,RemoteReceiver,RemoteSupplier,RetePatternMatcher,SingleInputNode,StandardNode,TimelyProductionNode,TimelyUniquenessEnforcerNode,TransformerNode,TransitiveClosureNode,TransparentNode,TrimmerNode,UniquenessEnforcerNode,ValueBinderFilterNode
public interface Supplier extends Node
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description voidappendChild(Receiver receiver)appends a receiver that will continously receive insert and revoke updates from this supplierProjectionIndexerconstructIndex(TupleMask mask, TraceInfo... traces)Instantiates (or reuses, depending on implementation) an index according to the given mask.default java.util.Set<Tuple>getPulledContents()java.util.Set<Tuple>getPulledContents(boolean flush)Returns the contents of this object in this particular moment.java.util.Collection<Receiver>getReceivers()lists receiversvoidpullInto(java.util.Collection<Tuple> collector, boolean flush)Pulls the contents of this object in this particular moment into a target collection.voidpullIntoWithTimeline(java.util.Map<Tuple,Timeline<Timestamp>> collector, boolean flush)voidremoveChild(Receiver receiver)removes a receiver-
Methods inherited from interface org.eclipse.viatra.query.runtime.rete.network.Node
acceptPropagatedTraceInfo, assignTraceInfo, getCommunicationTracker, getContainer, getNodeId, getTag, getTraceInfos, setTag
-
-
-
-
Method Detail
-
pullInto
void pullInto(java.util.Collection<Tuple> collector, boolean flush)
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- Since:
- 2.3
-
pullIntoWithTimeline
void pullIntoWithTimeline(java.util.Map<Tuple,Timeline<Timestamp>> collector, boolean flush)
- Since:
- 2.4
-
getPulledContents
java.util.Set<Tuple> getPulledContents(boolean flush)
Returns the contents of this object in this particular moment. For memoryless nodes, this may involve a costly recomputation of contents. The result is returned as a Set, even when it has multiplicities (at the output ofTrimmerNode).Intended mainly for debug purposes; therefore flushing is performed only if explicitly requested During runtime, flushing may be preferred; see
ReteContainer#pullContents(Supplier)- Since:
- 2.3
-
getPulledContents
default java.util.Set<Tuple> getPulledContents()
-
appendChild
void appendChild(Receiver receiver)
appends a receiver that will continously receive insert and revoke updates from this supplier
-
removeChild
void removeChild(Receiver receiver)
removes a receiver
-
constructIndex
ProjectionIndexer constructIndex(TupleMask mask, TraceInfo... traces)
Instantiates (or reuses, depending on implementation) an index according to the given mask. Intended for internal use; clients should invoke through Library instead to enable reusing.
-
getReceivers
java.util.Collection<Receiver> getReceivers()
lists receivers
-
-