Author: thomas.heute(a)jboss.com
Date: 2008-07-23 06:58:09 -0400 (Wed, 23 Jul 2008)
New Revision: 11553
Modified:
branches/JBoss_Portal_Branch_2_7/server/src/main/org/jboss/portal/server/deployment/jboss/PortalDeploymentInfoContext.java
Log:
JBPORTAL-1832: -object.xml files should be orderable
Contribution from Sylvain FRANCOIS (syllant), thanks !
Modified:
branches/JBoss_Portal_Branch_2_7/server/src/main/org/jboss/portal/server/deployment/jboss/PortalDeploymentInfoContext.java
===================================================================
---
branches/JBoss_Portal_Branch_2_7/server/src/main/org/jboss/portal/server/deployment/jboss/PortalDeploymentInfoContext.java 2008-07-23
10:56:17 UTC (rev 11552)
+++
branches/JBoss_Portal_Branch_2_7/server/src/main/org/jboss/portal/server/deployment/jboss/PortalDeploymentInfoContext.java 2008-07-23
10:58:09 UTC (rev 11553)
@@ -30,10 +30,12 @@
import java.io.IOException;
import java.net.URL;
+import java.util.Comparator;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.Set;
+import java.util.TreeSet;
/**
* @author <a href="mailto:julien@jboss.org">Julien Viet</a>
@@ -189,10 +191,14 @@
public void create() throws DeploymentException
{
- for (Iterator i = deployments.keySet().iterator(); i.hasNext();)
+ // @syllant-patch@ : patch to sort -object.xml files
+ Set<URL> sortedDeploymentKeys = new TreeSet<URL>(new URLComparator());
+ sortedDeploymentKeys.addAll(deployments.keySet());
+ for (Iterator<URL> i = sortedDeploymentKeys.iterator(); i.hasNext();)
{
URL url = (URL)i.next();
- for (Iterator j = deployments.iterator(url); j.hasNext();)
+
+ for (Iterator<DeploymentContext> j = deployments.iterator(url);
j.hasNext();)
{
DeploymentContext ctx = (DeploymentContext)j.next();
ctx.create();
@@ -202,10 +208,13 @@
public void start() throws DeploymentException
{
- for (Iterator i = deployments.keySet().iterator(); i.hasNext();)
+ // @syllant-patch@ : patch to sort -object.xml files
+ Set<URL> sortedDeploymentKeys = new TreeSet<URL>(new URLComparator());
+ sortedDeploymentKeys.addAll(deployments.keySet());
+ for (Iterator<URL> i = sortedDeploymentKeys.iterator(); i.hasNext();)
{
URL url = (URL)i.next();
- for (Iterator j = deployments.iterator(url); j.hasNext();)
+ for (Iterator<DeploymentContext> j = deployments.iterator(url);
j.hasNext();)
{
DeploymentContext ctx = (DeploymentContext)j.next();
ctx.start();
@@ -215,10 +224,13 @@
public void stop() throws DeploymentException
{
- for (Iterator i = deployments.keySet().iterator(); i.hasNext();)
+ // @syllant-patch@ : patch to sort -object.xml files
+ Set<URL> sortedDeploymentKeys = new TreeSet<URL>(new
OppositeURLComparator());
+ sortedDeploymentKeys.addAll(deployments.keySet());
+ for (Iterator<URL> i = sortedDeploymentKeys.iterator(); i.hasNext();)
{
URL url = (URL)i.next();
- for (Iterator j = deployments.iterator(url); j.hasNext();)
+ for (Iterator<DeploymentContext> j = deployments.iterator(url);
j.hasNext();)
{
DeploymentContext ctx = (DeploymentContext)j.next();
ctx.stop();
@@ -228,14 +240,34 @@
public void destroy() throws DeploymentException
{
- for (Iterator i = deployments.keySet().iterator(); i.hasNext();)
+ // @syllant-patch@ : patch to sort -object.xml files
+ Set<URL> sortedDeploymentKeys = new TreeSet<URL>(new
OppositeURLComparator());
+ sortedDeploymentKeys.addAll(deployments.keySet());
+ for (Iterator<URL> i = sortedDeploymentKeys.iterator(); i.hasNext();)
{
URL url = (URL)i.next();
- for (Iterator j = deployments.iterator(url); j.hasNext();)
+ for (Iterator<DeploymentContext> j = deployments.iterator(url);
j.hasNext();)
{
DeploymentContext ctx = (DeploymentContext)j.next();
ctx.destroy();
}
}
}
+
+ // @syllant-patch@ : patch to sort -object.xml files
+ private class URLComparator implements Comparator<URL>
+ {
+ public int compare(URL o1, URL o2)
+ {
+ return o1.getPath().compareTo(o2.getPath());
+ }
+ }
+
+ private class OppositeURLComparator implements Comparator<URL>
+ {
+ public int compare(URL o1, URL o2)
+ {
+ return - o1.getPath().compareTo(o2.getPath());
+ }
+ }
}