Package org.drools.core.reteoo
Class QueryElementNode
java.lang.Object
org.drools.core.common.BaseNode
org.drools.core.reteoo.LeftTupleSource
org.drools.core.reteoo.QueryElementNode
- All Implemented Interfaces:
Serializable,NetworkNode,MemoryFactory<QueryElementNode.QueryElementNodeMemory>,LeftTupleNode,LeftTupleSink,LeftTupleSinkNode,Sink
public class QueryElementNode
extends LeftTupleSource
implements LeftTupleSinkNode, MemoryFactory<QueryElementNode.QueryElementNodeMemory>
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classstatic class -
Field Summary
FieldsFields inherited from class org.drools.core.reteoo.LeftTupleSource
leftDeclaredMask, leftInferredMask, leftInput, leftNegativeMask, sinkFields inherited from class org.drools.core.common.BaseNode
associations, hashcode, id, memoryId, partitionId -
Constructor Summary
ConstructorsConstructorDescriptionQueryElementNode(int id, LeftTupleSource tupleSource, QueryElement queryElement, boolean tupleMemoryEnabled, boolean openQuery, BuildContext context) -
Method Summary
Modifier and TypeMethodDescriptioncreateCollector(TupleImpl leftTuple, int[] varIndexes, boolean tupleMemoryEnabled) createDroolsQuery(TupleImpl leftTuple, InternalFactHandle handle, StackEntry stackEntry, List<PathMemory> pmems, QueryElementNode.QueryElementNodeMemory qmem, LeftTupleSink sink, ReteEvaluator reteEvaluator) createFactHandle(PropagationContext context, ReteEvaluator reteEvaluator, TupleImpl leftTuple) createMemory(RuleBaseConfiguration config, ReteEvaluator reteEvaluator) voiddoAttach(BuildContext context) protected booleandoRemove(RuleRemovalContext context, ReteooBuilder builder) Removes the node from the network.booleanObject[]getActualArguments(TupleImpl leftTuple, ReteEvaluator reteEvaluator) Returns the next nodeReturns the previous nodeintgetType()booleanbooleanvoidnetworkUpdated(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 updatevoidSets the next nodevoidSets the previous nodetoString()Methods inherited from class org.drools.core.reteoo.LeftTupleSource
addTupleSink, addTupleSink, addTupleSink, getFirstLeftTupleSinkIgnoreRemoving, getLeftDeclaredMask, getLeftInferredMask, getLeftInputOtnId, getLeftInputPattern, getLeftNegativeMask, getLeftTupleSource, getObjectCount, getObjectType, getObjectTypeForPropertyReactivity, getPathIndex, getSinkPropagator, initDeclaredMask, initInferredMask, initMasks, isInUse, removeTupleSink, setLeftInferredMask, setLeftInputOtnId, setLeftListenedProperties, setLeftTupleSource, setNodeConstraintsPropertyReactiveMask, setObjectCount, setPartitionIdWithSinks, setSourcePartitionId, setSourcePartitionIdMethods inherited from class org.drools.core.common.BaseNode
addAssociatedTerminal, addAssociation, addAssociation, attach, getAssociatedRules, getAssociatedTerminalsSize, getAssociationsSize, getId, getMemoryId, getPartitionId, getSinks, hasAssociatedTerminal, hashCode, initMemoryId, isAssociatedWith, isStreamMode, remove, removeAssociatedTerminal, removeAssociation, setId, setPartitionId, setStreamModeMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.drools.core.reteoo.LeftTupleNode
getLeftTupleSource, getObjectCount, getPathIndex, getSinkPropagator, setObjectCountMethods inherited from interface org.drools.core.reteoo.LeftTupleSink
getLeftInferredMask, getLeftInputOtnId, setLeftInputOtnId, setPartitionIdWithSinksMethods inherited from interface org.drools.core.common.MemoryFactory
getMemoryIdMethods inherited from interface org.drools.base.common.NetworkNode
addAssociatedTerminal, getAssociatedRules, getAssociatedTerminalsSize, getId, getPartitionId, getSinks, hasAssociatedTerminal, isAssociatedWith, isRightInputIsRiaNode, removeAssociatedTerminal
-
Field Details
-
queryElement
-
openQuery
protected boolean openQuery
-
-
Constructor Details
-
QueryElementNode
public QueryElementNode() -
QueryElementNode
public QueryElementNode(int id, LeftTupleSource tupleSource, QueryElement queryElement, boolean tupleMemoryEnabled, boolean openQuery, BuildContext context)
-
-
Method Details
-
networkUpdated
Description copied from class:BaseNodeA 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- Specified by:
networkUpdatedin classBaseNode
-
getType
public int getType()- Specified by:
getTypein interfaceNetworkNode- Specified by:
getTypein classLeftTupleSource
-
isLeftTupleMemoryEnabled
public boolean isLeftTupleMemoryEnabled()- Specified by:
isLeftTupleMemoryEnabledin interfaceLeftTupleSink- Specified by:
isLeftTupleMemoryEnabledin classLeftTupleSource
-
getQueryElement
-
isOpenQuery
public boolean isOpenQuery() -
createFactHandle
public InternalFactHandle createFactHandle(PropagationContext context, ReteEvaluator reteEvaluator, TupleImpl leftTuple) -
createDroolsQuery
public DroolsQueryImpl createDroolsQuery(TupleImpl leftTuple, InternalFactHandle handle, StackEntry stackEntry, List<PathMemory> pmems, QueryElementNode.QueryElementNodeMemory qmem, LeftTupleSink sink, ReteEvaluator reteEvaluator) -
getActualArguments
-
createCollector
protected QueryElementNode.UnificationNodeViewChangedEventListener createCollector(TupleImpl leftTuple, int[] varIndexes, boolean tupleMemoryEnabled) -
getNextLeftTupleSinkNode
Returns the next node- Specified by:
getNextLeftTupleSinkNodein interfaceLeftTupleSinkNode- Returns:
- The next TupleSinkNode
-
setNextLeftTupleSinkNode
Sets the next node- Specified by:
setNextLeftTupleSinkNodein interfaceLeftTupleSinkNode- Parameters:
next- The next TupleSinkNode
-
getPreviousLeftTupleSinkNode
Returns the previous node- Specified by:
getPreviousLeftTupleSinkNodein interfaceLeftTupleSinkNode- Returns:
- The previous TupleSinkNode
-
setPreviousLeftTupleSinkNode
Sets the previous node- Specified by:
setPreviousLeftTupleSinkNodein interfaceLeftTupleSinkNode- Parameters:
previous- The previous TupleSinkNode
-
equals
-
createMemory
public QueryElementNode.QueryElementNodeMemory createMemory(RuleBaseConfiguration config, ReteEvaluator reteEvaluator) - Specified by:
createMemoryin interfaceMemoryFactory<QueryElementNode.QueryElementNodeMemory>
-
getObjectTypeNode
- Specified by:
getObjectTypeNodein classBaseNode
-
toString
-
doAttach
-
doRemove
Description copied from class:BaseNodeRemoves the node from the network. Usually from the parentObjectSourceorTupleSource
-