Package org.drools.core.phreak
Class AddRemoveRule
- java.lang.Object
-
- org.drools.core.phreak.AddRemoveRule
-
public class AddRemoveRule extends Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classAddRemoveRule.AddExistingPathsstatic interfaceAddRemoveRule.ExistingPathStrategystatic classAddRemoveRule.Flushedstatic classAddRemoveRule.RemoveExistingPaths
-
Constructor Summary
Constructors Constructor Description AddRemoveRule()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static voidaddRule(TerminalNode tn, Collection<InternalWorkingMemory> wms, RuleBase kBase)This method is called after the rule nodes have been added to the network For add tuples are processed after the segments and pmems have been adjustedstatic voidcorrectSegmentMemoryAfterSplitOnAdd(SegmentMemory sm)static voidcorrectSegmentMemoryAfterSplitOnAdd(SegmentMemory sm, int i)static voidcorrectSegmentMemoryAfterSplitOnRemove(SegmentMemory sm, int i)static TupleSets<LeftTuple>createLeftTupleTupleSets(LeftTuple leftTuple, short stagedType)static List<PathMemory>findPathsToFlushFromRia(ReteEvaluator reteEvaluator, PathMemory pmem)static PathMemoryfindPathToFlush(SegmentMemory sm, LeftTuple leftTuple, boolean streamMode)static booleanflushLeftTupleIfNecessary(ReteEvaluator reteEvaluator, SegmentMemory sm, boolean streamMode)static booleanflushLeftTupleIfNecessary(ReteEvaluator reteEvaluator, SegmentMemory sm, LeftTuple leftTuple, boolean streamMode, short stagedType)static voidforceFlushLeftTuple(PathMemory pmem, SegmentMemory sm, ReteEvaluator reteEvaluator, TupleSets<LeftTuple> leftTupleSets)static voidforceFlushPath(ReteEvaluator reteEvaluator, PathMemory outPmem)static voidforceFlushWhenRiaNode(ReteEvaluator reteEvaluator, PathMemory pmem)static voidremoveRule(TerminalNode tn, Collection<InternalWorkingMemory> wms, RuleBase kBase)This method is called before the rule nodes are removed from the network.static SegmentMemorysplitSegment(InternalWorkingMemory wm, SegmentMemory sm1, LeftTupleNode splitNode)
-
-
-
Method Detail
-
addRule
public static void addRule(TerminalNode tn, Collection<InternalWorkingMemory> wms, RuleBase kBase)
This method is called after the rule nodes have been added to the network For add tuples are processed after the segments and pmems have been adjusted
-
removeRule
public static void removeRule(TerminalNode tn, Collection<InternalWorkingMemory> wms, RuleBase kBase)
This method is called before the rule nodes are removed from the network. For remove tuples are processed before the segments and pmems have been adjusted
-
flushLeftTupleIfNecessary
public static boolean flushLeftTupleIfNecessary(ReteEvaluator reteEvaluator, SegmentMemory sm, boolean streamMode)
-
flushLeftTupleIfNecessary
public static boolean flushLeftTupleIfNecessary(ReteEvaluator reteEvaluator, SegmentMemory sm, LeftTuple leftTuple, boolean streamMode, short stagedType)
-
findPathToFlush
public static PathMemory findPathToFlush(SegmentMemory sm, LeftTuple leftTuple, boolean streamMode)
-
createLeftTupleTupleSets
public static TupleSets<LeftTuple> createLeftTupleTupleSets(LeftTuple leftTuple, short stagedType)
-
forceFlushWhenRiaNode
public static void forceFlushWhenRiaNode(ReteEvaluator reteEvaluator, PathMemory pmem)
-
findPathsToFlushFromRia
public static List<PathMemory> findPathsToFlushFromRia(ReteEvaluator reteEvaluator, PathMemory pmem)
-
forceFlushPath
public static void forceFlushPath(ReteEvaluator reteEvaluator, PathMemory outPmem)
-
forceFlushLeftTuple
public static void forceFlushLeftTuple(PathMemory pmem, SegmentMemory sm, ReteEvaluator reteEvaluator, TupleSets<LeftTuple> leftTupleSets)
-
correctSegmentMemoryAfterSplitOnAdd
public static void correctSegmentMemoryAfterSplitOnAdd(SegmentMemory sm)
-
correctSegmentMemoryAfterSplitOnAdd
public static void correctSegmentMemoryAfterSplitOnAdd(SegmentMemory sm, int i)
-
correctSegmentMemoryAfterSplitOnRemove
public static void correctSegmentMemoryAfterSplitOnRemove(SegmentMemory sm, int i)
-
splitSegment
public static SegmentMemory splitSegment(InternalWorkingMemory wm, SegmentMemory sm1, LeftTupleNode splitNode)
-
-