|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Object
|
+--net.walend.digraph.path.AbstractListCEPath
|
+--net.walend.digraph.path.MutableListCEPath
This class implements the MutableCEPath interface using two lists.
| Nested Class Summary |
| Nested classes inherited from class net.walend.digraph.path.AbstractListCEPath |
AbstractListCEPath.ListEdgeIterator |
| Field Summary |
| Fields inherited from class net.walend.digraph.path.AbstractListCEPath |
|
| Fields inherited from interface net.walend.digraph.CEDigraph |
EMPTY |
| Constructor Summary | |
MutableListCEPath(CEDigraph digraph,
java.util.List nodeList,
java.util.List edgeList)
Creates a new path on digraph that has only node in it, using nodeListn and edgeList. |
|
MutableListCEPath(CEDigraph digraph,
java.lang.Object node)
Creates a new path on digraph that has only node in it with DEFAULTCAPACITY of 7. |
|
MutableListCEPath(CEDigraph digraph,
java.lang.Object node,
int nodeCapacity)
Creates a new path on digraph that has only node in it, with a capacity nodeCapacity. |
|
MutableListCEPath(CEDigraph digraph,
java.lang.Object node,
java.util.List nodeList,
java.util.List edgeList)
Creates a new path on digraph that has only node in it, using nodeListn and edgeList. |
|
MutableListCEPath(CEPath path)
Create a new path that is a copy of path. |
|
MutableListCEPath(CEPath path,
java.util.List nodeList,
java.util.List edgeList)
Create a new path that is a copy of path, using nodeList and edgeList. |
|
| Method Summary | |
void |
addToHead(java.lang.Object node,
java.lang.Object edge)
Adds a node and edge to the beginning of the path. |
void |
addToTail(java.lang.Object edge,
java.lang.Object node)
Adds an edge and node to the end of the path. |
void |
graftToHead(CEPath path)
Adds a path to the beginning of this path. |
void |
graftToTail(CEPath path)
Adds a path to the end of this path. |
CEPath |
pruneHead(int index)
Removes from the head to the edge at index. |
CEPath |
pruneHeadFromFirst(java.lang.Object node)
Removes from the head to the first occurance of node. |
CEPath |
pruneHeadFromLast(java.lang.Object node)
Removes from the head to the last occurance of node. |
CEPath |
pruneTail(int index)
Removes from the edge at index to the tail. |
CEPath |
pruneTailFromFirst(java.lang.Object node)
Removes from the first occurance of node to the tail. |
CEPath |
pruneTailFromLast(java.lang.Object node)
Removes from the last occurance of node to the tail. |
java.lang.Object |
removeHead()
Removes the head node from the path. |
java.lang.Object |
removeTail()
Removes the tail node from the path. |
CEPath |
splice(CEPath path,
int startNodeIndex,
int endNodeIndex)
Splices in path between the startNodeIndex and endNodeIndex. |
CEPath |
spliceFirst(CEPath path)
Splices in path between the first occurence of path's head and the first occurence of path's tail. |
CEPath |
spliceFirstToLast(CEPath path)
Splices in path between the first occurence of path's head and the last occurence of path's tail. |
CEPath |
spliceLast(CEPath path)
Splices in path between the last occurence of path's head and the last occurence of path's tail. |
CEPath |
spliceLastToFirst(CEPath path)
Splices in path between the last occurence of path's head and the first occurence of path's tail. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface net.walend.digraph.path.CEPath |
getEdgeAtIndex, getEdgeList, getIndexOfEdge, getLastIndexOfEdge, getSubpath, getSubpathFirst, getSubpathFirstToLast, getSubpathLast, getSubpathLastToFirst, getSupergraph, pathEdgeIterator, sameCEPathAs |
| Methods inherited from interface net.walend.digraph.CEDigraph |
containsCEDigraph, containsEdge, edgeIterator, getEdge, getEdges, getInboundEdges, getOutboundEdges, intersectWithCEDigraph, sameCEDigraphAs, unionCEDigraph |
| Methods inherited from interface net.walend.digraph.Digraph |
containsEdge, containsNode, containsNodes, countInboundEdges, countOutboundEdges, edgeCount, edgeNodeIterator, getFromNodes, getNodes, getToNodes, isEdgeFree, isEmpty, nodeCount, nodeIterator |
| Methods inherited from interface net.walend.collection.HasState |
getPrincipleInterface, sameStateAs |
| Methods inherited from interface net.walend.digraph.path.Path |
getHead, getIndexOfNode, getLastIndexOfNode, getNodeAtIndex, getNodeList, getTail, pathEdgeCount, pathEdgeNodeIterator, pathNodeCount, pathNodeIterator, valid |
| Constructor Detail |
public MutableListCEPath(CEPath path)
throws InvalidPathException
InvalidPathException - if the path is not valid.
public MutableListCEPath(CEPath path,
java.util.List nodeList,
java.util.List edgeList)
InvalidPathException - if the path is not valid.
public MutableListCEPath(CEDigraph digraph,
java.lang.Object node)
InvalidPathException - if the path is not valid (because the node isn't in the supergraph).
public MutableListCEPath(CEDigraph digraph,
java.lang.Object node,
int nodeCapacity)
InvalidPathException - if the path is not valid (because the node isn't in the supergraph).
public MutableListCEPath(CEDigraph digraph,
java.lang.Object node,
java.util.List nodeList,
java.util.List edgeList)
InvalidPathException - if the path is not valid (because the node isn't in the supergraph).
public MutableListCEPath(CEDigraph digraph,
java.util.List nodeList,
java.util.List edgeList)
InvalidPathException - if the path is not valid (because the node isn't in the supergraph).| Method Detail |
public void addToTail(java.lang.Object edge,
java.lang.Object node)
throws EdgeMissingException,
NodeMissingException
returns true if the operation is successful, false if the path is unchanged.
addToTail in interface MutableCEPathaddToTail in class AbstractListCEPathEdgeMissingException - if the edge is not in the digraph between the tail node and node.
NodeMissingException - if the node is not in the digraph.
public void addToHead(java.lang.Object node,
java.lang.Object edge)
throws EdgeMissingException,
NodeMissingException
returns true if the operation is successful, false if the path is unchanged.
addToHead in interface MutableCEPathaddToHead in class AbstractListCEPathEdgeMissingException - if the edge is not in the digraph between the tail node and node.
NodeMissingException - if the node is not in the digraph.
public java.lang.Object removeHead()
throws LastNodeException
returns the orphaned edge.
removeHead in interface MutableCEPathremoveHead in class AbstractListCEPathLastNodeException
public java.lang.Object removeTail()
throws LastNodeException
returns the orphaned edge.
removeTail in interface MutableCEPathremoveTail in class AbstractListCEPathLastNodeException
public void graftToTail(CEPath path)
throws EdgeMissingException,
NodeMissingException,
InvalidSpliceException
graftToTail in interface MutableCEPathgraftToTail in class AbstractListCEPathEdgeMissingException - if the any edge in path is missing from the digraph.
NodeMissingException - if any node in path not in the digraph.
InvalidSpliceException - if path's head node is not this' tail node.
public void graftToHead(CEPath path)
throws EdgeMissingException,
NodeMissingException,
InvalidSpliceException
graftToHead in interface MutableCEPathgraftToHead in class AbstractListCEPathEdgeMissingException - if the any edge in path is missing from the digraph.
NodeMissingException - if any node in path not in the digraph.
InvalidSpliceException - if path's tail node is not this' head node.public CEPath pruneTail(int index)
pruneTail in interface MutableCEPathpruneTail in class AbstractListCEPathpublic CEPath pruneHead(int index)
pruneHead in interface MutableCEPathpruneHead in class AbstractListCEPath
public CEPath pruneTailFromFirst(java.lang.Object node)
throws NodeMissingException
pruneTailFromFirst in interface MutableCEPathpruneTailFromFirst in class AbstractListCEPathNodeMissingException - if the node is not in the digraph.
public CEPath pruneTailFromLast(java.lang.Object node)
throws NodeMissingException
pruneTailFromLast in interface MutableCEPathpruneTailFromLast in class AbstractListCEPathNodeMissingException - if the node is not in the digraph.
public CEPath pruneHeadFromFirst(java.lang.Object node)
throws NodeMissingException
pruneHeadFromFirst in interface MutableCEPathpruneHeadFromFirst in class AbstractListCEPathNodeMissingException - if the node is not in the digraph.
public CEPath pruneHeadFromLast(java.lang.Object node)
throws NodeMissingException
pruneHeadFromLast in interface MutableCEPathpruneHeadFromLast in class AbstractListCEPathNodeMissingException - if the node is not in the digraph.
public CEPath splice(CEPath path,
int startNodeIndex,
int endNodeIndex)
throws EdgeMissingException,
NodeMissingException,
InvalidSpliceException
splice in interface MutableCEPathsplice in class AbstractListCEPath
EdgeMissingException - if the any edge in path is missing from the digraph.
NodeMissingException - if any node in path not in the digraph.
InvalidSpliceException - if path's head node is not the node in this at startNodeIndex, or if the path's tail node is not the node in this at endNodeIndex.
public CEPath spliceFirst(CEPath path)
throws EdgeMissingException,
NodeMissingException,
InvalidSpliceException
spliceFirst in interface MutableCEPathspliceFirst in class AbstractListCEPath
EdgeMissingException - if the any edge in path is missing from the digraph.
NodeMissingException - if any node in path not in the digraph.
InvalidSpliceException - if path's head node is not the node in this at startNodeIndex, or if the path's tail node is not the node in this at endNodeIndex.
public CEPath spliceLast(CEPath path)
throws EdgeMissingException,
NodeMissingException,
InvalidSpliceException
spliceLast in interface MutableCEPathspliceLast in class AbstractListCEPath
EdgeMissingException - if the any edge in path is missing from the digraph.
NodeMissingException - if any node in path not in the digraph.
InvalidSpliceException - if path's head node is not the node in this at startNodeIndex, or if the path's tail node is not the node in this at endNodeIndex.
public CEPath spliceFirstToLast(CEPath path)
throws EdgeMissingException,
NodeMissingException,
InvalidSpliceException
spliceFirstToLast in interface MutableCEPathspliceFirstToLast in class AbstractListCEPath
EdgeMissingException - if the any edge in path is missing from the digraph.
NodeMissingException - if any node in path not in the digraph.
InvalidSpliceException - if path's head node is not the node in this at startNodeIndex, or if the path's tail node is not the node in this at endNodeIndex.
public CEPath spliceLastToFirst(CEPath path)
throws EdgeMissingException,
NodeMissingException,
InvalidSpliceException
spliceLastToFirst in interface MutableCEPathspliceLastToFirst in class AbstractListCEPath
EdgeMissingException - if the any edge in path is missing from the digraph.
NodeMissingException - if any node in path not in the digraph.
InvalidSpliceException - if path's head node is not the node in this at startNodeIndex, or if the path's tail node is not the node in this at endNodeIndex.
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||