110111112113114115116117118119120
private void addDependencies(Range source, Range target) throws GraphCycleException { if (source.isArray()) { Range[] r = source.split(); for (Range rs : r) { graph.add(new Edge(rs, target)); } } else { graph.add(new Edge(source, target)); } }
121122123124125126127128129130131
private void removeDependencies(Range source, Range target) { if (source.isArray()) { Range[] r = source.split(); for (Range rs : r) { graph.remove(new Edge(rs, target)); } } else { graph.remove(new Edge(source, target)); } }
14151617181920212223
public class GraphTest extends TH { public void testCheckCycle() throws Exception { Graph g = new Graph(); g.add(new Edge("a", "b")); g.add(new Edge("a", "c")); g.add(new Edge("b", "d")); g.add(new Edge("c", "d")); }