[jboss-cvs] JBossAS SVN: r98933 - in projects/jboss-deployers/trunk: deployers-impl/src/test/java/org/jboss/test/deployers/deployer/test and 1 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Dec 24 07:59:05 EST 2009
Author: alesj
Date: 2009-12-24 07:59:04 -0500 (Thu, 24 Dec 2009)
New Revision: 98933
Modified:
projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/DominoOrdering.java
projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/TopologicalDeployerSorter.java
projects/jboss-deployers/trunk/deployers-impl/src/test/java/org/jboss/test/deployers/deployer/test/TopologicalOrderingUnitTestCase.java
projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/AbstractDeployer.java
Log:
Relative order by default should be Integer.MAX.
Modified: projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/DominoOrdering.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/DominoOrdering.java 2009-12-24 12:27:51 UTC (rev 98932)
+++ projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/DominoOrdering.java 2009-12-24 12:59:04 UTC (rev 98933)
@@ -103,7 +103,7 @@
if (relation == 0)
{
// lazy compare on those who don't have order set
- if (one.getRelativeOrder() != 0 && two.getRelativeOrder() != 0)
+ if (one.getRelativeOrder() != Integer.MAX_VALUE && two.getRelativeOrder() != Integer.MAX_VALUE)
relation = one.getRelativeOrder() - two.getRelativeOrder();
}
connections[i][j] = relation;
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 12:27:51 UTC (rev 98932)
+++ projects/jboss-deployers/trunk/deployers-impl/src/main/java/org/jboss/deployers/plugins/sort/TopologicalDeployerSorter.java 2009-12-24 12:59:04 UTC (rev 98933)
@@ -27,6 +27,7 @@
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;
@@ -100,7 +101,7 @@
if (graph.getEdges().isEmpty() == false)
throw new IllegalStateException("We have a cycle: " + newDeployer + ", previous: " + original);
- // FIXME - transitive compare doesn't work here
+ // FIXME - transitive compare doesn't work here -- find a better way to map deployers onto ordered inputs/outputs
Collections.sort(nodes, DeployerNodeComparator.INSTANCE);
List<Deployer> sortedDeployers = new ArrayList<Deployer>();
for (DeployerNode node : nodes)
@@ -289,6 +290,21 @@
{
if (overlap12 != overlap21)
return overlap21 - overlap12;
+
+ Set<Vertex<Integer>> tail1 = new HashSet<Vertex<Integer>>(dn1.outputs);
+ tail1.retainAll(dn2.inputs);
+ Set<Vertex<Integer>> tail2 = new HashSet<Vertex<Integer>>(dn2.outputs);
+ tail2.retainAll(dn1.inputs);
+ int s1 = tail1.size();
+ int s2 = tail2.size();
+ if (s1 != s2)
+ {
+ return s2 - s1;
+ }
+ else
+ {
+ overlap12 = overlap21 = -1; // reset
+ }
}
if (overlap12 >= 0)
Modified: projects/jboss-deployers/trunk/deployers-impl/src/test/java/org/jboss/test/deployers/deployer/test/TopologicalOrderingUnitTestCase.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-impl/src/test/java/org/jboss/test/deployers/deployer/test/TopologicalOrderingUnitTestCase.java 2009-12-24 12:27:51 UTC (rev 98932)
+++ projects/jboss-deployers/trunk/deployers-impl/src/test/java/org/jboss/test/deployers/deployer/test/TopologicalOrderingUnitTestCase.java 2009-12-24 12:59:04 UTC (rev 98933)
@@ -63,26 +63,8 @@
}
@Override
- public void testOrderedThenFlowWithPassThrough() throws Exception
- {
- // TODO - fix final DeployerNodes sort
- }
-
- @Override
- public void testWebServicesDeployersOrder() throws Exception
- {
- // TODO - fix final DeployerNodes sort
- }
-
- @Override
public void testDeployersOrder1() throws Exception
{
// TODO - fix final DeployerNodes sort
}
-
- @Override
- public void testRemovingOverlapping() throws Exception
- {
- // TODO - fix final DeployerNodes sort
- }
}
\ No newline at end of file
Modified: projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/AbstractDeployer.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/AbstractDeployer.java 2009-12-24 12:27:51 UTC (rev 98932)
+++ projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/AbstractDeployer.java 2009-12-24 12:59:04 UTC (rev 98933)
@@ -42,7 +42,7 @@
protected Logger log = Logger.getLogger(getClass());
/** The relative order */
- private int relativeOrder = 0;
+ private int relativeOrder = Integer.MAX_VALUE;
/** The deployment stage */
private DeploymentStage stage = DeploymentStages.REAL;
More information about the jboss-cvs-commits
mailing list