org.drools.reteoo.impl
Class TupleSourceImpl

java.lang.Object
  |
  +--org.drools.reteoo.impl.TupleSourceImpl
All Implemented Interfaces:
TupleSource
Direct Known Subclasses:
ConditionNodeImpl, ExtractionNodeImpl, JoinNodeImpl, ParameterNodeImpl

public abstract class TupleSourceImpl
extends java.lang.Object
implements TupleSource

A source of ReteTuples for a TupleSink.

Nodes that propagate Tuples extend this class.

Author:
bob mcwhirter
See Also:
TupleSource, TupleSinkImpl, ReteTuple

Constructor Summary
protected TupleSourceImpl()
          Construct.
 
Method Summary
 TupleSink getTupleSink()
          Retrieve the TupleSink that receives propagated Tuples.
protected  void propagateAssertTuple(ReteTuple tuple, WorkingMemory workingMemory)
          Propagate the assertion of a Tuple to this node's TupleSink.
protected  void propagateModifyTuples(java.lang.Object trigger, org.drools.reteoo.impl.TupleSet newTuples, WorkingMemory workingMemory)
          Propagate the modification of Tuples to this node's TupleSink.
protected  void propagateRetractTuples(org.drools.reteoo.impl.TupleKey key, WorkingMemory workingMemory)
          Propagate the retration of a Tuple to this node's TupleSink.
protected  void setTupleSink(TupleSinkImpl tupleSink)
          Set the TupleSink that receives Tuples propagated from this TupleSource.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.drools.reteoo.TupleSource
getTupleDeclarations
 

Constructor Detail

TupleSourceImpl

protected TupleSourceImpl()
Construct.
Method Detail

setTupleSink

protected void setTupleSink(TupleSinkImpl tupleSink)
Set the TupleSink that receives Tuples propagated from this TupleSource.
Parameters:
tupleSink - The TupleSink to receive propagated Tuples.

propagateAssertTuple

protected void propagateAssertTuple(ReteTuple tuple,
                                    WorkingMemory workingMemory)
                             throws AssertionException
Propagate the assertion of a Tuple to this node's TupleSink.
Parameters:
tuple - The Tuple to propagate.
workingMemory - the working memory session.
Throws:
AssertionException - If an errors occurs while attempting assertion.

propagateRetractTuples

protected void propagateRetractTuples(org.drools.reteoo.impl.TupleKey key,
                                      WorkingMemory workingMemory)
                               throws RetractionException
Propagate the retration of a Tuple to this node's TupleSink.
Parameters:
key - The tuple key.
workingMemory - The working memory session.
Throws:
RetractionException - If an error occurs while attempting retraction

propagateModifyTuples

protected void propagateModifyTuples(java.lang.Object trigger,
                                     org.drools.reteoo.impl.TupleSet newTuples,
                                     WorkingMemory workingMemory)
                              throws FactException
Propagate the modification of Tuples to this node's TupleSink.
Parameters:
trigger - The modification trigger object.
newTuples - Modification replacement tuples.
workingMemory - The working memory session.
Throws:
FactException - If an error occurs while attempting modification.

getTupleSink

public TupleSink getTupleSink()
Retrieve the TupleSink that receives propagated Tuples.
Specified by:
getTupleSink in interface TupleSource
Returns:
The TupleSink that receives propagated Tuples.


Copyright © 2001-2003 The Werken Company. All Rights Reserved.