[jboss-cvs] JBossAS SVN: r96621 - in projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core: server and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Nov 20 01:50:51 EST 2009


Author: ALRubinger
Date: 2009-11-20 01:50:51 -0500 (Fri, 20 Nov 2009)
New Revision: 96621

Modified:
   projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/deployable/DeployableUrl.java
   projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/server/JBossASEmbeddedServerImpl.java
Log:
[EMB-68] Performance fixes identified by FindBugs: No URL.hashCode and Map.entrySet

Modified: projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/deployable/DeployableUrl.java
===================================================================
--- projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/deployable/DeployableUrl.java	2009-11-20 06:18:47 UTC (rev 96620)
+++ projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/deployable/DeployableUrl.java	2009-11-20 06:50:51 UTC (rev 96621)
@@ -17,6 +17,7 @@
 package org.jboss.embedded.core.deployable;
 
 import java.net.MalformedURLException;
+import java.net.URISyntaxException;
 import java.net.URL;
 
 import org.jboss.embedded.api.Deployable;
@@ -88,7 +89,14 @@
    {
       final int prime = 31;
       int result = 1;
-      result = prime * result + ((url == null) ? 0 : url.hashCode());
+      try
+      {
+         result = prime * result + ((url == null) ? 0 : url.toURI().hashCode());
+      }
+      catch (final URISyntaxException e)
+      {
+         throw new RuntimeException(e);
+      }
       return result;
    }
 
@@ -112,8 +120,16 @@
          if (other.url != null)
             return false;
       }
-      else if (!url.equals(other.url))
-         return false;
+      else
+         try
+         {
+            if (!url.toURI().equals(other.url.toURI()))
+               return false;
+         }
+         catch (final URISyntaxException e)
+         {
+            throw new RuntimeException(e);
+         }
       return true;
    }
 

Modified: projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/server/JBossASEmbeddedServerImpl.java
===================================================================
--- projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/server/JBossASEmbeddedServerImpl.java	2009-11-20 06:18:47 UTC (rev 96620)
+++ projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/server/JBossASEmbeddedServerImpl.java	2009-11-20 06:50:51 UTC (rev 96621)
@@ -28,7 +28,9 @@
 import java.util.Arrays;
 import java.util.Collection;
 import java.util.HashMap;
+import java.util.Iterator;
 import java.util.Map;
+import java.util.Map.Entry;
 
 import org.jboss.bootstrap.api.as.config.JBossASServerConfig;
 import org.jboss.bootstrap.api.config.InvalidConfigurationException;
@@ -268,16 +270,19 @@
             final DeploymentException wrappedException = new DeploymentException(de);
 
             // Remove all previously-added deployables from further MainDeployer processing
-            for (final Deployable deployableToRemove : deploymentsToBeAdded.keySet())
+            final Iterator<Entry<Deployable, Deployment>> it = deploymentsToBeAdded.entrySet().iterator();
+            while (it.hasNext())
             {
+               final Entry<Deployable, Deployment> next = it.next();
+               final Deployable thisDeployable = next.getKey();
                try
                {
-                  mainDeployer.removeDeployment(deploymentsToBeAdded.get(deployableToRemove));
+                  mainDeployer.removeDeployment(deploymentsToBeAdded.get(thisDeployable));
                }
                catch (org.jboss.deployers.spi.DeploymentException e)
                {
                   log.warn("Atomic deployment of " + Arrays.asList(deployables) + " failed due to " + de.getMessage()
-                        + ", and we could not remove " + deployableToRemove + " from further processing");
+                        + ", and we could not remove " + thisDeployable + " from further processing");
                }
             }
 




More information about the jboss-cvs-commits mailing list