public class ExternalInputEnumeratorNode extends StandardNode implements Disconnectable, Receiver, IQueryRuntimeContextListener
Contains those tuples that are in the extensional relation identified by the input key, and also conform to the global seed (if any).
Modifier and Type | Field and Description |
---|---|
protected Mailbox |
mailbox |
childMailboxes, children
nodeId, reteContainer, tag, traceInfos
Constructor and Description |
---|
ExternalInputEnumeratorNode(ReteContainer reteContainer) |
Modifier and Type | Method and Description |
---|---|
void |
appendParent(Supplier supplier)
appends a parent that will continuously send insert and revoke updates to this supplier
|
void |
connectThroughContext(ReteEngine engine,
IInputKey inputKey,
Tuple globalSeed) |
void |
disconnect()
Disconnects this rete engine component from the underlying model.
|
Tuple |
getGlobalSeed() |
IInputKey |
getInputKey() |
Mailbox |
getMailbox()
Returns the
Mailbox of this receiver. |
java.util.Collection<Supplier> |
getParents()
access active parent
|
protected java.lang.Iterable<Tuple> |
getTuplesInternal() |
protected Mailbox |
instantiateMailbox()
Instantiates the
Mailbox of this receiver. |
void |
pullInto(java.util.Collection<Tuple> collector,
boolean flush)
Pulls the contents of this object in this particular moment into a target collection.
|
void |
pullIntoWithTimeline(java.util.Map<Tuple,Timeline<Timestamp>> collector,
boolean flush) |
void |
removeParent(Supplier supplier)
removes a parent
|
void |
update(Direction direction,
Tuple updateElement,
Timestamp timestamp)
Updates the receiver with a newly found or lost partial matching.
|
void |
update(IInputKey key,
Tuple update,
boolean isInsertion)
The given tuple was inserted into or removed from the input relation indicated by the given key.
|
appendChild, constructIndex, getChildMailboxes, getPulledContents, getReceivers, issueError, networkStructureChanged, propagateUpdate, removeChild
acceptPropagatedTraceInfo, assignTraceInfo, getContainer, getNodeId, getTag, getTraceInfoPatternsEnumerated, getTraceInfos, setTag, toString, toStringCore
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
batchUpdate
acceptPropagatedTraceInfo, assignTraceInfo, getCommunicationTracker, getContainer, getNodeId, getTag, getTraceInfos, setTag
getPulledContents
protected final Mailbox mailbox
public ExternalInputEnumeratorNode(ReteContainer reteContainer)
protected Mailbox instantiateMailbox()
Mailbox
of this receiver. Subclasses may override this method to provide their own
mailbox implementation.public Mailbox getMailbox()
Receiver
Mailbox
of this receiver.getMailbox
in interface Receiver
public void connectThroughContext(ReteEngine engine, IInputKey inputKey, Tuple globalSeed)
public void disconnect()
Disconnectable
disconnect
in interface Disconnectable
protected java.lang.Iterable<Tuple> getTuplesInternal()
public void pullInto(java.util.Collection<Tuple> collector, boolean flush)
Supplier
public void pullIntoWithTimeline(java.util.Map<Tuple,Timeline<Timestamp>> collector, boolean flush)
pullIntoWithTimeline
in interface Supplier
public void update(IInputKey key, Tuple update, boolean isInsertion)
IQueryRuntimeContextListener
update
in interface IQueryRuntimeContextListener
key
- the key identifying the input relation that was updatedupdate
- the tuple that was inserted or removedisInsertion
- true if it was an insertion, false otherwise.public void update(Direction direction, Tuple updateElement, Timestamp timestamp)
Receiver
public void appendParent(Supplier supplier)
Receiver
appendParent
in interface Receiver
public void removeParent(Supplier supplier)
Receiver
removeParent
in interface Receiver
public java.util.Collection<Supplier> getParents()
Receiver
getParents
in interface Receiver
public IInputKey getInputKey()
public Tuple getGlobalSeed()