| org.drools.reteoo.TupleSource org.drools.reteoo.BetaNode org.drools.reteoo.ExistsNode
ExistsNode | public class ExistsNode extends BetaNode (Code) | | ExistsNode extends BetaNode to perform tests for
the existence of a Fact plus one or more conditions. Where existence
is found the left ReteTuple is copied and propagated. Further to this it
maintains the "truth" by cancelling any
Activations that are no longer
considered true by the retraction of ReteTuple's or FactHandleImpl.
Tuples are considered to be asserted from the left input and facts from the right input.
The BetaNode provides the BetaMemory to store assserted ReteTuples and
FactHandleImpls. Each fact handle is stored in the right
memory.
author: Edson Tirelli |
Method Summary | |
public void | assertObject(InternalFactHandle handle, PropagationContext context, InternalWorkingMemory workingMemory) Assert a new FactHandleImpl from the right input. | public void | assertTuple(ReteTuple leftTuple, PropagationContext context, InternalWorkingMemory workingMemory) Assert a new ReteTuple from the left input. | public void | retractObject(InternalFactHandle handle, PropagationContext context, InternalWorkingMemory workingMemory) Retract the FactHandleImpl . | public void | retractTuple(ReteTuple leftTuple, PropagationContext context, InternalWorkingMemory workingMemory) Retract the
ReteTuple, any resulting propagated joins are also retracted. | public String | toString() | public void | updateSink(TupleSink sink, PropagationContext context, InternalWorkingMemory workingMemory) |
notAssertObject | static int notAssertObject(Code) | | |
notAssertTuple | static int notAssertTuple(Code) | | |
ExistsNode | public ExistsNode(int id, TupleSource leftInput, ObjectSource rightInput)(Code) | | Constructs a new Exists node with EmptyBetaConstraints.
Parameters: leftInput - The left input TupleSource . Parameters: rightInput - The right input ObjectSource . |
ExistsNode | public ExistsNode(int id, TupleSource leftInput, ObjectSource rightInput, BetaConstraints joinNodeBinder)(Code) | | Construct.
Parameters: leftInput - The left input TupleSource . Parameters: rightInput - The right input ObjectSource . Parameters: joinNodeBinder - The constraints to be aplied to the right objects |
assertObject | public void assertObject(InternalFactHandle handle, PropagationContext context, InternalWorkingMemory workingMemory)(Code) | | Assert a new FactHandleImpl from the right input. If it
matches any left ReteTuple's that had no matches before, propagate
tuple as an assertion.
Parameters: handle - The FactHandleImpl being asserted. Parameters: context - The PropagationContext Parameters: workingMemory - The working memory seesion. |
assertTuple | public void assertTuple(ReteTuple leftTuple, PropagationContext context, InternalWorkingMemory workingMemory)(Code) | | Assert a new ReteTuple from the left input. It iterates
over the right FactHandleImpl 's and if any match is found,
a copy of the ReteTuple is made and propagated.
Parameters: tuple - The Tuple being asserted. Parameters: context - The PropagationContext Parameters: workingMemory - The working memory seesion. |
retractObject | public void retractObject(InternalFactHandle handle, PropagationContext context, InternalWorkingMemory workingMemory)(Code) | | Retract the FactHandleImpl . If the handle has any
ReteTuple matches and those tuples now have no
other match, retract tuple
Parameters: handle - the being retracted Parameters: context - The PropagationContext Parameters: workingMemory - The working memory seesion. |
retractTuple | public void retractTuple(ReteTuple leftTuple, PropagationContext context, InternalWorkingMemory workingMemory)(Code) | | Retract the
ReteTuple, any resulting propagated joins are also retracted.
Parameters: leftTuple - The tuple being retracted Parameters: context - The PropagationContext Parameters: workingMemory - The working memory seesion. |
|
|