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, parent
children
nodeId, 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 continously send insert and revoke updates to this supplier
|
java.lang.Object |
getBucketKey() |
DiscriminatorDispatcherNode |
getDispatcher() |
void |
pullInto(java.util.Collection<Tuple> collector)
pulls the contents of this object in this particular moment into a target collection
|
protected java.lang.String |
toStringCore()
clients should override this to append before the tag / trace indicators
|
void |
update(Direction direction,
Tuple updateElement)
updates the receiver with a newly found or lost partial matching
|
assignTraceInfo, getMailbox, getParents, instantiateMailbox, propagatePullInto, removeParent
appendChild, constructIndex, getPulledContents, getReceivers, issueError, propagateUpdate, removeChild
acceptPropagatedTraceInfo, getContainer, getNodeId, getTag, getTraceInfoPatternsEnumerated, getTraceInfos, setTag, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
appendChild, constructIndex, getPulledContents, getReceivers, removeChild
acceptPropagatedTraceInfo, getContainer, getNodeId, getTag, getTraceInfos, setTag
public DiscriminatorBucketNode(ReteContainer reteContainer, java.lang.Object bucketKey)
bucketKey
- will be wrapped using IQueryRuntimeContext.wrapElement(Object)
public void pullInto(java.util.Collection<Tuple> collector)
Supplier
public void update(Direction direction, Tuple updateElement)
Receiver
public java.lang.Object getBucketKey()
public void appendParent(Supplier supplier)
Receiver
appendParent
in interface Receiver
appendParent
in class SingleInputNode
public DiscriminatorDispatcherNode getDispatcher()
protected java.lang.String toStringCore()
BaseNode
toStringCore
in class BaseNode