[jboss-cvs] JBossAS SVN: r67176 - in projects/metadata/trunk/src: main/java/org/jboss/metadata/ejb/jboss and 2 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Nov 16 11:16:40 EST 2007


Author: alex.loubyansky at jboss.com
Date: 2007-11-16 11:16:39 -0500 (Fri, 16 Nov 2007)
New Revision: 67176

Modified:
   projects/metadata/trunk/src/main/java/org/jboss/metadata/BeanMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossMessageDrivenBeanMetaData.java
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss50UnitTestCase.java
   projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss50_testInvokerDefaultJndiName.xml
Log:
set the default invoker jndi name for mdb to its ejb-name

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/BeanMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/BeanMetaData.java	2007-11-16 15:44:45 UTC (rev 67175)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/BeanMetaData.java	2007-11-16 16:16:39 UTC (rev 67176)
@@ -528,7 +528,7 @@
       String bindingName = binding.getJndiName();
       if(bindingName == null)
       {
-         bindingName = getJndiName();
+         bindingName = isMessageDriven() ? getEjbName() : getJndiName();
       }
       return bindingName;
    }

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossMessageDrivenBeanMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossMessageDrivenBeanMetaData.java	2007-11-16 15:44:45 UTC (rev 67175)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossMessageDrivenBeanMetaData.java	2007-11-16 16:16:39 UTC (rev 67176)
@@ -367,11 +367,17 @@
    }
 
    @Override
-   public String getDefaultInvokerName()
+   protected String getDefaultInvokerName()
    {
       return InvokerBindingMetaData.MESSAGE_DRIVEN;
    }
 
+   @Override
+   protected String getDefaultInvokerJndiName()
+   {
+      return getEjbName();
+   }
+
    /**
     * Get the destinationJndiName.
     * 

Modified: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss50UnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss50UnitTestCase.java	2007-11-16 15:44:45 UTC (rev 67175)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss50UnitTestCase.java	2007-11-16 16:16:39 UTC (rev 67176)
@@ -755,22 +755,44 @@
    
    public void testInvokerDefaultJndiName() throws Exception
    {
+      JBossXBTestDelegate xbdelegate = (JBossXBTestDelegate) super.getDelegate();
+      xbdelegate.setValidateSchema(false);
+
       JBossMetaData result = unmarshal();
-      JBossEnterpriseBeanMetaData session = (JBossSessionBeanMetaData) result.getEnterpriseBean("SessionEjbName");
-      assertNotNull(session);
-      InvokerBindingsMetaData invokerBindings = session.getInvokerBindings();
+      JBoss50MetaData stdMetaData = unmarshal("JBoss5xEverything_testStandard.xml", JBoss50MetaData.class, null);
+
+      JBossEnterpriseBeanMetaData bean = result.getEnterpriseBean("SessionEjbName");
+      assertNotNull(bean);
+      InvokerBindingsMetaData invokerBindings = bean.getInvokerBindings();
       assertNotNull(invokerBindings);
       assertEquals(1, invokerBindings.size());
       InvokerBindingMetaData invokerBindingMetaData = invokerBindings.get("sessionInvokerProxyBindingName");
       assertNotNull(invokerBindingMetaData);
       assertEquals("sessionInvokerProxyBindingName", invokerBindingMetaData.getInvokerProxyBindingName());
       assertNull(invokerBindingMetaData.getJndiName());
+
+      JBossMetaDataWrapper jbossWrapper = new JBossMetaDataWrapper(result, stdMetaData);
+      ApplicationMetaData app = new ApplicationMetaData(jbossWrapper);
+      BeanMetaData wrapper = app.getBeanByEjbName("SessionEjbName");
+      assertNotNull(wrapper);
+      String invokerJndiName = wrapper.getInvokerBinding("sessionInvokerProxyBindingName");
+      assertEquals("SessionEjbName", invokerJndiName);
       
-      ApplicationMetaData app = new ApplicationMetaData(result);
-      BeanMetaData bean = app.getBeanByEjbName("SessionEjbName");
+      bean = result.getEnterpriseBean("MdbEjbName");
       assertNotNull(bean);
-      String invokerBinding = bean.getInvokerBinding("sessionInvokerProxyBindingName");
-      assertEquals("SessionEjbName", invokerBinding);
+      invokerBindings = bean.getInvokerBindings();
+      assertNull(invokerBindings);
+      invokerBindings = bean.determineInvokerBindings();
+      assertNotNull(invokerBindings);
+      assertEquals(1, invokerBindings.size());
+      InvokerBindingMetaData invokerBinding = invokerBindings.get(InvokerBindingMetaData.MESSAGE_DRIVEN);
+      assertNotNull(invokerBinding);
+      assertEquals(bean.getEjbName(), invokerBinding.getJndiName());
+      
+      wrapper = app.getBeanByEjbName("MdbEjbName");
+      assertNotNull(wrapper);
+      invokerJndiName = wrapper.getInvokerBinding(InvokerBindingMetaData.MESSAGE_DRIVEN);
+      assertEquals(wrapper.getEjbName(), invokerJndiName);
    }
 
    protected void validateResourceRefs(JBossMetaData jbossMetaData)

Modified: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss50_testInvokerDefaultJndiName.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss50_testInvokerDefaultJndiName.xml	2007-11-16 15:44:45 UTC (rev 67175)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss50_testInvokerDefaultJndiName.xml	2007-11-16 16:16:39 UTC (rev 67176)
@@ -12,5 +12,9 @@
                </invoker>
             </invoker-bindings>
         </session>
+        <message-driven>
+            <ejb-name>MdbEjbName</ejb-name>
+            <destination-jndi-name>MDB_QUEUE_BMT_DEST</destination-jndi-name>
+        </message-driven>
     </enterprise-beans>
 </jboss>




More information about the jboss-cvs-commits mailing list