Interface INode
-
- All Superinterfaces:
java.lang.Cloneable
- All Known Subinterfaces:
IObjectConsumerNode
,IObjectSourceNode
,ITupleConsumerNode
,ITupleSourceNode
- All Known Implementing Classes:
AbstractBetaNode
,AbstractNode
,AlphaNode
,BetaNode
,CollectNode
,InitialFactNode
,LeftInputAdapterNode
,NotNode
,ReteNode
,RightInputAdapterNode
,SplitNode
,TerminalNode
,TestNode
,TypeNode
public interface INode extends java.lang.Cloneable
Basic interface for all nodes.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
checkNodeConsistency(ReteMemory mem)
Check the consistency of the node.java.lang.Object
clone()
Clone this object.java.lang.Object
createNodeMemory(IOAVState state)
Create the node memory.AttributeSet
getIndirectAttributes()
Get the set of indirect attribute types.int
getNodeId()
Get the nodeid.java.util.Collection
getNodeMemory(ReteMemory mem)
Get the memory for this node.AttributeSet
getRelevantAttributes()
Get the set of relevant attribute types.void
modifyIndirectObject(java.lang.Object object, OAVAttributeType type, java.lang.Object oldvalue, java.lang.Object newvalue, IOAVState state, ReteMemory mem, AbstractAgenda agenda)
Propagate an indirect object change to this node.
-
-
-
Method Detail
-
getNodeId
int getNodeId()
Get the nodeid.- Returns:
- The nodeid.
-
getRelevantAttributes
AttributeSet getRelevantAttributes()
Get the set of relevant attribute types.
-
getIndirectAttributes
AttributeSet getIndirectAttributes()
Get the set of indirect attribute types. I.e. attributes of objects, which are not part of an object conditions (e.g. for chained extractors)- Returns:
- The relevant attribute types.
-
createNodeMemory
java.lang.Object createNodeMemory(IOAVState state)
Create the node memory.- Parameters:
state
- The state.- Returns:
- The node memory.
-
getNodeMemory
java.util.Collection getNodeMemory(ReteMemory mem)
Get the memory for this node.- Returns:
- The memory.
-
modifyIndirectObject
void modifyIndirectObject(java.lang.Object object, OAVAttributeType type, java.lang.Object oldvalue, java.lang.Object newvalue, IOAVState state, ReteMemory mem, AbstractAgenda agenda)
Propagate an indirect object change to this node.- Parameters:
object
- The changed object.
-
clone
java.lang.Object clone()
Clone this object.- Returns:
- A clone of this object.
-
checkNodeConsistency
boolean checkNodeConsistency(ReteMemory mem)
Check the consistency of the node.
-
-