[jboss-cvs] JBossAS SVN: r86213 - projects/microcontainer/trunk/dependency/src/main/java/org/jboss/dependency/plugins.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Mon Mar 23 11:34:44 EDT 2009
Author: adrian at jboss.org
Date: 2009-03-23 11:34:44 -0400 (Mon, 23 Mar 2009)
New Revision: 86213
Modified:
projects/microcontainer/trunk/dependency/src/main/java/org/jboss/dependency/plugins/AbstractController.java
Log:
[JBMICROCONT-421] - Don't construct iterators when the set is empty
Modified: projects/microcontainer/trunk/dependency/src/main/java/org/jboss/dependency/plugins/AbstractController.java
===================================================================
--- projects/microcontainer/trunk/dependency/src/main/java/org/jboss/dependency/plugins/AbstractController.java 2009-03-23 15:19:34 UTC (rev 86212)
+++ projects/microcontainer/trunk/dependency/src/main/java/org/jboss/dependency/plugins/AbstractController.java 2009-03-23 15:34:44 UTC (rev 86213)
@@ -1060,44 +1060,50 @@
}
try
{
- for (Iterator<ControllerContext> iter = toProcess.iterator(); iter.hasNext(); )
+ if (toProcess.isEmpty() == false)
{
- ControllerContext context = iter.next();
- iter.remove();
- Object name = context.getName();
- try
+ for (Iterator<ControllerContext> iter = toProcess.iterator(); iter.hasNext(); )
{
- if (fromState.equals(context.getState()) == false)
+ ControllerContext context = iter.next();
+ iter.remove();
+ Object name = context.getName();
+ try
{
- if (trace)
- log.trace("Skipping already installed " + name + " for " + toState.getStateString());
- }
- else
- {
- if (trace)
- log.trace("Dependencies resolved " + name + " for " + toState.getStateString());
-
- if (incrementState(context, trace))
+ if (fromState.equals(context.getState()) == false)
{
- resolutions = true;
if (trace)
- log.trace(name + " " + toState.getStateString());
+ log.trace("Skipping already installed " + name + " for " + toState.getStateString());
}
-
+ else
+ {
+ if (trace)
+ log.trace("Dependencies resolved " + name + " for " + toState.getStateString());
+
+ if (incrementState(context, trace))
+ {
+ resolutions = true;
+ if (trace)
+ log.trace(name + " " + toState.getStateString());
+ }
+
+ }
}
+ finally
+ {
+ installing.remove(context);
+ }
}
- finally
- {
- installing.remove(context);
- }
}
}
finally
{
// If we get here something has gone seriously wrong,
// but try to tidyup as much state as possible
- for (ControllerContext context : toProcess)
- installing.remove(context);
+ if (toProcess.isEmpty() == false)
+ {
+ for (ControllerContext context : toProcess)
+ installing.remove(context);
+ }
}
}
More information about the jboss-cvs-commits
mailing list