org.drools.core.reteoo
Class AbstractTerminalNode
java.lang.Object
org.drools.core.common.BaseNode
org.drools.core.reteoo.AbstractTerminalNode
- All Implemented Interfaces:
- Externalizable, Serializable, MemoryFactory, NetworkNode, LeftTupleSink, LeftTupleSinkNode, Sink, TerminalNode
- Direct Known Subclasses:
- QueryTerminalNode, RuleTerminalNode
public abstract class AbstractTerminalNode
- extends BaseNode
- implements TerminalNode, MemoryFactory, Externalizable
- See Also:
- Serialized Form
|
Method Summary |
Memory |
createMemory(RuleBaseConfiguration config,
InternalWorkingMemory wm)
|
LeftTuple |
createPeer(LeftTuple original)
|
protected void |
doRemove(RuleRemovalContext context,
ReteooBuilder builder,
InternalWorkingMemory[] workingMemories)
Removes the node from teh network. |
long |
getDeclaredMask()
|
long |
getInferredMask()
|
long |
getLeftInferredMask()
|
LeftTupleSource |
getLeftTupleSource()
|
long |
getNegativeMask()
|
abstract Rule |
getRule()
|
void |
initDeclaredMask(BuildContext context)
|
void |
initInferredMask()
|
static void |
initPathMemory(PathMemory pmem,
LeftTupleSource tupleSource,
LeftTupleSource startTupleSource,
InternalWorkingMemory wm,
Rule removingRule)
Creates and return the node memory |
void |
modifyLeftTuple(InternalFactHandle factHandle,
ModifyPreviousTuples modifyPreviousTuples,
PropagationContext context,
InternalWorkingMemory workingMemory)
|
void |
readExternal(ObjectInput in)
|
void |
setDeclaredMask(long mask)
|
void |
setInferredMask(long mask)
|
void |
setNegativeMask(long mask)
|
LeftTupleSource |
unwrapTupleSource()
|
void |
writeExternal(ObjectOutput out)
|
| Methods inherited from class org.drools.core.common.BaseNode |
addAssociation, attach, attach, getAssociations, getId, getPartitionId, hashCode, isInUse, isStreamMode, networkUpdated, remove, removeAssociation, setId, setPartitionId, toString |
| Methods inherited from interface org.drools.core.reteoo.LeftTupleSink |
assertLeftTuple, createLeftTuple, createLeftTuple, createLeftTuple, createLeftTuple, createLeftTuple, getLeftInputOtnId, isLeftTupleMemoryEnabled, modifyLeftTuple, retractLeftTuple, setLeftInputOtnId, setLeftTupleMemoryEnabled |
AbstractTerminalNode
public AbstractTerminalNode()
AbstractTerminalNode
public AbstractTerminalNode(int id,
RuleBasePartitionId partitionId,
boolean partitionsEnabled,
LeftTupleSource source)
readExternal
public void readExternal(ObjectInput in)
throws IOException,
ClassNotFoundException
- Specified by:
readExternal in interface Externalizable- Overrides:
readExternal in class BaseNode
- Throws:
IOException
ClassNotFoundException
writeExternal
public void writeExternal(ObjectOutput out)
throws IOException
- Specified by:
writeExternal in interface Externalizable- Overrides:
writeExternal in class BaseNode
- Throws:
IOException
initDeclaredMask
public void initDeclaredMask(BuildContext context)
initInferredMask
public void initInferredMask()
- Specified by:
initInferredMask in interface TerminalNode
unwrapTupleSource
public LeftTupleSource unwrapTupleSource()
- Specified by:
unwrapTupleSource in interface TerminalNode
modifyLeftTuple
public void modifyLeftTuple(InternalFactHandle factHandle,
ModifyPreviousTuples modifyPreviousTuples,
PropagationContext context,
InternalWorkingMemory workingMemory)
- Specified by:
modifyLeftTuple in interface LeftTupleSink
getRule
public abstract Rule getRule()
- Specified by:
getRule in interface TerminalNode
createMemory
public Memory createMemory(RuleBaseConfiguration config,
InternalWorkingMemory wm)
- Specified by:
createMemory in interface MemoryFactory
initPathMemory
public static void initPathMemory(PathMemory pmem,
LeftTupleSource tupleSource,
LeftTupleSource startTupleSource,
InternalWorkingMemory wm,
Rule removingRule)
- Creates and return the node memory
createPeer
public LeftTuple createPeer(LeftTuple original)
- Specified by:
createPeer in interface LeftTupleSink
doRemove
protected void doRemove(RuleRemovalContext context,
ReteooBuilder builder,
InternalWorkingMemory[] workingMemories)
- Description copied from class:
BaseNode
- Removes the node from teh network. Usually from the parent
ObjectSource or TupleSource
- Specified by:
doRemove in class BaseNode
getLeftTupleSource
public LeftTupleSource getLeftTupleSource()
- Specified by:
getLeftTupleSource in interface LeftTupleSink- Specified by:
getLeftTupleSource in interface TerminalNode
getDeclaredMask
public long getDeclaredMask()
- Specified by:
getDeclaredMask in interface TerminalNode
getInferredMask
public long getInferredMask()
- Specified by:
getInferredMask in interface TerminalNode
getLeftInferredMask
public long getLeftInferredMask()
- Specified by:
getLeftInferredMask in interface LeftTupleSink
setDeclaredMask
public void setDeclaredMask(long mask)
- Specified by:
setDeclaredMask in interface TerminalNode
setInferredMask
public void setInferredMask(long mask)
- Specified by:
setInferredMask in interface TerminalNode
getNegativeMask
public long getNegativeMask()
- Specified by:
getNegativeMask in interface TerminalNode
setNegativeMask
public void setNegativeMask(long mask)
- Specified by:
setNegativeMask in interface TerminalNode
Copyright © 2001-2014 JBoss by Red Hat. All Rights Reserved.