public E addEdge(N n1, N n2, EdgeType type) { if (edgeFactories.containsKey(type)) { return addEdge(edgeFactories.get(type).createEdge(n1, n2)); } else { throw new RuntimeException("Edge Type not supported!"); } }
public void addEdgeFactory(EdgeFactory<? extends E, N> factory) { edgeFactories.put(factory.getEdgeType(), factory); if (defaultFactory == null) defaultFactory = factory; }
public void addEdgeFactory(EdgeFactory<? extends E, N> factory) { if (edgeFactories == null) edgeFactories = new HashMap<EdgeType, EdgeFactory<? extends E, N>>(); edgeFactories.put(factory.getEdgeType(), factory); if (defaultFactory == null) defaultFactory = factory; }
protected E addEdge(N n1, N n2, EdgeFactory<? extends E, N> f) { E e = f.createEdge(n1, n2); return addEdge(e); }
public boolean containsEdge(N n1, N n2) { if (defaultFactory == null) throw new RuntimeException("No default EdgeFactory set!"); EdgeType t = defaultFactory.getEdgeType(); return containsEdge(n1, n2, t); }
/** * Uses the trees {@link EdgeFactory} to create an edge from parent to child. */ @SuppressWarnings("unchecked") public Edge<TreeNode> addEdge(TreeNode parent, TreeNode child) { Edge e = edgefactory.createEdge(parent, child); parent.addEdge(e); child.addEdge(e); return e; }
public void removeEdge(N n1, N n2) { if (defaultFactory == null) throw new RuntimeException("No default EdgeFactory set!"); EdgeType t = defaultFactory.getEdgeType(); removeEdge(n1, n2, t); }
public boolean containsEdge(N n1, N n2) { if (defaultFactory == null) throw new RuntimeException("No default EdgeFactory set!"); EdgeType t = defaultFactory.getEdgeType(); return containsEdge(n1, n2, t); }
public void removeEdge(N n1, N n2) { if (defaultFactory == null) throw new RuntimeException("No default EdgeFactory set!"); EdgeType t = defaultFactory.getEdgeType(); removeEdge(n1, n2, t); }
public abstract E addEdge(E e);