public abstract class ObjectSource extends BaseNode implements Externalizable
FactHandle
s for an ObjectSink
.
Nodes that propagate FactHandleImpl
extend this class.
ObjectSource
,
DefaultFactHandle
,
Serialized FormModifier and Type | Field and Description |
---|---|
protected int |
alphaNodeHashingThreshold |
protected BitMask |
declaredMask |
protected BitMask |
inferredMask |
protected ObjectSinkPropagator |
sink
The destination for
FactHandleImpl . |
protected ObjectSource |
source |
associations, hashcode, id, memoryId, partitionId, partitionsEnabled
Constructor and Description |
---|
ObjectSource() |
Modifier and Type | Method and Description |
---|---|
void |
addObjectSink(ObjectSink objectSink)
Adds the
ObjectSink so that it may receive
FactHandleImpl propagated from this
ObjectSource . |
abstract BitMask |
calculateDeclaredMask(Class modifiedClass,
List<String> settableProperties) |
protected boolean |
doRemove(RuleRemovalContext context,
ReteooBuilder builder)
Removes the node from the network.
|
BitMask |
getDeclaredMask() |
InternalKnowledgeBase |
getKnowledgeBase() |
ObjectSinkPropagator |
getObjectSinkPropagator() |
ObjectTypeNode |
getObjectTypeNode() |
ObjectSource |
getParentObjectSource() |
void |
initDeclaredMask(BuildContext context) |
boolean |
isInUse()
Returns true in case the current node is in use (is referenced by any other node)
|
void |
networkUpdated(UpdateContext updateContext)
A method that is called for all nodes whose network below them
changed, after the change is complete, providing them with an opportunity
for state update
|
void |
readExternal(ObjectInput in) |
void |
removeObjectSink(ObjectSink objectSink)
Removes the
ObjectSink |
void |
resetInferredMask() |
void |
setObjectSinkPropagator(ObjectSinkPropagator sink) |
void |
setParentObjectSource(ObjectSource source) |
void |
setPartitionId(BuildContext context,
RuleBasePartitionId partitionId)
Sets the partition this node belongs to
|
void |
setPartitionIdWithSinks(RuleBasePartitionId partitionId) |
RuleBasePartitionId |
setSourcePartitionId(RuleBasePartitionId partitionId) |
BitMask |
updateMask(BitMask mask) |
abstract void |
updateSink(ObjectSink sink,
PropagationContext context,
InternalWorkingMemory workingMemory) |
void |
writeExternal(ObjectOutput out) |
addAssociation, addAssociation, attach, getAssociatedRules, getAssociatedRuleSize, getAssociationsSize, getAssociationsSize, getId, getMemoryId, getPartitionId, getSinks, hashCode, initMemoryId, isAssociatedWith, isStreamMode, remove, removeAssociation, setId, setPartitionsEnabled, setStreamMode, toString
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait
getType
protected ObjectSinkPropagator sink
FactHandleImpl
.protected ObjectSource source
protected int alphaNodeHashingThreshold
protected BitMask declaredMask
protected BitMask inferredMask
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
readExternal
in interface Externalizable
readExternal
in class BaseNode
IOException
ClassNotFoundException
public void writeExternal(ObjectOutput out) throws IOException
writeExternal
in interface Externalizable
writeExternal
in class BaseNode
IOException
public ObjectSource getParentObjectSource()
public void setParentObjectSource(ObjectSource source)
public InternalKnowledgeBase getKnowledgeBase()
public void initDeclaredMask(BuildContext context)
public abstract BitMask calculateDeclaredMask(Class modifiedClass, List<String> settableProperties)
public void resetInferredMask()
public void setPartitionId(BuildContext context, RuleBasePartitionId partitionId)
BaseNode
setPartitionId
in class BaseNode
public final RuleBasePartitionId setSourcePartitionId(RuleBasePartitionId partitionId)
public final void setPartitionIdWithSinks(RuleBasePartitionId partitionId)
public void addObjectSink(ObjectSink objectSink)
ObjectSink
so that it may receive
FactHandleImpl
propagated from this
ObjectSource
.objectSink
- The ObjectSink
to receive propagated
FactHandleImpl
.public void removeObjectSink(ObjectSink objectSink)
ObjectSink
objectSink
- The ObjectSink
to removepublic abstract void updateSink(ObjectSink sink, PropagationContext context, InternalWorkingMemory workingMemory)
public void networkUpdated(UpdateContext updateContext)
BaseNode
networkUpdated
in class BaseNode
public ObjectSinkPropagator getObjectSinkPropagator()
public void setObjectSinkPropagator(ObjectSinkPropagator sink)
public boolean isInUse()
BaseNode
protected boolean doRemove(RuleRemovalContext context, ReteooBuilder builder)
BaseNode
ObjectSource
or TupleSource
public ObjectTypeNode getObjectTypeNode()
getObjectTypeNode
in class BaseNode
public BitMask getDeclaredMask()
Copyright © 2001–2019 JBoss by Red Hat. All rights reserved.