|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.drools.common.BaseNode
org.drools.reteoo.QueryTerminalNode
public final class QueryTerminalNode
Leaf Rete-OO node responsible for enacting Action
s on a
matched Rule
.
Rule
,
Serialized FormField Summary | |
---|---|
static short |
type
|
Fields inherited from class org.drools.common.BaseNode |
---|
associations, id, partitionId, partitionsEnabled |
Constructor Summary | |
---|---|
QueryTerminalNode()
|
|
QueryTerminalNode(int id,
LeftTupleSource source,
Rule rule,
GroupElement subrule,
int subruleIndex,
BuildContext context)
Constructor |
Method Summary | |
---|---|
void |
assertLeftTuple(LeftTuple leftTuple,
PropagationContext context,
InternalWorkingMemory workingMemory)
Assert a new Tuple . |
void |
attach()
Attaches the node into the network. |
void |
attach(InternalWorkingMemory[] workingMemories)
|
LeftTuple |
createLeftTuple(InternalFactHandle factHandle,
LeftTupleSink sink,
boolean leftTupleMemoryEnabled)
|
LeftTuple |
createLeftTuple(LeftTuple leftTuple,
LeftTupleSink sink,
boolean leftTupleMemoryEnabled)
|
LeftTuple |
createLeftTuple(LeftTuple leftTuple,
RightTuple rightTuple,
LeftTuple currentLeftChild,
LeftTuple currentRightChild,
LeftTupleSink sink,
boolean leftTupleMemoryEnabled)
|
LeftTuple |
createLeftTuple(LeftTuple leftTuple,
RightTuple rightTuple,
LeftTupleSink sink)
|
protected void |
doRemove(RuleRemovalContext context,
ReteooBuilder builder,
BaseNode node,
InternalWorkingMemory[] workingMemories)
Removes the node from teh network. |
Declaration[] |
getDeclarations()
|
LeftTupleSource |
getLeftTupleSource()
|
LeftTupleSinkNode |
getNextLeftTupleSinkNode()
Returns the next node |
LeftTupleSinkNode |
getPreviousLeftTupleSinkNode()
Returns the previous node |
Rule |
getRule()
|
GroupElement |
getSubrule()
|
int |
getSubruleIndex()
|
short |
getType()
|
boolean |
isInUse()
Returns true in case the current node is in use (is referenced by any other node) |
boolean |
isLeftTupleMemoryEnabled()
|
void |
modifyLeftTuple(InternalFactHandle factHandle,
ModifyPreviousTuples modifyPreviousTuples,
PropagationContext context,
InternalWorkingMemory workingMemory)
|
void |
modifyLeftTuple(LeftTuple leftTuple,
PropagationContext context,
InternalWorkingMemory workingMemory)
|
void |
networkUpdated()
A method that is called for all nodes whose network below them changed, after the change is complete, providing them with an oportunity for state update |
void |
readExternal(ObjectInput in)
|
void |
retractLeftTuple(LeftTuple leftTuple,
PropagationContext context,
InternalWorkingMemory workingMemory)
|
void |
ruleAttached()
|
void |
setLeftTupleMemoryEnabled(boolean tupleMemoryEnabled)
|
void |
setNextLeftTupleSinkNode(LeftTupleSinkNode next)
Sets the next node |
void |
setPreviousLeftTupleSinkNode(LeftTupleSinkNode previous)
Sets the previous node |
String |
toString()
|
void |
updateNewNode(InternalWorkingMemory workingMemory,
PropagationContext context)
|
void |
writeExternal(ObjectOutput out)
|
Methods inherited from class org.drools.common.BaseNode |
---|
addAssociation, getAssociations, getId, getPartitionId, hashCode, remove, removeAssociation, setPartitionId |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final short type
Constructor Detail |
---|
public QueryTerminalNode()
public QueryTerminalNode(int id, LeftTupleSource source, Rule rule, GroupElement subrule, int subruleIndex, BuildContext context)
id
- node IDsource
- the tuple source for this noderule
- the rule this node belongs tosubrule
- the subrule this node belongs tocontext
- the current build contextMethod Detail |
---|
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
readExternal
in interface Externalizable
readExternal
in class BaseNode
IOException
ClassNotFoundException
public void writeExternal(ObjectOutput out) throws IOException
writeExternal
in interface Externalizable
writeExternal
in class BaseNode
IOException
public Rule getRule()
public LeftTupleSource getLeftTupleSource()
getLeftTupleSource
in interface LeftTupleSink
getLeftTupleSource
in interface TerminalNode
public void assertLeftTuple(LeftTuple leftTuple, PropagationContext context, InternalWorkingMemory workingMemory)
Tuple
.
assertLeftTuple
in interface LeftTupleSink
tuple
- The Tuple
being asserted.workingMemory
- The working memory seesion.
AssertionException
- If an error occurs while asserting.public void retractLeftTuple(LeftTuple leftTuple, PropagationContext context, InternalWorkingMemory workingMemory)
retractLeftTuple
in interface LeftTupleSink
public void modifyLeftTuple(InternalFactHandle factHandle, ModifyPreviousTuples modifyPreviousTuples, PropagationContext context, InternalWorkingMemory workingMemory)
modifyLeftTuple
in interface LeftTupleSink
public void modifyLeftTuple(LeftTuple leftTuple, PropagationContext context, InternalWorkingMemory workingMemory)
modifyLeftTuple
in interface LeftTupleSink
public String toString()
toString
in class BaseNode
public void ruleAttached()
public void attach()
BaseNode
ObjectSource
or TupleSource
attach
in class BaseNode
public void attach(InternalWorkingMemory[] workingMemories)
attach
in class BaseNode
public void networkUpdated()
BaseNode
networkUpdated
in class BaseNode
protected void doRemove(RuleRemovalContext context, ReteooBuilder builder, BaseNode node, InternalWorkingMemory[] workingMemories)
BaseNode
ObjectSource
or TupleSource
doRemove
in class BaseNode
public boolean isInUse()
BaseNode
isInUse
in class BaseNode
public void updateNewNode(InternalWorkingMemory workingMemory, PropagationContext context)
public boolean isLeftTupleMemoryEnabled()
isLeftTupleMemoryEnabled
in interface LeftTupleSink
public void setLeftTupleMemoryEnabled(boolean tupleMemoryEnabled)
setLeftTupleMemoryEnabled
in interface LeftTupleSink
public GroupElement getSubrule()
public Declaration[] getDeclarations()
public int getSubruleIndex()
public LeftTupleSinkNode getPreviousLeftTupleSinkNode()
getPreviousLeftTupleSinkNode
in interface LeftTupleSinkNode
public void setPreviousLeftTupleSinkNode(LeftTupleSinkNode previous)
setPreviousLeftTupleSinkNode
in interface LeftTupleSinkNode
previous
- The previous TupleSinkNodepublic LeftTupleSinkNode getNextLeftTupleSinkNode()
getNextLeftTupleSinkNode
in interface LeftTupleSinkNode
public void setNextLeftTupleSinkNode(LeftTupleSinkNode next)
setNextLeftTupleSinkNode
in interface LeftTupleSinkNode
next
- The next TupleSinkNodepublic short getType()
getType
in interface LeftTupleSink
public LeftTuple createLeftTuple(InternalFactHandle factHandle, LeftTupleSink sink, boolean leftTupleMemoryEnabled)
createLeftTuple
in interface LeftTupleSink
public LeftTuple createLeftTuple(LeftTuple leftTuple, LeftTupleSink sink, boolean leftTupleMemoryEnabled)
createLeftTuple
in interface LeftTupleSink
public LeftTuple createLeftTuple(LeftTuple leftTuple, RightTuple rightTuple, LeftTupleSink sink)
createLeftTuple
in interface LeftTupleSink
public LeftTuple createLeftTuple(LeftTuple leftTuple, RightTuple rightTuple, LeftTuple currentLeftChild, LeftTuple currentRightChild, LeftTupleSink sink, boolean leftTupleMemoryEnabled)
createLeftTuple
in interface LeftTupleSink
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |