FTNodeImpl
Abstract
Implementation of the protocol
Discussion
At present the handling of relations from one node
to another is kept simple: Each node contains the underlying references
to nodes to which it links (outgoing nodes) and which point to
it (incoming nodes). This (internal) representation may change in
future since it may not be efficient enough wrt. to searching paths
Methods
- -addIncomingReferenceFromNodeId:withEdgeId:
- add a reference to the specified node
- -addOutgoingReferenceToNodeId((id ), (id ), (id ), (id ), (id ), (id ), (NSCoder *), (id ), (FTNodeImpl *), (id ), (FTNodeImpl *), (id ), (id ), (id ), (FTNodeImpl *), (id ), (NSString *), (BOOL))
- add a reference to the specified node
- -addOutgoingReferenceToNodeId((id ), (id ), (id ), (id ), (NSCoder *), (id ), (FTNodeImpl *), (id ), (FTNodeImpl *), (id ), (id ), (id ), (FTNodeImpl *), (id ), (NSString *), (BOOL))
- add a reference to the specified node
- -addOutgoingReferenceToNodeId:withEdgeId:
- add a reference to the specified node
- -countIncomingReferences
- -countOutgoingReferences
- -createAndAppendEdgeWithId
- creates an edge which refers to the given node
- -createAndAppendEdgeWithId:withTargetNode:
- creates an edge which refers to the given node
- -description
- -encodeWithCoder:
- Is being called in order to serialize this instance
- -incomingEdges
- Get all edges pointing to self
- -incomingNodes
- access to all nodes refering the receiver of this message
- -init
- -initWithCode
- initializer called by deserialization process
- -initWithCoder:
- initializer called by deserialization process
- -initWithNodeId
- initializes this instance
- -initWithNodeId:forGraph:
- initializes this instance
- -internalStateChanged
- Informs graph instance to update the persistent data
representing this node
- -nodeId
- -outgoingEdges
- Get all outgoing edges
- -outgoingNodes
- access to all nodes referred by the receiver of this message
- -referencesToNodeIterator:
- returns an iterator over all targets nodes of the references
which are contained in the given reference set
- -removeAllOutgoingNodesWithId:
- removes all outgoing nodes with the specified id
- -removeFromReferenceSet
- removes the specified reference from the set
- -removeFromReferenceSet:node:withEdgeId:
- removes the specified reference from the set
- -removeIncomingReferencePointingFrom
- removes the specified reference from the set of incoming
references
- -removeIncomingReferencePointingFrom:withEdgeId:((FTNodeImpl *), (id ), (FTNodeImpl *), (id ), (id ), (id ), (FTNodeImpl *), (id ), (NSString *), (BOOL))
- removes the specified reference from the set of incoming
references
- -removeIncomingReferencePointingFrom:withEdgeId:((FTNodeImpl *), (id ), (id ), (id ), (FTNodeImpl *), (id ), (NSString *), (BOOL))
- removes the specified reference from the set of outgoing
references
- -removeOutgoingNodeWithId
- removes all outgoing nodes with the specified id
- -removeOutgoingReferencePointingTo
- removes the specified reference from the set of outgoing
references
- -serviceWithId:
- retrieve the specified service
- -writeLock:
- Set / unset write lock
add a reference to the specified node
See Also:
- addOutgoingReferenceToNodeId
- addIncomingReferenceFromNodeId: (id <FTId>) aSourceNodeId withEdgeId: (id <FTId>) anEdgeId;
Parameter Descriptions
aSourceNodeId
- id of source node
anEdgeId
- id of underlying edge
add a reference to the specified node
See Also:
- addIncomingReferenceFromNodeId:withEdgeId:
- addIncomingReferenceFromNodeId: (id <FTId>) aSourceNodeId withEdgeId: (id <FTId>) anEdgeId;
Parameter Descriptions
aSourceNodeId
- id of source node
anEdgeId
- id of underlying edge
- method result
- self
add a reference to the specified node
See Also:
- addOutgoingReferenceToNodeId:withEdgeId:
- addOutgoingReferenceToNodeId: (id <FTId>) aTargetNodeId withEdgeId: (id <FTId>) anEdgeId;
Parameter Descriptions
aTargetNodeId
- id of target node
anEdgeId
- id of underlying edge
- method result
- self
add a reference to the specified node
See Also:
- addOutgoingReferenceToNodeId
- addOutgoingReferenceToNodeId: (id <FTId>) aTargetNodeId withEdgeId: (id <FTId>) anEdgeId;
Parameter Descriptions
aTargetNodeId
- id of target node
anEdgeId
- id of underlying edge
- (unsigned) countIncomingReferences;
- method result
- returns the number of incoming edges
- (unsigned) countOutgoingReferences;
- method result
- returns the number of outgoing edges
creates an edge which refers to the given node
See Also:
- createAndAppendEdgeWithId:withTargetNode:
- (id <FTEdge>) createAndAppendEdgeWithId: (id <FTId>) edgeId withTargetNode: (id <FTNode>) targetNode;
Parameter Descriptions
edgeId
- id of the edge
targetNode
- node to which the edge refers
- method result
- created edge instance
creates an edge which refers to the given node
See Also:
- createAndAppendEdgeWithId
- (id <FTEdge>) createAndAppendEdgeWithId: (id <FTId>) edgeId withTargetNode: (id <FTNode>) targetNode;
Parameter Descriptions
edgeId
- id of the edge
targetNode
- node to which the edge refers
- (NSString *) description;
- method result
- information about the state of this object
Is being called in order to serialize this instance
- (void) encodeWithCoder: (NSCoder *) encoder;
Parameter Descriptions
encoder
- object to be used for serialization
Get all edges pointing to self
- (id <ECIterator>) incomingEdges;
- method result
- iterator of instances of type FTEdge or an empty iterator
access to all nodes refering the receiver of this message
- (id <ECIterator>) incomingNodes;
- method result
- iterator over instances which implement the protocol FTNode
- init;
- method result
- self
initializer called by deserialization process
See Also:
- initWithCoder:
- (id) initWithCoder:(NSCoder *) decoder;
Parameter Descriptions
decoder
- to use
- method result
- self
initializer called by deserialization process
See Also:
- initWithCode
- (id) initWithCoder:(NSCoder *) decoder;
Parameter Descriptions
decoder
- to use
initializes this instance
See Also:
- initWithNodeId:forGraph:
- initWithNodeId: (id <FTId>) anId forGraph: (FTGraphImpl *) aGraph;
Parameter Descriptions
anId
- id for this node
aGraph
- graph to which this node belongs to
- method result
- self
initializes this instance
See Also:
- initWithNodeId
- initWithNodeId: (id <FTId>) anId forGraph: (FTGraphImpl *) aGraph;
Parameter Descriptions
anId
- id for this node
aGraph
- graph to which this node belongs to
Informs graph instance to update the persistent data
representing this node
- internalStateChanged;
- method result
- self
- (id <FTId>) nodeId;
- method result
- return the id of this node.
Get all outgoing edges
- (id <ECIterator>) outgoingEdges;
- method result
- iterator of instances of type FTEdge or an empty iterator
access to all nodes referred by the receiver of this message
- (id <ECIterator>) outgoingNodes;
- method result
- iterator over instances which implement the protocol FTNode
returns an iterator over all targets nodes of the references
which are contained in the given reference set
- (id <ECIterator>) referencesToNodeIterator: (id <FTOrderedReferenceSet>) references;
Parameter Descriptions
references
- containing all references to examine
- method result
- iterator over all targets nodes of the references
removes all outgoing nodes with the specified id
See Also:
- removeOutgoingNodeWithId
- removeAllOutgoingNodesWithId: (id <FTId>) aNodeId;
Parameter Descriptions
nodeId
- identifier for the node
removes the specified reference from the set
See Also:
- removeFromReferenceSet:node:withEdgeId:
- removeFromReferenceSet: (id <FTOrderedReferenceSet>) references node: (FTNodeImpl *) aNode withEdgeId: (id <FTId>) anEdgeId;
Parameter Descriptions
references
- set to be modified
aNode
- node of the reference to be removed
anEdgeId
- edgeId of the reference to be removed
- method result
- self
removes the specified reference from the set
See Also:
- removeFromReferenceSet
- removeFromReferenceSet: (id <FTOrderedReferenceSet>) references node: (FTNodeImpl *) aNode withEdgeId: (id <FTId>) anEdgeId;
Parameter Descriptions
references
- set to be modified
aNode
- node of the reference to be removed
anEdgeId
- edgeId of the reference to be removed
removes the specified reference from the set of incoming
references
See Also:
- removeIncomingReferencePointingFrom:withEdgeId:
- removeIncomingReferencePointingFrom: (FTNodeImpl *) sourceNode withEdgeId: (id <FTId>) edgeId;
Parameter Descriptions
sourceNode
- node pointing to the receiver
edgeId
- id for the underlying edge
- method result
- self
removes the specified reference from the set of incoming
references
See Also:
- removeIncomingReferencePointingFrom
- removeIncomingReferencePointingFrom: (FTNodeImpl *) sourceNode withEdgeId: (id <FTId>) edgeId;
Parameter Descriptions
sourceNode
- node pointing to the receiver
edgeId
- id for the underlying edge
removes the specified reference from the set of outgoing
references
See Also:
- removeOutgoingReferencePointingTo
- removeIncomingReferencePointingFrom: (FTNodeImpl *) targetNode withEdgeId: (id <FTId>) edgeId;
Parameter Descriptions
targetNode
- node pointing the receiver is pointing to
edgeId
- id for the underlying edge
removes all outgoing nodes with the specified id
See Also:
- removeAllOutgoingNodesWithId:
- removeAllOutgoingNodesWithId: (id <FTId>) aNodeId;
Parameter Descriptions
nodeId
- identifier for the node
- method result
- self
removes the specified reference from the set of outgoing
references
See Also:
- removeIncomingReferencePointingFrom:withEdgeId:
- removeIncomingReferencePointingFrom: (FTNodeImpl *) targetNode withEdgeId: (id <FTId>) edgeId;
Parameter Descriptions
targetNode
- node pointing the receiver is pointing to
edgeId
- id for the underlying edge
- method result
- self
retrieve the specified service
- (id <FTService>) serviceWithId: (NSString *) aServiceId;
Parameter Descriptions
aServiceId
- identifier for the service
- method result
- related service or nil, if not found or version cannot be found
Set / unset write lock
- writeLock: (BOOL) enable;
Parameter Descriptions
enable
- YES enables the lock
- method result
- self
(Last Updated August 27, 2006)