Package org.drools.core.reteoo
Class LeftTupleSource
- java.lang.Object
-
- org.drools.core.common.BaseNode
-
- org.drools.core.reteoo.LeftTupleSource
-
- All Implemented Interfaces:
java.io.Serializable,org.drools.base.common.NetworkNode,LeftTupleNode
- Direct Known Subclasses:
AsyncReceiveNode,AsyncSendNode,BetaNode,ConditionalBranchNode,EvalConditionNode,FromNode,LeftInputAdapterNode,QueryElementNode,TimerNode
public abstract class LeftTupleSource extends BaseNode implements LeftTupleNode
A source ofReteTuples for aTupleSink.Nodes that propagate
Tuplesextend this class.- See Also:
LeftTupleSource,LeftTuple, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected org.drools.util.bitmask.BitMaskleftDeclaredMaskprotected org.drools.util.bitmask.BitMaskleftInferredMaskprotected LeftTupleSourceleftInputThe left inputTupleSource.protected org.drools.util.bitmask.BitMaskleftNegativeMaskprotected LeftTupleSinkPropagatorsinkThe destination forTuples.-
Fields inherited from class org.drools.core.common.BaseNode
associations, hashcode, id, memoryId, partitionId
-
-
Constructor Summary
Constructors Modifier Constructor Description LeftTupleSource()protectedLeftTupleSource(int id, BuildContext context)Single parameter constructor that specifies the unique id of the node.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidaddTupleSink(LeftTupleSink tupleSink)protected LeftTupleSinkPropagatoraddTupleSink(LeftTupleSinkPropagator sinkPropagator, LeftTupleSink tupleSink, BuildContext context)voidaddTupleSink(LeftTupleSink tupleSink, BuildContext context)Adds theTupleSinkso that it may receiveTuplespropagated from thisTupleSource.abstract LeftTuplecreatePeer(LeftTuple original)LeftTupleSinkNodegetFirstLeftTupleSinkIgnoreRemoving(TerminalNode removingTn)org.drools.util.bitmask.BitMaskgetLeftDeclaredMask()org.drools.util.bitmask.BitMaskgetLeftInferredMask()ObjectTypeNode.IdgetLeftInputOtnId()protected org.drools.base.rule.PatterngetLeftInputPattern(BuildContext context)org.drools.util.bitmask.BitMaskgetLeftNegativeMask()LeftTupleSourcegetLeftTupleSource()intgetObjectCount()org.drools.base.base.ObjectTypegetObjectType()protected org.drools.base.base.ObjectTypegetObjectTypeForPropertyReactivity(LeftInputAdapterNode leftInput, org.drools.base.rule.Pattern pattern)intgetPathIndex()LeftTupleSinkPropagatorgetSinkPropagator()abstract shortgetType()protected voidinitDeclaredMask(BuildContext context, LeftTupleSource leftInput)protected voidinitInferredMask(LeftTupleSource leftInput)protected voidinitMasks(BuildContext context, LeftTupleSource leftInput)booleanisInUse()Returns true in case the current node is in use (is referenced by any other node)abstract booleanisLeftTupleMemoryEnabled()voidremoveTupleSink(LeftTupleSink tupleSink)Removes theTupleSinkprotected voidsetLeftInferredMask(org.drools.util.bitmask.BitMask leftInferredMask)voidsetLeftInputOtnId(ObjectTypeNode.Id leftInputOtnId)protected voidsetLeftListenedProperties(java.util.Collection<java.lang.String> leftListenedProperties)voidsetLeftTupleSource(LeftTupleSource leftInput)protected org.drools.util.bitmask.BitMasksetNodeConstraintsPropertyReactiveMask(org.drools.util.bitmask.BitMask mask, org.drools.base.base.ObjectType objectType, java.util.List<java.lang.String> accessibleProperties)voidsetObjectCount(int count)voidsetPartitionIdWithSinks(org.drools.base.common.RuleBasePartitionId partitionId)protected voidsetSourcePartitionId(BaseNode source, BuildContext context, org.drools.base.common.RuleBasePartitionId partitionId)voidsetSourcePartitionId(BuildContext context, org.drools.base.common.RuleBasePartitionId partitionId)-
Methods inherited from class org.drools.core.common.BaseNode
addAssociatedTerminal, addAssociation, addAssociation, attach, doAttach, doRemove, getAssociatedRules, getAssociatedTerminalsSize, getAssociationsSize, getId, getMemoryId, getObjectTypeNode, getPartitionId, getSinks, hasAssociatedTerminal, hashCode, initMemoryId, isAssociatedWith, isStreamMode, networkUpdated, remove, removeAssociatedTerminal, removeAssociation, setId, setPartitionId, setStreamMode, toString
-
-
-
-
Field Detail
-
leftDeclaredMask
protected org.drools.util.bitmask.BitMask leftDeclaredMask
-
leftInferredMask
protected org.drools.util.bitmask.BitMask leftInferredMask
-
leftNegativeMask
protected org.drools.util.bitmask.BitMask leftNegativeMask
-
leftInput
protected LeftTupleSource leftInput
The left inputTupleSource.
-
sink
protected LeftTupleSinkPropagator sink
The destination forTuples.
-
-
Constructor Detail
-
LeftTupleSource
public LeftTupleSource()
-
LeftTupleSource
protected LeftTupleSource(int id, BuildContext context)Single parameter constructor that specifies the unique id of the node.- Parameters:
id-
-
-
Method Detail
-
getPathIndex
public int getPathIndex()
- Specified by:
getPathIndexin interfaceLeftTupleNode
-
getType
public abstract short getType()
- Specified by:
getTypein interfaceorg.drools.base.common.NetworkNode
-
addTupleSink
public void addTupleSink(LeftTupleSink tupleSink)
-
getLeftTupleSource
public LeftTupleSource getLeftTupleSource()
- Specified by:
getLeftTupleSourcein interfaceLeftTupleNode
-
setLeftTupleSource
public final void setLeftTupleSource(LeftTupleSource leftInput)
-
getObjectCount
public int getObjectCount()
- Specified by:
getObjectCountin interfaceLeftTupleNode
-
setObjectCount
public void setObjectCount(int count)
- Specified by:
setObjectCountin interfaceLeftTupleNode
-
addTupleSink
public void addTupleSink(LeftTupleSink tupleSink, BuildContext context)
Adds theTupleSinkso that it may receiveTuplespropagated from thisTupleSource.- Parameters:
tupleSink- TheTupleSinkto receive propagatedTuples.
-
addTupleSink
protected LeftTupleSinkPropagator addTupleSink(LeftTupleSinkPropagator sinkPropagator, LeftTupleSink tupleSink, BuildContext context)
-
removeTupleSink
public void removeTupleSink(LeftTupleSink tupleSink)
Removes theTupleSink- Parameters:
tupleSink- TheTupleSinkto remove
-
getFirstLeftTupleSinkIgnoreRemoving
public LeftTupleSinkNode getFirstLeftTupleSinkIgnoreRemoving(TerminalNode removingTn)
-
getSinkPropagator
public LeftTupleSinkPropagator getSinkPropagator()
- Specified by:
getSinkPropagatorin interfaceLeftTupleNode
-
setSourcePartitionId
public void setSourcePartitionId(BuildContext context, org.drools.base.common.RuleBasePartitionId partitionId)
-
setSourcePartitionId
protected void setSourcePartitionId(BaseNode source, BuildContext context, org.drools.base.common.RuleBasePartitionId partitionId)
-
setPartitionIdWithSinks
public final void setPartitionIdWithSinks(org.drools.base.common.RuleBasePartitionId partitionId)
-
isInUse
public boolean isInUse()
Description copied from class:BaseNodeReturns true in case the current node is in use (is referenced by any other node)
-
initMasks
protected final void initMasks(BuildContext context, LeftTupleSource leftInput)
-
initDeclaredMask
protected void initDeclaredMask(BuildContext context, LeftTupleSource leftInput)
-
setNodeConstraintsPropertyReactiveMask
protected org.drools.util.bitmask.BitMask setNodeConstraintsPropertyReactiveMask(org.drools.util.bitmask.BitMask mask, org.drools.base.base.ObjectType objectType, java.util.List<java.lang.String> accessibleProperties)
-
getLeftInputPattern
protected org.drools.base.rule.Pattern getLeftInputPattern(BuildContext context)
-
getObjectTypeForPropertyReactivity
protected org.drools.base.base.ObjectType getObjectTypeForPropertyReactivity(LeftInputAdapterNode leftInput, org.drools.base.rule.Pattern pattern)
-
setLeftListenedProperties
protected void setLeftListenedProperties(java.util.Collection<java.lang.String> leftListenedProperties)
-
initInferredMask
protected void initInferredMask(LeftTupleSource leftInput)
-
getLeftDeclaredMask
public org.drools.util.bitmask.BitMask getLeftDeclaredMask()
-
getLeftInferredMask
public org.drools.util.bitmask.BitMask getLeftInferredMask()
-
setLeftInferredMask
protected void setLeftInferredMask(org.drools.util.bitmask.BitMask leftInferredMask)
-
getLeftNegativeMask
public org.drools.util.bitmask.BitMask getLeftNegativeMask()
-
getLeftInputOtnId
public ObjectTypeNode.Id getLeftInputOtnId()
-
setLeftInputOtnId
public void setLeftInputOtnId(ObjectTypeNode.Id leftInputOtnId)
-
getObjectType
public org.drools.base.base.ObjectType getObjectType()
-
isLeftTupleMemoryEnabled
public abstract boolean isLeftTupleMemoryEnabled()
-
-