[jboss-cvs] JBossAS SVN: r79680 - in projects/microcontainer/branches/Branch_2_0: kernel/src/main/java/org/jboss/beans/metadata/plugins and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri Oct 17 19:25:18 EDT 2008
Author: alesj
Date: 2008-10-17 19:25:18 -0400 (Fri, 17 Oct 2008)
New Revision: 79680
Modified:
projects/microcontainer/branches/Branch_2_0/dependency/src/main/java/org/jboss/dependency/plugins/AbstractDependencyItem.java
projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractDemandMetaData.java
Log:
Port JBMICROCONT-365 to branch.
Modified: projects/microcontainer/branches/Branch_2_0/dependency/src/main/java/org/jboss/dependency/plugins/AbstractDependencyItem.java
===================================================================
--- projects/microcontainer/branches/Branch_2_0/dependency/src/main/java/org/jboss/dependency/plugins/AbstractDependencyItem.java 2008-10-17 22:44:10 UTC (rev 79679)
+++ projects/microcontainer/branches/Branch_2_0/dependency/src/main/java/org/jboss/dependency/plugins/AbstractDependencyItem.java 2008-10-17 23:25:18 UTC (rev 79680)
@@ -212,12 +212,16 @@
protected void setIDependOn(Object iDependOn)
{
this.iDependOn = iDependOn;
-
- // HACK: Try to fixup JMX like ObjectNames to their canonical name
- Object fixup = JMXObjectNameFix.needsAnAlias(iDependOn);
- if (fixup != null)
- this.iDependOn = fixup;
+ // only check if not null
+ if (iDependOn != null)
+ {
+ // HACK: Try to fixup JMX like ObjectNames to their canonical name
+ Object fixup = JMXObjectNameFix.needsAnAlias(iDependOn);
+ if (fixup != null)
+ this.iDependOn = fixup;
+ }
+
flushJBossObjectCache();
}
Modified: projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractDemandMetaData.java
===================================================================
--- projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractDemandMetaData.java 2008-10-17 22:44:10 UTC (rev 79679)
+++ projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractDemandMetaData.java 2008-10-17 23:25:18 UTC (rev 79680)
@@ -23,26 +23,26 @@
import java.io.Serializable;
import java.util.Iterator;
-
+import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlValue;
import org.jboss.beans.metadata.spi.DemandMetaData;
import org.jboss.beans.metadata.spi.MetaDataVisitor;
import org.jboss.beans.metadata.spi.MetaDataVisitorNode;
import org.jboss.dependency.plugins.AbstractDependencyItem;
+import org.jboss.dependency.plugins.JMXObjectNameFix;
import org.jboss.dependency.spi.Controller;
import org.jboss.dependency.spi.ControllerContext;
import org.jboss.dependency.spi.ControllerState;
import org.jboss.dependency.spi.DependencyItem;
+import org.jboss.kernel.api.dependency.Matcher;
+import org.jboss.kernel.api.dependency.MatcherFactory;
import org.jboss.kernel.spi.dependency.KernelControllerContext;
-import org.jboss.kernel.api.dependency.MatcherFactory;
-import org.jboss.kernel.api.dependency.Matcher;
+import org.jboss.util.HashCode;
import org.jboss.util.JBossObject;
import org.jboss.util.JBossStringBuilder;
-import org.jboss.util.HashCode;
/**
* A demand.
@@ -193,6 +193,9 @@
/** The matcher */
private Matcher matcher;
+ /** Cached demand name */
+ private transient Object demandObject;
+
/**
* Create a new demand dependecy
*
@@ -212,7 +215,19 @@
*/
protected Object getDemandObject()
{
- return (matcher != null) ? matcher : getDemand();
+ if (demandObject == null)
+ {
+ if (matcher == null)
+ {
+ Object fixup = JMXObjectNameFix.needsAnAlias(getDemand());
+ demandObject = (fixup != null) ? fixup : getDemand();
+ }
+ else
+ {
+ demandObject = matcher;
+ }
+ }
+ return demandObject;
}
public boolean resolve(Controller controller)
More information about the jboss-cvs-commits
mailing list