[jboss-cvs] JBossAS SVN: r84381 - projects/microcontainer/branches/Branch_2_0/dependency/src/main/java/org/jboss/dependency/plugins.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Feb 18 07:13:14 EST 2009
Author: adrian at jboss.org
Date: 2009-02-18 07:13:14 -0500 (Wed, 18 Feb 2009)
New Revision: 84381
Modified:
projects/microcontainer/branches/Branch_2_0/dependency/src/main/java/org/jboss/dependency/plugins/AbstractDependencyInfo.java
Log:
[JBMICROCONT-490] - Don't try to resolve already resolved dependencies
Modified: projects/microcontainer/branches/Branch_2_0/dependency/src/main/java/org/jboss/dependency/plugins/AbstractDependencyInfo.java
===================================================================
--- projects/microcontainer/branches/Branch_2_0/dependency/src/main/java/org/jboss/dependency/plugins/AbstractDependencyInfo.java 2009-02-18 12:12:54 UTC (rev 84380)
+++ projects/microcontainer/branches/Branch_2_0/dependency/src/main/java/org/jboss/dependency/plugins/AbstractDependencyInfo.java 2009-02-18 12:13:14 UTC (rev 84381)
@@ -52,9 +52,6 @@
/** Dependencies referencing me */
private Set<DependencyItem> dependsOnMe = new CopyOnWriteArraySet<DependencyItem>();
- /** Unresolved dependencies */
- private Set<DependencyItem> unresolved = new CopyOnWriteArraySet<DependencyItem>();
-
/** Install callbacks */
private Set<CallbackItem<?>> installCallbacks = new CopyOnWriteArraySet<CallbackItem<?>>();
@@ -93,14 +90,12 @@
public void addIDependOn(DependencyItem dependency)
{
iDependOn.add(dependency);
- unresolved.add(dependency);
flushJBossObjectCache();
}
public void removeIDependOn(DependencyItem dependency)
{
iDependOn.remove(dependency);
- unresolved.remove(dependency);
flushJBossObjectCache();
}
@@ -149,15 +144,24 @@
public Set<DependencyItem> getUnresolvedDependencies(ControllerState state)
{
- if (unresolved.isEmpty())
+ if (iDependOn.isEmpty())
return Collections.emptySet();
- Set<DependencyItem> result = new HashSet<DependencyItem>();
- for (DependencyItem item : unresolved)
+ Set<DependencyItem> result = null;
+ for (DependencyItem item : iDependOn)
{
if (state == null || state.equals(item.getWhenRequired()))
- result.add(item);
+ {
+ if (item.isResolved() == false)
+ {
+ if (result == null)
+ result = new HashSet<DependencyItem>();
+ result.add(item);
+ }
+ }
}
+ if (result == null)
+ return Collections.emptySet();
return result;
}
@@ -218,7 +222,15 @@
public void toString(JBossStringBuilder buffer)
{
buffer.append("idependOn=").append(iDependOn);
- if (unresolved.isEmpty() == false)
- buffer.append(" unresolved=").append(unresolved);
+ try
+ {
+ Set<DependencyItem> unresolved = getUnresolvedDependencies(null);
+ if (unresolved.isEmpty() == false)
+ buffer.append(" unresolved=").append(unresolved);
+ }
+ catch (Throwable ignored)
+ {
+ buffer.append(" unresolved=" + ignored);
+ }
}
}
More information about the jboss-cvs-commits
mailing list