public class RuleTerminalNode extends AbstractTerminalNode
Action s on a
matched Rule.Rule,
Serialized Form| Modifier and Type | Class and Description |
|---|---|
static class |
RuleTerminalNode.SortDeclarations |
PathEndNode.PathMemSpec| Modifier and Type | Field and Description |
|---|---|
protected Declaration[] |
allDeclarations |
protected String |
consequenceName |
protected Declaration[] |
enabledDeclarations |
protected boolean |
fireDirect |
protected ObjectTypeNode.Id |
leftInputOtnId |
protected LeftTupleSinkNode |
nextTupleSinkNode |
protected LeftTupleSinkNode |
previousTupleSinkNode |
protected Declaration[] |
requiredDeclarations |
protected RuleImpl |
rule
The rule to invoke upon match.
|
protected Declaration[] |
salienceDeclarations |
protected GroupElement |
subrule
the subrule reference is needed to resolve declarations
because declarations may have different offsets in each subrule
|
protected int |
subruleIndex |
associations, hashcode, id, memoryId, partitionId, partitionsEnabled| Constructor and Description |
|---|
RuleTerminalNode() |
RuleTerminalNode(int id,
LeftTupleSource source,
RuleImpl rule,
GroupElement subrule,
int subruleIndex,
BuildContext context) |
createMemory, createPeer, doRemove, getDeclaredMask, getInferredMask, getLeftInferredMask, getLeftTupleSource, getNegativeMask, getObjectCount, getObjectTypeNode, getPathEndNodes, getPathIndex, getPathMemSpec, getPathNodes, getPathNodes, getSinkPropagator, hasPathNode, initDeclaredMask, initInferredMask, initPathMemory, isInUse, isLeftTupleMemoryEnabled, isTerminalNodeOf, networkUpdated, resetPathMemSpec, setDeclaredMask, setInferredMask, setLeftTupleMemoryEnabled, setNegativeMask, setObjectCount, setPartitionIdWithSinks, setPathEndNodes, unwrapTupleSourceaddAssociation, addAssociation, attach, getAssociatedRules, getAssociatedRuleSize, getAssociationsSize, getAssociationsSize, getId, getMemoryId, getPartitionId, getSinks, hashCode, initMemoryId, isAssociatedWith, isStreamMode, remove, removeAssociation, setId, setPartitionId, setPartitionsEnabled, setStreamModeclone, finalize, getClass, notify, notifyAll, wait, wait, waitcalculatePathMemSpec, calculatePathMemSpec, hasConditionalBranchNodegetAssociatedRules, getAssociatedRuleSize, getAssociationsSize, getAssociationsSize, getId, getPartitionId, isAssociatedWithgetMemoryIdprotected RuleImpl rule
protected GroupElement subrule
protected int subruleIndex
protected Declaration[] allDeclarations
protected Declaration[] requiredDeclarations
protected Declaration[] salienceDeclarations
protected Declaration[] enabledDeclarations
protected LeftTupleSinkNode previousTupleSinkNode
protected LeftTupleSinkNode nextTupleSinkNode
protected boolean fireDirect
protected transient ObjectTypeNode.Id leftInputOtnId
protected String consequenceName
public RuleTerminalNode()
public RuleTerminalNode(int id,
LeftTupleSource source,
RuleImpl rule,
GroupElement subrule,
int subruleIndex,
BuildContext context)
public void setDeclarations(Map<String,Declaration> decls)
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
readExternal in interface ExternalizablereadExternal in class AbstractTerminalNodeIOExceptionClassNotFoundExceptionpublic void writeExternal(ObjectOutput out) throws IOException
writeExternal in interface ExternalizablewriteExternal in class AbstractTerminalNodeIOExceptionpublic RuleImpl getRule()
Action associated with this node.getRule in interface TerminalNodegetRule in class AbstractTerminalNodeAction associated with this node.public GroupElement getSubRule()
public void doAttach(BuildContext context)
public Declaration[] getAllDeclarations()
public Declaration[] getRequiredDeclarations()
public Declaration[] getSalienceDeclarations()
public void setSalienceDeclarations(Declaration[] salienceDeclarations)
public Declaration[] getEnabledDeclarations()
public void setEnabledDeclarations(Declaration[] enabledDeclarations)
public String getConsequenceName()
public void cancelMatch(AgendaItem match, InternalWorkingMemoryActions workingMemory)
public LeftTupleSinkNode getNextLeftTupleSinkNode()
public void setNextLeftTupleSinkNode(LeftTupleSinkNode next)
next - The next TupleSinkNodepublic LeftTupleSinkNode getPreviousLeftTupleSinkNode()
public void setPreviousLeftTupleSinkNode(LeftTupleSinkNode previous)
previous - The previous TupleSinkNodepublic short getType()
public LeftTuple createLeftTuple(InternalFactHandle factHandle, LeftTuple leftTuple, Sink sink)
public LeftTuple createLeftTuple(InternalFactHandle factHandle, boolean leftTupleMemoryEnabled)
public LeftTuple createLeftTuple(LeftTuple leftTuple, Sink sink, PropagationContext pctx, boolean leftTupleMemoryEnabled)
public LeftTuple createLeftTuple(LeftTuple leftTuple, RightTuple rightTuple, Sink sink)
public LeftTuple createLeftTuple(LeftTuple leftTuple, RightTuple rightTuple, LeftTuple currentLeftChild, LeftTuple currentRightChild, Sink sink, boolean leftTupleMemoryEnabled)
public ObjectTypeNode.Id getLeftInputOtnId()
public void setLeftInputOtnId(ObjectTypeNode.Id leftInputOtnId)
public boolean isFireDirect()
public void setFireDirect(boolean fireDirect)
Copyright © 2001–2021 JBoss by Red Hat. All rights reserved.