Package org.drools.core.reteoo
Class QueryTerminalNode
- java.lang.Object
-
- org.drools.core.common.BaseNode
-
- org.drools.core.reteoo.AbstractTerminalNode
-
- org.drools.core.reteoo.QueryTerminalNode
-
- All Implemented Interfaces:
MemoryFactory<PathMemory>,NetworkNode,LeftTupleNode,LeftTupleSink,LeftTupleSinkNode,PathEndNode,Sink,TerminalNode
public class QueryTerminalNode extends AbstractTerminalNode implements LeftTupleSinkNode
Leaf Rete-OO node responsible for enactingActions on a matchedRule.- See Also:
Rule
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.drools.core.reteoo.PathEndNode
PathEndNode.PathMemSpec
-
-
Field Summary
Fields Modifier and Type Field Description static shorttype-
Fields inherited from class org.drools.core.reteoo.AbstractTerminalNode
pathMemSpec, requiredDeclarations
-
Fields inherited from class org.drools.core.common.BaseNode
associations, hashcode, id, memoryId, partitionId, partitionsEnabled
-
-
Constructor Summary
Constructors Constructor Description QueryTerminalNode()QueryTerminalNode(int id, LeftTupleSource source, RuleImpl rule, GroupElement subrule, int subruleIndex, BuildContext context)Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description LeftTuplecreateLeftTuple(InternalFactHandle factHandle, boolean leftTupleMemoryEnabled)LeftTuplecreateLeftTuple(InternalFactHandle factHandle, LeftTuple leftTuple, Sink sink)LeftTuplecreateLeftTuple(LeftTuple leftTuple, RightTuple rightTuple, LeftTuple currentLeftChild, LeftTuple currentRightChild, Sink sink, boolean leftTupleMemoryEnabled)LeftTuplecreateLeftTuple(LeftTuple leftTuple, RightTuple rightTuple, Sink sink)LeftTuplecreateLeftTuple(LeftTuple leftTuple, Sink sink, PropagationContext pctx, boolean leftTupleMemoryEnabled)LeftTuplecreatePeer(LeftTuple original)voiddoAttach(BuildContext context)ObjectTypeNode.IdgetLeftInputOtnId()QueryImplgetQuery()Declaration[]getSalienceDeclarations()shortgetType()booleanisFireDirect()voidsetLeftInputOtnId(ObjectTypeNode.Id leftInputOtnId)java.lang.StringtoString()-
Methods inherited from class org.drools.core.reteoo.AbstractTerminalNode
calculateHashCode, createMemory, doRemove, equals, getAllDeclarations, getDeclaredMask, getEagerSegmentPrototypes, getInferredMask, getLeftInferredMask, getLeftTupleSource, getNegativeMask, getNextLeftTupleSinkNode, getObjectCount, getObjectTypeNode, getPathEndNodes, getPathIndex, getPathMemSpec, getPathMemSpec, getPathNodes, getPathNodes, getPreviousLeftTupleSinkNode, getRequiredDeclarations, getRule, getSegmentPrototypes, getSinkPropagator, getSubRule, getSubruleIndex, hasPathNode, initDeclaredMask, initInferredMask, initPathMemory, isInUse, isLeftTupleMemoryEnabled, isTerminalNodeOf, networkUpdated, nullPathMemSpec, resetPathMemSpec, setDeclaredMask, setEagerSegmentPrototypes, setInferredMask, setNegativeMask, setNextLeftTupleSinkNode, setObjectCount, setPartitionIdWithSinks, setPathEndNodes, setPreviousLeftTupleSinkNode, setSegmentPrototypes, unwrapTupleSource, visitLeftTupleNodes
-
Methods inherited from class org.drools.core.common.BaseNode
addAssociatedTerminal, addAssociation, addAssociation, attach, getAssociatedRules, getAssociatedTerminalsSize, getAssociationsSize, getId, getMemoryId, getPartitionId, getSinks, hasAssociatedTerminal, hashCode, initMemoryId, isAssociatedWith, isStreamMode, remove, removeAssociatedTerminal, removeAssociation, setId, setPartitionId, setPartitionsEnabled, setStreamMode
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.drools.core.reteoo.LeftTupleNode
getObjectCount, getPathIndex, getSinkPropagator, setObjectCount
-
Methods inherited from interface org.drools.core.reteoo.LeftTupleSink
getLeftInferredMask, isLeftTupleMemoryEnabled, setPartitionIdWithSinks
-
Methods inherited from interface org.drools.core.reteoo.LeftTupleSinkNode
getNextLeftTupleSinkNode, getPreviousLeftTupleSinkNode, setNextLeftTupleSinkNode, setPreviousLeftTupleSinkNode
-
Methods inherited from interface org.drools.core.common.MemoryFactory
getMemoryId
-
Methods inherited from interface org.drools.core.common.NetworkNode
addAssociatedTerminal, getAssociatedRules, getAssociatedTerminalsSize, getId, getPartitionId, getSinks, hasAssociatedTerminal, isAssociatedWith, removeAssociatedTerminal
-
Methods inherited from interface org.drools.core.reteoo.PathEndNode
calculatePathMemSpec
-
-
-
-
Field Detail
-
type
public static final short type
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
QueryTerminalNode
public QueryTerminalNode()
-
QueryTerminalNode
public QueryTerminalNode(int id, LeftTupleSource source, RuleImpl rule, GroupElement subrule, int subruleIndex, BuildContext context)Constructor- Parameters:
id- node IDsource- the tuple source for this noderule- the rule this node belongs tosubrule- the subrule this node belongs tocontext- the current build context
-
-
Method Detail
-
getQuery
public QueryImpl getQuery()
-
isFireDirect
public boolean isFireDirect()
- Specified by:
isFireDirectin interfaceTerminalNode
-
getType
public short getType()
- Specified by:
getTypein interfaceNetworkNode
-
createLeftTuple
public LeftTuple createLeftTuple(InternalFactHandle factHandle, boolean leftTupleMemoryEnabled)
- Specified by:
createLeftTuplein interfaceLeftTupleSink
-
createLeftTuple
public LeftTuple createLeftTuple(InternalFactHandle factHandle, LeftTuple leftTuple, Sink sink)
- Specified by:
createLeftTuplein interfaceLeftTupleSink
-
createLeftTuple
public LeftTuple createLeftTuple(LeftTuple leftTuple, Sink sink, PropagationContext pctx, boolean leftTupleMemoryEnabled)
- Specified by:
createLeftTuplein interfaceLeftTupleSink
-
createLeftTuple
public LeftTuple createLeftTuple(LeftTuple leftTuple, RightTuple rightTuple, Sink sink)
- Specified by:
createLeftTuplein interfaceLeftTupleSink
-
createLeftTuple
public LeftTuple createLeftTuple(LeftTuple leftTuple, RightTuple rightTuple, LeftTuple currentLeftChild, LeftTuple currentRightChild, Sink sink, boolean leftTupleMemoryEnabled)
- Specified by:
createLeftTuplein interfaceLeftTupleSink
-
getLeftInputOtnId
public ObjectTypeNode.Id getLeftInputOtnId()
- Specified by:
getLeftInputOtnIdin interfaceLeftTupleSink
-
setLeftInputOtnId
public void setLeftInputOtnId(ObjectTypeNode.Id leftInputOtnId)
- Specified by:
setLeftInputOtnIdin interfaceLeftTupleSink
-
createPeer
public LeftTuple createPeer(LeftTuple original)
- Specified by:
createPeerin interfaceLeftTupleSink- Overrides:
createPeerin classAbstractTerminalNode
-
getSalienceDeclarations
public Declaration[] getSalienceDeclarations()
- Specified by:
getSalienceDeclarationsin interfaceTerminalNode
-
doAttach
public void doAttach(BuildContext context)
-
-