public class QueryElementNode extends LeftTupleSource implements LeftTupleSinkNode, MemoryFactory<QueryElementNode.QueryElementNodeMemory>
Modifier and Type | Class and Description |
---|---|
static class |
QueryElementNode.QueryElementNodeMemory |
static class |
QueryElementNode.UnificationNodeViewChangedEventListener |
Modifier and Type | Field and Description |
---|---|
protected boolean |
openQuery |
protected QueryElement |
queryElement |
leftInput, sink
associations, hashcode, id, partitionId, partitionsEnabled
Constructor and Description |
---|
QueryElementNode() |
QueryElementNode(int id,
LeftTupleSource tupleSource,
QueryElement queryElement,
boolean tupleMemoryEnabled,
boolean openQuery,
BuildContext context) |
addTupleSink, addTupleSink, addTupleSink, getLeftDeclaredMask, getLeftInferredMask, getLeftInputOtnId, getLeftNegativeMask, getObjectType, getPositionInPath, getSinkPropagator, initDeclaredMask, initInferredMask, initMasks, isInUse, removeTupleSink, setLeftInferredMask, setLeftInputOtnId, setLeftListenedProperties, setLeftTupleSource
addAssociation, addAssociation, getAssociatedRuleSize, getAssociationsSize, getAssociationsSize, getId, getPartitionId, hashCode, isAssociatedWith, isStreamMode, remove, removeAssociation, setId, setPartitionId, setStreamMode, thisNodeEquals
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
getLeftInferredMask, getLeftInputOtnId, setLeftInputOtnId
getPositionInPath, getSinkPropagator
getAssociatedRuleSize, getAssociationsSize, getAssociationsSize, getId, getPartitionId, isAssociatedWith, thisNodeEquals
getId
protected QueryElement queryElement
protected boolean openQuery
public QueryElementNode()
public QueryElementNode(int id, LeftTupleSource tupleSource, QueryElement queryElement, boolean tupleMemoryEnabled, boolean openQuery, BuildContext context)
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
readExternal
in interface Externalizable
readExternal
in class LeftTupleSource
IOException
ClassNotFoundException
public void writeExternal(ObjectOutput out) throws IOException
writeExternal
in interface Externalizable
writeExternal
in class LeftTupleSource
IOException
public void networkUpdated(UpdateContext updateContext)
BaseNode
networkUpdated
in class BaseNode
public short getType()
getType
in interface NetworkNode
getType
in class LeftTupleSource
public boolean isLeftTupleMemoryEnabled()
isLeftTupleMemoryEnabled
in interface LeftTupleSink
isLeftTupleMemoryEnabled
in class LeftTupleSource
public QueryElement getQueryElement()
public boolean isOpenQuery()
public InternalFactHandle createFactHandle(PropagationContext context, InternalWorkingMemory workingMemory, LeftTuple leftTuple)
public DroolsQuery createDroolsQuery(LeftTuple leftTuple, InternalFactHandle handle, StackEntry stackEntry, List<PathMemory> pmems, QueryElementNode.QueryElementNodeMemory qmem, LeftTupleSink sink, InternalWorkingMemory workingMemory)
public Object[] getActualArguments(LeftTuple leftTuple, InternalWorkingMemory workingMemory)
protected QueryElementNode.UnificationNodeViewChangedEventListener createCollector(LeftTuple leftTuple, int[] varIndexes, boolean tupleMemoryEnabled)
public LeftTupleSource getLeftTupleSource()
getLeftTupleSource
in interface LeftTupleNode
getLeftTupleSource
in class LeftTupleSource
public void setLeftTupleMemoryEnabled(boolean tupleMemoryEnabled)
setLeftTupleMemoryEnabled
in interface LeftTupleSink
public LeftTupleSinkNode getNextLeftTupleSinkNode()
getNextLeftTupleSinkNode
in interface LeftTupleSinkNode
public void setNextLeftTupleSinkNode(LeftTupleSinkNode next)
setNextLeftTupleSinkNode
in interface LeftTupleSinkNode
next
- The next TupleSinkNodepublic LeftTupleSinkNode getPreviousLeftTupleSinkNode()
getPreviousLeftTupleSinkNode
in interface LeftTupleSinkNode
public void setPreviousLeftTupleSinkNode(LeftTupleSinkNode previous)
setPreviousLeftTupleSinkNode
in interface LeftTupleSinkNode
previous
- The previous TupleSinkNodepublic LeftTuple createLeftTuple(InternalFactHandle factHandle, Sink sink, boolean leftTupleMemoryEnabled)
createLeftTuple
in interface LeftTupleSink
public LeftTuple createLeftTuple(InternalFactHandle factHandle, LeftTuple leftTuple, Sink sink)
createLeftTuple
in interface LeftTupleSink
public LeftTuple createLeftTuple(LeftTuple leftTuple, Sink sink, PropagationContext pctx, boolean leftTupleMemoryEnabled)
createLeftTuple
in interface LeftTupleSink
public LeftTuple createLeftTuple(LeftTuple leftTuple, RightTuple rightTuple, Sink sink)
createLeftTuple
in interface LeftTupleSink
public LeftTuple createLeftTuple(LeftTuple leftTuple, RightTuple rightTuple, LeftTuple currentLeftChild, LeftTuple currentRightChild, Sink sink, boolean leftTupleMemoryEnabled)
createLeftTuple
in interface LeftTupleSink
protected boolean internalEquals(Object object)
internalEquals
in class BaseNode
public QueryElementNode.QueryElementNodeMemory createMemory(RuleBaseConfiguration config, InternalWorkingMemory wm)
createMemory
in interface MemoryFactory<QueryElementNode.QueryElementNodeMemory>
protected ObjectTypeNode getObjectTypeNode()
getObjectTypeNode
in class LeftTupleSource
public LeftTuple createPeer(LeftTuple original)
createPeer
in interface LeftTupleSink
createPeer
in class LeftTupleSource
public void assertLeftTuple(LeftTuple leftTuple, PropagationContext context, InternalWorkingMemory workingMemory)
LeftTupleSink
ReteTuple
.assertLeftTuple
in interface LeftTupleSink
leftTuple
- The ReteTuple
to propagate.context
- The PropagationContext
of the WorkingMemory action
workingMemory
- the WorkingMemory
session.public void retractLeftTuple(LeftTuple leftTuple, PropagationContext context, InternalWorkingMemory workingMemory)
retractLeftTuple
in interface LeftTupleSink
public void modifyLeftTuple(InternalFactHandle factHandle, ModifyPreviousTuples modifyPreviousTuples, PropagationContext context, InternalWorkingMemory workingMemory)
modifyLeftTuple
in interface LeftTupleSink
public void updateSink(LeftTupleSink sink, PropagationContext context, InternalWorkingMemory workingMemory)
updateSink
in class LeftTupleSource
public void modifyLeftTuple(LeftTuple leftTuple, PropagationContext context, InternalWorkingMemory workingMemory)
modifyLeftTuple
in interface LeftTupleSink
public void attach(BuildContext context)
BaseNode
ObjectSource
or TupleSource
protected boolean doRemove(RuleRemovalContext context, ReteooBuilder builder, InternalWorkingMemory[] workingMemories)
BaseNode
ObjectSource
or TupleSource
Copyright © 2001–2017 JBoss by Red Hat. All rights reserved.