org.drools.reteoo
Class FromNode
java.lang.Object
org.drools.common.BaseNode
org.drools.reteoo.LeftTupleSource
org.drools.reteoo.FromNode
- All Implemented Interfaces:
- Externalizable, Serializable, NetworkNode, NodeMemory, LeftTupleSink, LeftTupleSinkNode, Sink
public class FromNode
- extends LeftTupleSource
- implements LeftTupleSinkNode, NodeMemory
- See Also:
- Serialized Form
|
Method Summary |
void |
assertLeftTuple(LeftTuple leftTuple,
PropagationContext context,
InternalWorkingMemory workingMemory)
Assert a new ReteTuple. |
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)
|
Object |
createMemory(RuleBaseConfiguration config)
|
protected void |
doRemove(RuleRemovalContext context,
ReteooBuilder builder,
BaseNode node,
InternalWorkingMemory[] workingMemories)
Removes the node from teh network. |
LeftTupleSource |
getLeftTupleSource()
|
LeftTupleSinkNode |
getNextLeftTupleSinkNode()
Returns the next node |
LeftTupleSinkNode |
getPreviousLeftTupleSinkNode()
Returns the previous node |
short |
getType()
|
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 |
setLeftTupleMemoryEnabled(boolean tupleMemoryEnabled)
|
void |
setNextLeftTupleSinkNode(LeftTupleSinkNode next)
Sets the next node |
void |
setPreviousLeftTupleSinkNode(LeftTupleSinkNode previous)
Sets the previous node |
void |
updateSink(LeftTupleSink sink,
PropagationContext context,
InternalWorkingMemory workingMemory)
|
void |
writeExternal(ObjectOutput out)
|
tupleMemoryEnabled
protected boolean tupleMemoryEnabled
FromNode
public FromNode()
FromNode
public FromNode(int id,
DataProvider dataProvider,
LeftTupleSource tupleSource,
AlphaNodeFieldConstraint[] constraints,
BetaConstraints binder,
boolean tupleMemoryEnabled,
BuildContext context,
From from)
readExternal
public void readExternal(ObjectInput in)
throws IOException,
ClassNotFoundException
- Specified by:
readExternal in interface Externalizable- Overrides:
readExternal in class LeftTupleSource
- Throws:
IOException
ClassNotFoundException
writeExternal
public void writeExternal(ObjectOutput out)
throws IOException
- Specified by:
writeExternal in interface Externalizable- Overrides:
writeExternal in class LeftTupleSource
- Throws:
IOException
assertLeftTuple
public void assertLeftTuple(LeftTuple leftTuple,
PropagationContext context,
InternalWorkingMemory workingMemory)
- Description copied from interface:
LeftTupleSink
- Assert a new
ReteTuple.
- Specified by:
assertLeftTuple in interface LeftTupleSink
- Parameters:
leftTuple - The ReteTuple to propagate.context - The PropagationContext of the WorkingMemory actionworkingMemory - the WorkingMemory session.
modifyLeftTuple
public void modifyLeftTuple(InternalFactHandle factHandle,
ModifyPreviousTuples modifyPreviousTuples,
PropagationContext context,
InternalWorkingMemory workingMemory)
- Specified by:
modifyLeftTuple in interface LeftTupleSink
modifyLeftTuple
public void modifyLeftTuple(LeftTuple leftTuple,
PropagationContext context,
InternalWorkingMemory workingMemory)
- Specified by:
modifyLeftTuple in interface LeftTupleSink
retractLeftTuple
public void retractLeftTuple(LeftTuple leftTuple,
PropagationContext context,
InternalWorkingMemory workingMemory)
- Specified by:
retractLeftTuple in interface LeftTupleSink
attach
public void attach()
- Description copied from class:
BaseNode
- Attaches the node into the network. Usually to the parent
ObjectSource or TupleSource
- Specified by:
attach in class BaseNode
attach
public void attach(InternalWorkingMemory[] workingMemories)
- Specified by:
attach in class BaseNode
networkUpdated
public void networkUpdated()
- Description copied from class:
BaseNode
- 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
- Specified by:
networkUpdated in class BaseNode
doRemove
protected void doRemove(RuleRemovalContext context,
ReteooBuilder builder,
BaseNode node,
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
updateSink
public void updateSink(LeftTupleSink sink,
PropagationContext context,
InternalWorkingMemory workingMemory)
- Specified by:
updateSink in class LeftTupleSource
createMemory
public Object createMemory(RuleBaseConfiguration config)
- Specified by:
createMemory in interface NodeMemory
isLeftTupleMemoryEnabled
public boolean isLeftTupleMemoryEnabled()
- Specified by:
isLeftTupleMemoryEnabled in interface LeftTupleSink
setLeftTupleMemoryEnabled
public void setLeftTupleMemoryEnabled(boolean tupleMemoryEnabled)
- Specified by:
setLeftTupleMemoryEnabled in interface LeftTupleSink
getNextLeftTupleSinkNode
public LeftTupleSinkNode getNextLeftTupleSinkNode()
- Returns the next node
- Specified by:
getNextLeftTupleSinkNode in interface LeftTupleSinkNode
- Returns:
- The next TupleSinkNode
setNextLeftTupleSinkNode
public void setNextLeftTupleSinkNode(LeftTupleSinkNode next)
- Sets the next node
- Specified by:
setNextLeftTupleSinkNode in interface LeftTupleSinkNode
- Parameters:
next - The next TupleSinkNode
getPreviousLeftTupleSinkNode
public LeftTupleSinkNode getPreviousLeftTupleSinkNode()
- Returns the previous node
- Specified by:
getPreviousLeftTupleSinkNode in interface LeftTupleSinkNode
- Returns:
- The previous TupleSinkNode
setPreviousLeftTupleSinkNode
public void setPreviousLeftTupleSinkNode(LeftTupleSinkNode previous)
- Sets the previous node
- Specified by:
setPreviousLeftTupleSinkNode in interface LeftTupleSinkNode
- Parameters:
previous - The previous TupleSinkNode
getType
public short getType()
- Specified by:
getType in interface LeftTupleSink
createLeftTuple
public LeftTuple createLeftTuple(InternalFactHandle factHandle,
LeftTupleSink sink,
boolean leftTupleMemoryEnabled)
- Specified by:
createLeftTuple in interface LeftTupleSink
createLeftTuple
public LeftTuple createLeftTuple(LeftTuple leftTuple,
LeftTupleSink sink,
boolean leftTupleMemoryEnabled)
- Specified by:
createLeftTuple in interface LeftTupleSink
createLeftTuple
public LeftTuple createLeftTuple(LeftTuple leftTuple,
RightTuple rightTuple,
LeftTupleSink sink)
- Specified by:
createLeftTuple in interface LeftTupleSink
createLeftTuple
public LeftTuple createLeftTuple(LeftTuple leftTuple,
RightTuple rightTuple,
LeftTuple currentLeftChild,
LeftTuple currentRightChild,
LeftTupleSink sink,
boolean leftTupleMemoryEnabled)
- Specified by:
createLeftTuple in interface LeftTupleSink
getLeftTupleSource
public LeftTupleSource getLeftTupleSource()
- Specified by:
getLeftTupleSource in interface LeftTupleSink
Copyright © 2001-2011 JBoss by Red Hat. All Rights Reserved.