[jboss-cvs] JBossAS SVN: r62775 - trunk/ejb3/src/main/org/jboss/ejb3.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu May 3 00:06:10 EDT 2007


Author: bstansberry at jboss.com
Date: 2007-05-03 00:06:10 -0400 (Thu, 03 May 2007)
New Revision: 62775

Modified:
   trunk/ejb3/src/main/org/jboss/ejb3/EJBContainer.java
Log:
[EJBTHREE-946] [EJBTHREE-948] [EJBTHREE-949] Use deployment-qualified ejb name in identifiers

Modified: trunk/ejb3/src/main/org/jboss/ejb3/EJBContainer.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/EJBContainer.java	2007-05-03 04:05:14 UTC (rev 62774)
+++ trunk/ejb3/src/main/org/jboss/ejb3/EJBContainer.java	2007-05-03 04:06:10 UTC (rev 62775)
@@ -189,7 +189,7 @@
          throw new RuntimeException(e);
       }
       this.ejbName = ejbName;
-      String on = Ejb3Module.BASE_EJB3_JMX_NAME + deployment.getScopeKernelName() + ",name=" + ejbName;
+      String on = Ejb3Module.BASE_EJB3_JMX_NAME + "," + getDeploymentQualifiedName();
       try
       {
          objectName = new ObjectName(on);
@@ -270,6 +270,31 @@
       return getDeploymentUnit().getRootFile();
    }
    
+   /**
+    * Returns a String identifier for this bean that is qualified by the
+    * deployment, and hence should be unique across deployments. Name is of the 
+    * form "ear=foo.ear,jar=foo.jar,name=Bar", where "Bar" is the value 
+    * returned by {@link #getEjbName()}. The "ear=foo.ear" portion is ommitted 
+    * if the bean is not packaged in an ear.
+    */
+   public String getDeploymentQualifiedName()
+   {
+      DeploymentScope ear = deployment.getEar();
+      DeploymentUnit unit = deployment.getDeploymentUnit();
+      StringBuilder sb = new StringBuilder();
+      if (ear != null)
+      {
+         sb.append("ear=");
+         sb.append(ear.getShortName());
+         sb.append(",");
+      }
+      sb.append("jar=");
+      sb.append(unit.getShortName());
+      sb.append(",name=");
+      sb.append(getEjbName());
+      return sb.toString();
+   }
+   
    public DeploymentUnit getDeploymentUnit()
    {
       return deployment.getDeploymentUnit();




More information about the jboss-cvs-commits mailing list