[jboss-cvs] JBossAS SVN: r99113 - 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 Jan 7 07:59:11 EST 2010


Author: richard.opalka at jboss.com
Date: 2010-01-07 07:59:11 -0500 (Thu, 07 Jan 2010)
New Revision: 99113

Modified:
   projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/KahnDeployerSorter.java
Log:
[JBDEPLOY-229][JBDEPLOY-230] fixing wrong implementation - it is breaking BC

Modified: projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/KahnDeployerSorter.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/KahnDeployerSorter.java	2010-01-07 12:58:21 UTC (rev 99112)
+++ projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/KahnDeployerSorter.java	2010-01-07 12:59:11 UTC (rev 99113)
@@ -32,6 +32,7 @@
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import java.util.TreeSet;
 
 import org.jboss.deployers.spi.Ordered;
 import org.jboss.deployers.spi.deployer.Deployer;
@@ -338,6 +339,7 @@
          Deployer deployer = s.remove(0);
          result.add(deployer);
          // for each node m with an edge e from n to m do
+         Set<Deployer> nextLevel = new TreeSet<Deployer>(Ordered.COMPARATOR);
          for(Edge e : findInputs(edgeCache, deployer, inputCache, deployer.getOutputs()))
          {
             // remove edge e from the graph
@@ -345,8 +347,9 @@
             edges.remove(e);
             // if m has no other incoming edges then insert m into S
             if(edges.isEmpty())
-               s.add(e.to);
+               nextLevel.add(e.to);
          }
+         s.addAll(nextLevel);
       }
       // if graph has edges then output error message (graph has at least one cycle)
       String message = "";




More information about the jboss-cvs-commits mailing list