@Override public void afterUnmarshal(Unmarshaller u, Object parent) { super.afterUnmarshal(u, parent); } }
@Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((getId() == null) ? 0 : getId().hashCode()); result = prime * result + ((getNamespace() == null) ? 0 : getNamespace().hashCode()); return result; }
@Override public int compareTo(Ref o) { if (this.equals(o)) { return 0; } else { // Order by namespace, then ID if (this.getNamespace().equals(o.getNamespace())) { if (this.getId().equals(o.getId())) { // Shouldn't happen because equals() should return true throw new IllegalStateException("equals() was inaccurate in " + this.getClass().getName()); } else { return this.getId().compareTo(o.getId()); } } else { return this.getNamespace().compareTo(o.getNamespace()); } } }
@Override public void execute(List<VertexRef> targets, OperationContext operationContext) { GraphProvider graphProvider = operationContext.getGraphContainer().getBaseTopology(); Map<String, WrappedVertex> idMap = new HashMap<String, WrappedVertex>(); // first create all the vertices; List<WrappedVertex> vertices = new ArrayList<WrappedVertex>(); for(Vertex vertex : graphProvider.getVertices()) { WrappedVertex wrappedVertex = WrappedVertex.create(vertex); vertices.add(wrappedVertex); idMap.put(vertex.getId(), wrappedVertex); } // then set the parents for each for(Vertex vertex : graphProvider.getVertices()) { Vertex parent = graphProvider.getParent(vertex); if (parent != null) { WrappedVertex wrappedVertex = idMap.get(vertex.getId()); WrappedVertex wrappedParent = idMap.get(parent.getId()); wrappedVertex.parent = wrappedParent; } } // then create the edges List<WrappedEdge> edges = new ArrayList<WrappedEdge>(); for(Edge edge : graphProvider.getEdges()) { WrappedVertex wrappedSource = idMap.get(edge.getSource().getVertex().getId()); WrappedVertex wrappedTarget = idMap.get(edge.getTarget().getVertex().getId()); edges.add(new WrappedEdge(edge, wrappedSource, wrappedTarget)); } WrappedGraph graph = new WrappedGraph(graphProvider.getVertexNamespace(), vertices, edges); JAXB.marshal(graph, new File("/tmp/saved-graph.xml")); }
protected WrappedVertex(Vertex vertex) { this((VertexRef)vertex); iconKey = vertex.getIconKey(); ipAddr = vertex.getIpAddress(); nodeID = vertex.getNodeID(); if (vertex.getParent() != null) parent = new WrappedVertex(vertex.getParent()); styleName = vertex.getStyleName(); tooltipText = vertex.getTooltipText(); x = vertex.getX(); y = vertex.getY(); group = vertex.isGroup(); locked = vertex.isLocked(); selected = vertex.isSelected(); }
@Override public void execute(List<VertexRef> targets, OperationContext operationContext) { GraphProvider graphProvider = operationContext.getGraphContainer().getBaseTopology(); Map<String, WrappedVertex> idMap = new HashMap<String, WrappedVertex>(); // first create all the vertices; List<WrappedVertex> vertices = new ArrayList<WrappedVertex>(); for(Vertex vertex : graphProvider.getVertices()) { WrappedVertex wrappedVertex = WrappedVertex.create(vertex); vertices.add(wrappedVertex); idMap.put(vertex.getId(), wrappedVertex); } // then set the parents for each for(Vertex vertex : graphProvider.getVertices()) { Vertex parent = graphProvider.getParent(vertex); if (parent != null) { WrappedVertex wrappedVertex = idMap.get(vertex.getId()); WrappedVertex wrappedParent = idMap.get(parent.getId()); wrappedVertex.parent = wrappedParent; } } // then create the edges List<WrappedEdge> edges = new ArrayList<WrappedEdge>(); for(Edge edge : graphProvider.getEdges()) { WrappedVertex wrappedSource = idMap.get(edge.getSource().getVertex().getId()); WrappedVertex wrappedTarget = idMap.get(edge.getTarget().getVertex().getId()); edges.add(new WrappedEdge(edge, wrappedSource, wrappedTarget)); } WrappedGraph graph = new WrappedGraph(graphProvider.getVertexNamespace(), vertices, edges); JAXB.marshal(graph, new File("/tmp/saved-graph.xml")); }
@Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (!(obj instanceof VertexRef)) return false; VertexRef ref = (VertexRef)obj; return getNamespace().equals(ref.getNamespace()) && getId().equals(ref.getId()); }
@Override public void afterUnmarshal(Unmarshaller u, Object parent) { super.afterUnmarshal(u, parent); } }