net.sf.opendse.model
Class Application<T extends Task,D extends Dependency>

java.lang.Object
  extended by edu.uci.ics.jung.graph.AbstractGraph<V,E>
      extended by edu.uci.ics.jung.graph.SparseMultigraph<V,E>
          extended by net.sf.opendse.model.Graph<T,D>
              extended by net.sf.opendse.model.Application<T,D>
Type Parameters:
T - the type of vertices
D - the type of edges
All Implemented Interfaces:
edu.uci.ics.jung.graph.Graph<T,D>, edu.uci.ics.jung.graph.Hypergraph<T,D>, edu.uci.ics.jung.graph.MultiGraph<T,D>, java.io.Serializable, java.lang.Iterable<T>

public class Application<T extends Task,D extends Dependency>
extends Graph<T,D>

The Application is the default implementation of the application graph.

See Also:
Serialized Form

Field Summary
protected  java.util.Map<java.lang.String,Attributes> fmap
           
 
Fields inherited from class edu.uci.ics.jung.graph.SparseMultigraph
directedEdges, edges, vertices
 
Constructor Summary
Application()
           
 
Method Summary
 void add(Function<T,D> function)
           
 boolean addEdge(D dependency, java.util.Collection<? extends T> vertices)
           
 boolean addEdge(D dependency, edu.uci.ics.jung.graph.util.Pair<? extends T> endpoints)
           
 boolean addEdge(D dependency, T v1, T v2)
           
protected  Function<T,D> buildFunction(java.util.Set<T> tasks)
           
protected  Attributes getAttributes(java.util.Set<T> tasks)
           
 Function<T,D> getFunction(D dependency)
           
 Function<T,D> getFunction(java.lang.String id)
           
 Function<T,D> getFunction(T task)
           
 java.util.Set<Function<T,D>> getFunctions()
           
protected  java.util.Set<T> getReachable(T task)
           
protected  java.lang.String nextFunctionId()
           
 boolean removeVertex(T t)
           
 
Methods inherited from class net.sf.opendse.model.Graph
getEdge, getEdge, getVertex, getVertex, iterator, removeVertices
 
Methods inherited from class edu.uci.ics.jung.graph.SparseMultigraph
addEdge, addVertex, containsEdge, containsVertex, findEdge, getDefaultEdgeType, getDest, getEdgeCount, getEdgeCount, getEdges, getEdges, getEdgeType, getEndpoints, getFactory, getIncidentEdges, getIncoming_internal, getInEdges, getNeighbors, getOutEdges, getOutgoing_internal, getPredecessors, getSource, getSuccessors, getVertexCount, getVertices, isDest, isSource, removeEdge
 
Methods inherited from class edu.uci.ics.jung.graph.AbstractGraph
addEdge, addEdge, degree, findEdgeSet, getIncidentCount, getIncidentVertices, getNeighborCount, getOpposite, getPredecessorCount, getSuccessorCount, getValidatedEndpoints, inDegree, isIncident, isNeighbor, isPredecessor, isSuccessor, outDegree, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

fmap

protected final java.util.Map<java.lang.String,Attributes> fmap
Constructor Detail

Application

public Application()
Method Detail

add

public void add(Function<T,D> function)

removeVertex

public boolean removeVertex(T t)
Specified by:
removeVertex in interface edu.uci.ics.jung.graph.Hypergraph<T extends Task,D extends Dependency>
Overrides:
removeVertex in class edu.uci.ics.jung.graph.SparseMultigraph<T extends Task,D extends Dependency>

getFunction

public Function<T,D> getFunction(T task)

getFunction

public Function<T,D> getFunction(D dependency)

getFunction

public Function<T,D> getFunction(java.lang.String id)

getFunctions

public java.util.Set<Function<T,D>> getFunctions()

nextFunctionId

protected java.lang.String nextFunctionId()

buildFunction

protected Function<T,D> buildFunction(java.util.Set<T> tasks)

getAttributes

protected Attributes getAttributes(java.util.Set<T> tasks)

getReachable

protected java.util.Set<T> getReachable(T task)

addEdge

public boolean addEdge(D dependency,
                       java.util.Collection<? extends T> vertices)
Specified by:
addEdge in interface edu.uci.ics.jung.graph.Hypergraph<T extends Task,D extends Dependency>
Overrides:
addEdge in class edu.uci.ics.jung.graph.AbstractGraph<T extends Task,D extends Dependency>

addEdge

public boolean addEdge(D dependency,
                       edu.uci.ics.jung.graph.util.Pair<? extends T> endpoints)
Overrides:
addEdge in class edu.uci.ics.jung.graph.AbstractGraph<T extends Task,D extends Dependency>

addEdge

public boolean addEdge(D dependency,
                       T v1,
                       T v2)
Specified by:
addEdge in interface edu.uci.ics.jung.graph.Graph<T extends Task,D extends Dependency>
Overrides:
addEdge in class edu.uci.ics.jung.graph.AbstractGraph<T extends Task,D extends Dependency>