Package org.drools.core.reteoo
Class SegmentMemory
- java.lang.Object
-
- org.drools.core.util.LinkedList<SegmentMemory>
-
- org.drools.core.reteoo.SegmentMemory
-
- All Implemented Interfaces:
Externalizable,Serializable,Entry<SegmentMemory>,LinkedListNode<SegmentMemory>
public class SegmentMemory extends LinkedList<SegmentMemory> implements LinkedListNode<SegmentMemory>
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classSegmentMemory.AccumulateMemoryPrototypestatic classSegmentMemory.BetaMemoryPrototypestatic classSegmentMemory.LiaMemoryPrototypestatic classSegmentMemory.MemoryPrototypestatic classSegmentMemory.Prototypestatic classSegmentMemory.QueryMemoryPrototypestatic classSegmentMemory.ReactiveFromMemoryPrototypestatic classSegmentMemory.TimerMemoryPrototype-
Nested classes/interfaces inherited from class org.drools.core.util.LinkedList
LinkedList.JavaUtilIterator<T extends LinkedListNode<T>>, LinkedList.LinkedListFastIterator, LinkedList.LinkedListIterator<T extends LinkedListNode<T>>
-
-
Field Summary
Fields Modifier and Type Field Description protected static booleanIS_LOG_TRACE_ENABLEDprotected static org.slf4j.Loggerlog-
Fields inherited from class org.drools.core.util.LinkedList
fastIterator
-
-
Constructor Summary
Constructors Constructor Description SegmentMemory()SegmentMemory(LeftTupleNode rootNode)
-
Method Summary
-
Methods inherited from class org.drools.core.util.LinkedList
addFirst, addLast, clear, contains, fastIterator, get, getFirst, getLast, insertAfter, isEmpty, iterator, javaUtilIterator, readExternal, removeFirst, removeLast, size, writeExternal
-
-
-
-
Constructor Detail
-
SegmentMemory
public SegmentMemory()
-
SegmentMemory
public SegmentMemory(LeftTupleNode rootNode)
-
-
Method Detail
-
getRootNode
public LeftTupleNode getRootNode()
-
getTipNode
public LeftTupleNode getTipNode()
-
setTipNode
public void setTipNode(LeftTupleNode tipNode)
-
getSinkFactory
public LeftTupleSink getSinkFactory()
-
createNodeMemory
public <T extends Memory> T createNodeMemory(MemoryFactory<T> memoryFactory, ReteEvaluator reteEvaluator)
-
getNodeMemories
public LinkedList<Memory> getNodeMemories()
-
getLinkedNodeMask
public long getLinkedNodeMask()
-
setLinkedNodeMask
public void setLinkedNodeMask(long linkedNodeMask)
-
getDirtyNodeMask
public long getDirtyNodeMask()
-
resetDirtyNodeMask
public void resetDirtyNodeMask()
-
updateDirtyNodeMask
public void updateDirtyNodeMask(long mask)
-
updateCleanNodeMask
public void updateCleanNodeMask(long mask)
-
getRuleNames
public String getRuleNames()
-
linkNode
public boolean linkNode(long mask, ReteEvaluator reteEvaluator)
-
linkNodeWithoutRuleNotify
public boolean linkNodeWithoutRuleNotify(long mask)
-
linkSegmentWithoutRuleNotify
public boolean linkSegmentWithoutRuleNotify(long mask)
-
notifyRuleLinkSegment
public boolean notifyRuleLinkSegment(ReteEvaluator reteEvaluator, long mask)
-
notifyRuleLinkSegment
public boolean notifyRuleLinkSegment(ReteEvaluator reteEvaluator)
-
notifyRuleLinkSegment
public void notifyRuleLinkSegment(ReteEvaluator reteEvaluator, PathMemory pmem)
-
unlinkNode
public boolean unlinkNode(long mask, ReteEvaluator reteEvaluator)
-
unlinkSegment
public void unlinkSegment(ReteEvaluator reteEvaluator)
-
unlinkNodeWithoutRuleNotify
public void unlinkNodeWithoutRuleNotify(long mask)
-
getAllLinkedMaskTest
public long getAllLinkedMaskTest()
-
setAllLinkedMaskTest
public void setAllLinkedMaskTest(long allLinkedTestMask)
-
isSegmentLinked
public boolean isSegmentLinked()
-
getPathMemories
public List<PathMemory> getPathMemories()
-
addPathMemory
public void addPathMemory(PathMemory pathMemory)
-
mergePathMemories
public void mergePathMemories(SegmentMemory segmentMemory)
-
removePathMemory
public void removePathMemory(PathMemory pathMemory)
-
getFirstDataDrivenPathMemory
public PathMemory getFirstDataDrivenPathMemory()
-
hasDataDrivenPathMemories
public boolean hasDataDrivenPathMemories()
-
getDataDrivenPathMemories
public List<PathMemory> getDataDrivenPathMemories()
-
getSegmentPosMaskBit
public long getSegmentPosMaskBit()
-
setSegmentPosMaskBit
public void setSegmentPosMaskBit(long nodeSegmenMask)
-
isActive
public boolean isActive()
-
setActive
public void setActive(boolean evaluating)
-
getPos
public int getPos()
-
setPos
public void setPos(int pos)
-
add
public void add(SegmentMemory segmentMemory)
Description copied from class:LinkedListAdd aLinkedListNodeto the list. If theLinkedListis empty then the first and last nodes are set to the added node.- Overrides:
addin classLinkedList<SegmentMemory>- Parameters:
segmentMemory- TheLinkedListNodeto be added
-
remove
public void remove(SegmentMemory segmentMemory)
Description copied from class:LinkedListRemoves aLinkedListNodefrom the list. This works by attach the previous reference to the child reference. When the node to be removed is the first node it callsremoveFirst(). When the node to be removed is the last node it callsremoveLast().- Overrides:
removein classLinkedList<SegmentMemory>- Parameters:
segmentMemory- TheLinkedListNodeto be removed.
-
getPeersWithDataDrivenPathMemoriesIterator
public Iterator<SegmentMemory> getPeersWithDataDrivenPathMemoriesIterator()
-
getNext
public SegmentMemory getNext()
- Specified by:
getNextin interfaceEntry<SegmentMemory>
-
setNext
public void setNext(SegmentMemory next)
- Specified by:
setNextin interfaceEntry<SegmentMemory>
-
getPrevious
public SegmentMemory getPrevious()
Description copied from interface:LinkedListNodeReturns the previous node- Specified by:
getPreviousin interfaceLinkedListNode<SegmentMemory>- Returns:
- The previous LinkedListNode
-
setPrevious
public void setPrevious(SegmentMemory previous)
Description copied from interface:LinkedListNodeSets the previous node- Specified by:
setPreviousin interfaceLinkedListNode<SegmentMemory>- Parameters:
previous- The previous LinkedListNode
-
nullPrevNext
public void nullPrevNext()
- Specified by:
nullPrevNextin interfaceLinkedListNode<SegmentMemory>
-
hashCode
public int hashCode()
- Overrides:
hashCodein classLinkedList<SegmentMemory>
-
equals
public boolean equals(Object obj)
- Overrides:
equalsin classLinkedList<SegmentMemory>
-
asPrototype
public SegmentMemory.Prototype asPrototype()
-
getNodesInSegment
public List<NetworkNode> getNodesInSegment()
-
reset
public void reset(SegmentMemory.Prototype prototype)
-
-