Package org.drools.core.reteoo
Class LeftTupleSource
- java.lang.Object
-
- org.drools.core.common.BaseNode
-
- org.drools.core.reteoo.LeftTupleSource
-
- All Implemented Interfaces:
Externalizable
,Serializable
,NetworkNode
,LeftTupleNode
- Direct Known Subclasses:
AsyncReceiveNode
,AsyncSendNode
,BetaNode
,ConditionalBranchNode
,EvalConditionNode
,FromNode
,LeftInputAdapterNode
,QueryElementNode
,TimerNode
public abstract class LeftTupleSource extends BaseNode implements LeftTupleNode, Externalizable
A source ofReteTuple
s for aTupleSink
.Nodes that propagate
Tuples
extend this class.- See Also:
LeftTupleSource
,LeftTuple
, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected BitMask
leftDeclaredMask
protected BitMask
leftInferredMask
protected LeftTupleSource
leftInput
The left inputTupleSource
.protected BitMask
leftNegativeMask
protected LeftTupleSinkPropagator
sink
The destination forTuples
.-
Fields inherited from class org.drools.core.common.BaseNode
associations, hashcode, id, memoryId, partitionId, partitionsEnabled
-
-
Constructor Summary
Constructors Modifier Constructor Description LeftTupleSource()
protected
LeftTupleSource(int id, BuildContext context)
Single parameter constructor that specifies the unique id of the node.
-
Method Summary
-
Methods inherited from class org.drools.core.common.BaseNode
addAssociation, addAssociation, attach, doAttach, doRemove, getAssociatedRules, getAssociatedRuleSize, getAssociationsSize, getAssociationsSize, getId, getMemoryId, getObjectTypeNode, getPartitionId, getSinks, hashCode, initMemoryId, isAssociatedWith, isStreamMode, networkUpdated, remove, removeAssociation, setId, setPartitionId, setPartitionsEnabled, setStreamMode, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.drools.core.common.NetworkNode
getAssociatedRules, getAssociatedRuleSize, getAssociationsSize, getAssociationsSize, getId, getPartitionId, isAssociatedWith
-
-
-
-
Field Detail
-
leftDeclaredMask
protected BitMask leftDeclaredMask
-
leftInferredMask
protected BitMask leftInferredMask
-
leftNegativeMask
protected 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
-
readExternal
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
- Specified by:
readExternal
in interfaceExternalizable
- Overrides:
readExternal
in classBaseNode
- Throws:
IOException
ClassNotFoundException
-
writeExternal
public void writeExternal(ObjectOutput out) throws IOException
- Specified by:
writeExternal
in interfaceExternalizable
- Overrides:
writeExternal
in classBaseNode
- Throws:
IOException
-
getPathIndex
public int getPathIndex()
- Specified by:
getPathIndex
in interfaceLeftTupleNode
-
getType
public abstract short getType()
- Specified by:
getType
in interfaceNetworkNode
-
addTupleSink
public void addTupleSink(LeftTupleSink tupleSink)
-
getLeftTupleSource
public LeftTupleSource getLeftTupleSource()
- Specified by:
getLeftTupleSource
in interfaceLeftTupleNode
-
setLeftTupleSource
public final void setLeftTupleSource(LeftTupleSource leftInput)
-
getObjectCount
public int getObjectCount()
- Specified by:
getObjectCount
in interfaceLeftTupleNode
-
setObjectCount
public void setObjectCount(int count)
- Specified by:
setObjectCount
in interfaceLeftTupleNode
-
addTupleSink
public void addTupleSink(LeftTupleSink tupleSink, BuildContext context)
Adds theTupleSink
so that it may receiveTuples
propagated from thisTupleSource
.- Parameters:
tupleSink
- TheTupleSink
to receive propagatedTuples
.
-
addTupleSink
protected LeftTupleSinkPropagator addTupleSink(LeftTupleSinkPropagator sinkPropagator, LeftTupleSink tupleSink, BuildContext context)
-
removeTupleSink
public void removeTupleSink(LeftTupleSink tupleSink)
Removes theTupleSink
- Parameters:
tupleSink
- TheTupleSink
to remove
-
getSinkPropagator
public LeftTupleSinkPropagator getSinkPropagator()
- Specified by:
getSinkPropagator
in interfaceLeftTupleNode
-
setSourcePartitionId
public void setSourcePartitionId(BuildContext context, RuleBasePartitionId partitionId)
-
setSourcePartitionId
protected void setSourcePartitionId(BaseNode source, BuildContext context, RuleBasePartitionId partitionId)
-
setPartitionIdWithSinks
public final void setPartitionIdWithSinks(RuleBasePartitionId partitionId)
-
isInUse
public boolean isInUse()
Description copied from class:BaseNode
Returns 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 BitMask setNodeConstraintsPropertyReactiveMask(BitMask mask, Class objectClass, List<String> accessibleProperties)
-
getLeftInputPattern
protected Pattern getLeftInputPattern(BuildContext context)
-
getObjectTypeForPropertyReactivity
protected ObjectType getObjectTypeForPropertyReactivity(LeftInputAdapterNode leftInput, Pattern pattern)
-
setLeftListenedProperties
protected void setLeftListenedProperties(Collection<String> leftListenedProperties)
-
initInferredMask
protected void initInferredMask(LeftTupleSource leftInput)
-
getLeftDeclaredMask
public BitMask getLeftDeclaredMask()
-
getLeftInferredMask
public BitMask getLeftInferredMask()
-
setLeftInferredMask
protected void setLeftInferredMask(BitMask leftInferredMask)
-
getLeftNegativeMask
public BitMask getLeftNegativeMask()
-
getLeftInputOtnId
public ObjectTypeNode.Id getLeftInputOtnId()
-
setLeftInputOtnId
public void setLeftInputOtnId(ObjectTypeNode.Id leftInputOtnId)
-
getObjectType
public ObjectType getObjectType()
-
isLeftTupleMemoryEnabled
public abstract boolean isLeftTupleMemoryEnabled()
-
-