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 |
children
communicationTracker, 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 continously 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 Mailbox |
instantiateMailbox()
Instantiates the
Mailbox of this receiver. |
void |
pullInto(java.util.Collection<Tuple> collector)
pulls the contents of this object in this particular moment into a target collection
|
void |
removeParent(Supplier supplier)
removes a parent
|
void |
update(Direction direction,
Tuple updateElement)
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, getPulledContents, getReceivers, issueError, propagateUpdate, removeChild
acceptPropagatedTraceInfo, assignTraceInfo, getContainer, getNodeId, getTag, getTraceInfoPatternsEnumerated, getTraceInfos, setTag, toString, toStringCore
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
acceptPropagatedTraceInfo, assignTraceInfo, getContainer, getNodeId, getTag, getTraceInfos, setTag
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
public void pullInto(java.util.Collection<Tuple> collector)
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)
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()