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 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 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)
-
forceFlushWhenRiaNode
public static void forceFlushWhenRiaNode(ReteEvaluator reteEvaluator, PathMemory pmem)
-
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)
-
-