org.codehaus.plexus.util.dag
Class DAG
java.lang.Object
org.codehaus.plexus.util.dag.DAG
- All Implemented Interfaces:
- java.lang.Cloneable
- public class DAG
- extends java.lang.Object
- implements java.lang.Cloneable
DAG = Directed Acyclic Graph
- Version:
- $Id: DAG.java,v 1.3 2004/01/15 19:35:25 michal Exp $
- Author:
- Michal Maczka
Field Summary |
private java.util.List |
vertexList
Conatin list of all verticies |
private java.util.Map |
vertexMap
Maps vertex's label to vertex |
Constructor Summary |
DAG()
|
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
vertexMap
private java.util.Map vertexMap
- Maps vertex's label to vertex
vertexList
private java.util.List vertexList
- Conatin list of all verticies
DAG
public DAG()
getVerticies
public java.util.List getVerticies()
- Returns:
getLabels
public java.util.Set getLabels()
addVertex
public Vertex addVertex(java.lang.String label)
- Adds vertex to DAG. If vertex of given label alredy exist in DAG
no vertex is added
- Parameters:
label
- The lable of the Vertex
- Returns:
- New vertex if vertext of given label was not presenst in the DAG
or exising vertex if vertex of given labale was alredy added to DAG
addEdge
public void addEdge(java.lang.String from,
java.lang.String to)
getVertex
public Vertex getVertex(java.lang.String label)
hasEdge
public boolean hasEdge(java.lang.String label1,
java.lang.String label2)
getChildLabels
public java.util.List getChildLabels(java.lang.String label)
- Parameters:
label
-
- Returns:
getParentLabels
public java.util.List getParentLabels(java.lang.String label)
- Parameters:
label
-
- Returns:
clone
public java.lang.Object clone()
throws java.lang.CloneNotSupportedException
- Throws:
java.lang.CloneNotSupportedException
- See Also:
Object.clone()