Package org.drools.core.reteoo
Class CompositeObjectSinkAdapter
- java.lang.Object
-
- org.drools.core.reteoo.CompositeObjectSinkAdapter
-
- All Implemented Interfaces:
Externalizable
,Serializable
,ObjectSinkPropagator
public class CompositeObjectSinkAdapter extends Object implements ObjectSinkPropagator
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
CompositeObjectSinkAdapter.FieldIndex
static class
CompositeObjectSinkAdapter.HashKey
-
Constructor Summary
Constructors Constructor Description CompositeObjectSinkAdapter()
CompositeObjectSinkAdapter(int alphaNodeHashingThreshold, int alphaNodeRangeIndexThreshold)
-
Method Summary
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.drools.core.reteoo.ObjectSinkPropagator
changeSinkPartition
-
-
-
-
Method Detail
-
readExternal
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
- Specified by:
readExternal
in interfaceExternalizable
- Throws:
IOException
ClassNotFoundException
-
writeExternal
public void writeExternal(ObjectOutput out) throws IOException
- Specified by:
writeExternal
in interfaceExternalizable
- Throws:
IOException
-
getOthers
public List<ObjectSinkNode> getOthers()
-
getHashedSinkMap
public Map<CompositeObjectSinkAdapter.HashKey,AlphaNode> getHashedSinkMap()
-
getRangeIndexMap
public Map<CompositeObjectSinkAdapter.FieldIndex,AlphaRangeIndex> getRangeIndexMap()
-
addObjectSink
public ObjectSinkPropagator addObjectSink(ObjectSink sink)
-
addObjectSink
public ObjectSinkPropagator addObjectSink(ObjectSink sink, int alphaNodeHashingThreshold, int alphaNodeRangeIndexThreshold)
- Specified by:
addObjectSink
in interfaceObjectSinkPropagator
-
removeObjectSink
public ObjectSinkPropagator removeObjectSink(ObjectSink sink)
- Specified by:
removeObjectSink
in interfaceObjectSinkPropagator
-
propagateAssertObject
public void propagateAssertObject(InternalFactHandle factHandle, PropagationContext context, InternalWorkingMemory workingMemory)
- Specified by:
propagateAssertObject
in interfaceObjectSinkPropagator
-
propagateModifyObject
public void propagateModifyObject(InternalFactHandle factHandle, ModifyPreviousTuples modifyPreviousTuples, PropagationContext context, InternalWorkingMemory workingMemory)
- Specified by:
propagateModifyObject
in interfaceObjectSinkPropagator
-
byPassModifyToBetaNode
public void byPassModifyToBetaNode(InternalFactHandle factHandle, ModifyPreviousTuples modifyPreviousTuples, PropagationContext context, InternalWorkingMemory workingMemory)
- Specified by:
byPassModifyToBetaNode
in interfaceObjectSinkPropagator
-
doPropagateAssertObject
protected void doPropagateAssertObject(InternalFactHandle factHandle, PropagationContext context, InternalWorkingMemory workingMemory, ObjectSink sink)
This is a Hook method for subclasses to override. Please keep it protected unless you know what you are doing.
-
doPropagateModifyObject
protected void doPropagateModifyObject(InternalFactHandle factHandle, ModifyPreviousTuples modifyPreviousTuples, PropagationContext context, InternalWorkingMemory workingMemory, ObjectSink sink)
-
getMatchingNode
public BaseNode getMatchingNode(BaseNode candidate)
- Specified by:
getMatchingNode
in interfaceObjectSinkPropagator
-
reIndexNodes
public void reIndexNodes()
-
getSinks
public ObjectSink[] getSinks()
- Specified by:
getSinks
in interfaceObjectSinkPropagator
-
doLinkRiaNode
public void doLinkRiaNode(InternalWorkingMemory wm)
- Specified by:
doLinkRiaNode
in interfaceObjectSinkPropagator
-
doUnlinkRiaNode
public void doUnlinkRiaNode(InternalWorkingMemory wm)
- Specified by:
doUnlinkRiaNode
in interfaceObjectSinkPropagator
-
size
public int size()
- Specified by:
size
in interfaceObjectSinkPropagator
-
isEmpty
public boolean isEmpty()
- Specified by:
isEmpty
in interfaceObjectSinkPropagator
-
getOtherSinks
public List getOtherSinks()
-
getHashedFieldIndexes
public List<CompositeObjectSinkAdapter.FieldIndex> getHashedFieldIndexes()
-
getRangeIndexedFieldIndexes
public List<CompositeObjectSinkAdapter.FieldIndex> getRangeIndexedFieldIndexes()
-
-