public class DiscriminatorBucketNode extends SingleInputNode
DiscriminatorDispatcherNode.
Exactly those that have the given bucket key at their discrimination column.
During operation, tuple contents and bucket keys have already been wrapped using IQueryRuntimeContext.wrapElement(Object)
mailbox, parentchildMailboxes, childrennodeId, reteContainer, tag, traceInfos| Constructor and Description |
|---|
DiscriminatorBucketNode(ReteContainer reteContainer,
java.lang.Object bucketKey) |
| Modifier and Type | Method and Description |
|---|---|
void |
appendParent(Supplier supplier)
appends a parent that will continuously send insert and revoke updates to this supplier
|
java.lang.Object |
getBucketKey() |
DiscriminatorDispatcherNode |
getDispatcher() |
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) |
protected java.lang.String |
toStringCore()
clients should override this to append before the tag / trace indicators
|
void |
update(Direction direction,
Tuple updateElement,
Timestamp timestamp)
Updates the receiver with a newly found or lost partial matching.
|
assignTraceInfo, getCommunicationTracker, getMailbox, getParents, instantiateMailbox, propagatePullInto, propagatePullIntoWithTimestamp, removeParentappendChild, constructIndex, getChildMailboxes, getPulledContents, getReceivers, issueError, networkStructureChanged, propagateUpdate, removeChildacceptPropagatedTraceInfo, getContainer, getNodeId, getTag, getTraceInfoPatternsEnumerated, getTraceInfos, setTag, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitappendChild, constructIndex, getPulledContents, getPulledContents, getReceivers, removeChildbatchUpdateacceptPropagatedTraceInfo, getContainer, getNodeId, getTag, getTraceInfos, setTagpublic DiscriminatorBucketNode(ReteContainer reteContainer, java.lang.Object bucketKey)
bucketKey - will be wrapped using IQueryRuntimeContext.wrapElement(Object)public void pullInto(java.util.Collection<Tuple> collector, boolean flush)
Supplierflush - if true, flushing of messages is allowed during the pull, otherwise flushing is not allowedpublic void pullIntoWithTimeline(java.util.Map<Tuple,Timeline<Timestamp>> collector, boolean flush)
public void update(Direction direction, Tuple updateElement, Timestamp timestamp)
Receiverpublic java.lang.Object getBucketKey()
public void appendParent(Supplier supplier)
ReceiverappendParent in interface ReceiverappendParent in class SingleInputNodepublic DiscriminatorDispatcherNode getDispatcher()
protected java.lang.String toStringCore()
BaseNodetoStringCore in class BaseNode