// Check for unique parts Cd_graph { {{ HashSet uniqueParts = new HashSet(); public void check_unique(ClassGraph cg1) { Strategy s1 = new Strategy("from Cd_graph through Adjacency to Vertex"); TraversalGraph tg = new TraversalGraph(s1, cg1); tg.traverse(this, new Visitor() { private Vertex defined_vertex; private Vertex current_vertex; public void before (Construct_ns host) { uniqueParts = new HashSet(); defined_vertex = current_vertex; } public void before (Regular host) { AddToStack(host.get_vertex().get_vertex().get_vertex_name().toString().toLowerCase()); } public void before (Labeled host) { AddToStack( host.get_label_name().toString() ); } public void before (Vertex host) { current_vertex = host; } private void AddToStack (String add) { //If class already defined, produce error message if (uniqueParts.contains(add)) { System.err.println(" ERROR: Part " + add + " of the class " + defined_vertex.get_vertex_name() + " is not unique. "); } else { //Add to list of defined classes uniqueParts.add(add); } } }); // End of traversal } // end of check_unique }} }