public class PropagationQueuingNode extends ObjectSource implements ObjectSinkNode, MemoryFactory<PropagationQueuingNode.PropagationQueueingNodeMemory>
Modifier and Type | Class and Description |
---|---|
static class |
PropagationQueuingNode.PropagateAction
This is the action that is added to the working memory actions queue, so that
this node propagation can be triggered at a safe point
|
static class |
PropagationQueuingNode.PropagationQueueingNodeMemory
Memory implementation for the node
|
alphaNodeHashingThreshold, declaredMask, inferredMask, sink, source
associations, hashcode, id, memoryId, partitionId, partitionsEnabled
Constructor and Description |
---|
PropagationQueuingNode() |
PropagationQueuingNode(int id,
ObjectSource objectSource,
BuildContext context)
Construct a
PropagationQueuingNode that will queue up
propagations until it the engine reaches a safe propagation point,
when all the queued facts are propagated. |
addObjectSink, doRemove, getDeclaredMask, getKnowledgeBase, getObjectSinkPropagator, getObjectTypeNode, getParentObjectSource, initDeclaredMask, isInUse, networkUpdated, removeObjectSink, resetInferredMask, setObjectSinkPropagator, setParentObjectSource, setPartitionId, setPartitionIdWithSinks, setSourcePartitionId, updateMask
addAssociation, addAssociation, getAssociatedRules, getAssociatedRuleSize, getAssociationsSize, getAssociationsSize, getId, getMemoryId, getPartitionId, getSinks, hashCode, initMemoryId, isAssociatedWith, isStreamMode, remove, removeAssociation, setId, setPartitionsEnabled, setStreamMode, thisNodeEquals, toString
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
setPartitionIdWithSinks
getAssociatedRuleSize, getAssociationsSize, getAssociationsSize, getId, getPartitionId, isAssociatedWith, thisNodeEquals
getMemoryId
public PropagationQueuingNode()
public PropagationQueuingNode(int id, ObjectSource objectSource, BuildContext context)
PropagationQueuingNode
that will queue up
propagations until it the engine reaches a safe propagation point,
when all the queued facts are propagated.public BitMask calculateDeclaredMask(List<String> settableProperties)
calculateDeclaredMask
in class ObjectSource
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
readExternal
in interface Externalizable
readExternal
in class ObjectSource
IOException
ClassNotFoundException
public void writeExternal(ObjectOutput out) throws IOException
writeExternal
in interface Externalizable
writeExternal
in class ObjectSource
IOException
public short getType()
getType
in interface NetworkNode
public void updateSink(ObjectSink sink, PropagationContext context, InternalWorkingMemory workingMemory)
updateSink
in class ObjectSource
public void attach(BuildContext context)
BaseNode
ObjectSource
or TupleSource
public ObjectSinkNode getNextObjectSinkNode()
ObjectSinkNode
getNextObjectSinkNode
in interface ObjectSinkNode
public ObjectSinkNode getPreviousObjectSinkNode()
ObjectSinkNode
getPreviousObjectSinkNode
in interface ObjectSinkNode
public void setNextObjectSinkNode(ObjectSinkNode next)
ObjectSinkNode
setNextObjectSinkNode
in interface ObjectSinkNode
next
- The next LinkedListNodepublic void setPreviousObjectSinkNode(ObjectSinkNode previous)
ObjectSinkNode
setPreviousObjectSinkNode
in interface ObjectSinkNode
previous
- The previous LinkedListNodepublic boolean isObjectMemoryEnabled()
public void assertObject(InternalFactHandle factHandle, PropagationContext context, InternalWorkingMemory workingMemory)
assertObject
in interface ObjectSink
public void retractObject(InternalFactHandle handle, PropagationContext context, InternalWorkingMemory workingMemory)
public void modifyObject(InternalFactHandle factHandle, ModifyPreviousTuples modifyPreviousTuples, PropagationContext context, InternalWorkingMemory workingMemory)
modifyObject
in interface ObjectSink
public void byPassModifyToBetaNode(InternalFactHandle factHandle, ModifyPreviousTuples modifyPreviousTuples, PropagationContext context, InternalWorkingMemory workingMemory)
byPassModifyToBetaNode
in interface ObjectSink
public void propagateActions(InternalWorkingMemory workingMemory)
public void setObjectMemoryEnabled(boolean objectMemoryOn)
public PropagationQueuingNode.PropagationQueueingNodeMemory createMemory(RuleBaseConfiguration config, InternalWorkingMemory wm)
createMemory
in interface MemoryFactory<PropagationQueuingNode.PropagationQueueingNodeMemory>
public int calculateHashCode()
protected boolean internalEquals(Object object)
internalEquals
in class BaseNode
Copyright © 2001–2018 JBoss by Red Hat. All rights reserved.