[jboss-cvs] JBossAS SVN: r98930 - projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Dec 24 05:23:15 EST 2009


Author: alesj
Date: 2009-12-24 05:23:15 -0500 (Thu, 24 Dec 2009)
New Revision: 98930

Modified:
   projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/TopologicalDeployerSorter.java
Log:
Few minor opts.

Modified: projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/TopologicalDeployerSorter.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/TopologicalDeployerSorter.java	2009-12-24 09:51:23 UTC (rev 98929)
+++ projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/TopologicalDeployerSorter.java	2009-12-24 10:23:15 UTC (rev 98930)
@@ -27,10 +27,11 @@
 import java.util.Collections;
 import java.util.Comparator;
 import java.util.HashMap;
-import java.util.HashSet;
+import java.util.IdentityHashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import java.util.Stack;
 
 import org.jboss.deployers.spi.Ordered;
 import org.jboss.deployers.spi.deployer.Deployer;
@@ -75,17 +76,16 @@
             }
          }
       }
-      Set<Vertex<Integer>> noIncoming = new HashSet<Vertex<Integer>>();
+      Stack<Vertex<Integer>> noIncoming = new Stack<Vertex<Integer>>();
       for (Vertex<Integer> vertex : vertices.values())
       {
          if (vertex.getIncomingEdgeCount() == 0)
-            noIncoming.add(vertex);
+            noIncoming.push(vertex);
       }
       List<Vertex<Integer>> sorted = new ArrayList<Vertex<Integer>>();
       while(noIncoming.isEmpty() == false)
       {
-         Vertex<Integer> n = noIncoming.iterator().next();
-         noIncoming.remove(n);
+         Vertex<Integer> n = noIncoming.pop();
          sorted.add(n);
          n.setData(sorted.size());
          List<Edge<Integer>> edges = new ArrayList<Edge<Integer>>(n.getOutgoingEdges());
@@ -94,7 +94,7 @@
             Vertex<Integer> m = edge.getTo();
             graph.removeEdge(n, m);
             if (m.getIncomingEdgeCount() == 0)
-               noIncoming.add(m);
+               noIncoming.push(m);
          }
       }
       if (graph.getEdges().isEmpty() == false)
@@ -110,10 +110,10 @@
 
    private static Set<Vertex<Integer>> fillVertices(Set<String> keys, Map<String, Vertex<Integer>> vertices, Graph<Integer> graph)
    {
-      Set<Vertex<Integer>> dv = new HashSet<Vertex<Integer>>();
+      Map<Vertex<Integer>, Object> dv = new IdentityHashMap<Vertex<Integer>, Object>();
       for (String key : keys)
-         dv.add(getVertex(key, vertices, graph));
-      return dv;
+         dv.put(getVertex(key, vertices, graph), 0);
+      return dv.keySet();
    }
 
    private static Vertex<Integer> getVertex(String key, Map<String, Vertex<Integer>> vertices, Graph<Integer> graph)




More information about the jboss-cvs-commits mailing list