[jboss-cvs] JBossAS SVN: r90541 - projects/ejb3/trunk/metrics-deployer/src/main/java/org/jboss/ejb3/metrics/deployer.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Jun 24 00:30:13 EDT 2009


Author: ALRubinger
Date: 2009-06-24 00:30:11 -0400 (Wed, 24 Jun 2009)
New Revision: 90541

Modified:
   projects/ejb3/trunk/metrics-deployer/src/main/java/org/jboss/ejb3/metrics/deployer/Ejb3MetricsDeployer.java
Log:
[EJBTHREE-1839] Take EAR/JAR names into account to assemble a unique component bind name; use delimiter of "/".

Modified: projects/ejb3/trunk/metrics-deployer/src/main/java/org/jboss/ejb3/metrics/deployer/Ejb3MetricsDeployer.java
===================================================================
--- projects/ejb3/trunk/metrics-deployer/src/main/java/org/jboss/ejb3/metrics/deployer/Ejb3MetricsDeployer.java	2009-06-24 03:08:02 UTC (rev 90540)
+++ projects/ejb3/trunk/metrics-deployer/src/main/java/org/jboss/ejb3/metrics/deployer/Ejb3MetricsDeployer.java	2009-06-24 04:30:11 UTC (rev 90541)
@@ -38,7 +38,6 @@
 import org.jboss.deployers.structure.spi.DeploymentUnit;
 import org.jboss.ejb3.Container;
 import org.jboss.ejb3.Ejb3Deployment;
-import org.jboss.ejb3.javaee.JavaEEApplication;
 import org.jboss.ejb3.mdb.MessagingContainer;
 import org.jboss.ejb3.session.SessionContainer;
 import org.jboss.ejb3.stateful.StatefulContainer;
@@ -49,6 +48,7 @@
 import org.jboss.logging.Logger;
 import org.jboss.managed.api.ManagedObject;
 import org.jboss.managed.api.factory.ManagedObjectFactory;
+import org.jboss.metadata.ear.jboss.JBossAppMetaData;
 import org.jboss.metadata.spi.MetaData;
 
 /**
@@ -84,6 +84,11 @@
     */
    private ManagedObjectFactory managedObjectFactory = ManagedObjectFactory.getInstance();
 
+   /**
+    * Delimiter in constructing bind / component names
+    */
+   private static final char DELIMITER = '/';
+
    // ------------------------------------------------------------------------------||
    // Constructor ------------------------------------------------------------------||
    // ------------------------------------------------------------------------------||
@@ -141,14 +146,32 @@
          for (final Container container : containers)
          {
             // Get the EJB Name
-            String ejbName = container.getEjbName();
-            final JavaEEApplication application = deployment.getApplication();
+            final String deploymentUnitName = du.getSimpleName();
+            final StringBuilder bindNameBuilder = new StringBuilder();
+
             // If we're in an EAR
-            if (application != null)
+            final DeploymentUnit topLevelDu = du.getTopLevel();
+            boolean isEar = du != topLevelDu || topLevelDu.isAttachmentPresent(JBossAppMetaData.class);
+            if (isEar)
             {
                // Prepend the EAR name
-               ejbName = application.getName() + "-" + ejbName;
+               bindNameBuilder.append(topLevelDu.getSimpleName());
+               bindNameBuilder.append(DELIMITER);
             }
+            // JAR name
+            if (deploymentUnitName == null)
+            {
+               bindNameBuilder.append("*");
+            }
+            else
+            {
+               bindNameBuilder.append(deploymentUnitName);
+               bindNameBuilder.append(DELIMITER);
+            }
+            // EJB Name
+            final String ejbName = container.getEjbName();
+            bindNameBuilder.append(ejbName);
+            final String bindName = bindNameBuilder.toString();
 
             // Session Containers
             if (container instanceof SessionContainer)
@@ -173,8 +196,8 @@
                   final BasicStatelessSessionMetrics metrics = new BasicStatelessSessionMetrics(stats, slsb);
 
                   // Add to beanFactories
-                  this.attach(metrics, ejbName, beanFactories);
-                  log.debug("Attached metrics for: " + ejbName);
+                  this.attach(metrics, bindName, beanFactories);
+                  log.debug("Attached metrics for: " + bindName);
                }
 
                // SFSB
@@ -187,8 +210,8 @@
                   final BasicStatefulSessionMetrics metrics = new BasicStatefulSessionMetrics(stats, sfsb);
 
                   // Add to beanFactories
-                  this.attach(metrics, ejbName, beanFactories);
-                  log.debug("Attached metrics for: " + ejbName);
+                  this.attach(metrics, bindName, beanFactories);
+                  log.debug("Attached metrics for: " + bindName);
                }
 
             }
@@ -202,8 +225,8 @@
                final BasicMessageDrivenMetrics metrics = new BasicMessageDrivenMetrics(mdb);
 
                // Add to beanFactories
-               this.attach(metrics, ejbName, beanFactories);
-               log.debug("Attached stats for: " + ejbName);
+               this.attach(metrics, bindName, beanFactories);
+               log.debug("Attached stats for: " + bindName);
             }
          }
 




More information about the jboss-cvs-commits mailing list