[jboss-cvs] JBossAS SVN: r80238 - in projects/metadata/trunk/src: main/resources/schema and 6 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Oct 30 06:26:59 EDT 2008


Author: emuckenhuber
Date: 2008-10-30 06:26:59 -0400 (Thu, 30 Oct 2008)
New Revision: 80238

Added:
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/jbmeta119/
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/jbmeta119/unit/
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/jbmeta119/unit/LocalBindingsUnitTestCase.java
   projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/jbmeta119/
   projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/jbmeta119/unit/
   projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/jbmeta119/unit/LocalBindings_testLocalBindingParsing.xml
Modified:
   projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossSessionBeanMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/LocalBindingMetaData.java
   projects/metadata/trunk/src/main/resources/schema/jboss_5_0.xsd
Log:
[JBMETA-119] xml part for local-binding

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossSessionBeanMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossSessionBeanMetaData.java	2008-10-30 09:15:24 UTC (rev 80237)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossSessionBeanMetaData.java	2008-10-30 10:26:59 UTC (rev 80238)
@@ -833,7 +833,7 @@
     * 
     * @param the localBindings
     */
-   // @XmlElement(name = "local-binding", required = false)
+   @XmlElement(name = "local-binding", required = false)
    public void setLocalBindings(List<LocalBindingMetaData> localBindings)
    {
       this.localBindings = localBindings;

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/LocalBindingMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/LocalBindingMetaData.java	2008-10-30 09:15:24 UTC (rev 80237)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/LocalBindingMetaData.java	2008-10-30 10:26:59 UTC (rev 80238)
@@ -21,6 +21,8 @@
  */
 package org.jboss.metadata.ejb.jboss;
 
+import javax.xml.bind.annotation.XmlType;
+
 import org.jboss.metadata.javaee.support.IdMetaDataImplWithDescriptions;
 
 /**
@@ -29,7 +31,7 @@
  * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
  * @version $Revision$
  */
-//@XmlType(name="local-bindingType")
+ at XmlType(name="local-bindingType")
 public class LocalBindingMetaData extends IdMetaDataImplWithDescriptions
 {
 

Modified: projects/metadata/trunk/src/main/resources/schema/jboss_5_0.xsd
===================================================================
--- projects/metadata/trunk/src/main/resources/schema/jboss_5_0.xsd	2008-10-30 09:15:24 UTC (rev 80237)
+++ projects/metadata/trunk/src/main/resources/schema/jboss_5_0.xsd	2008-10-30 10:26:59 UTC (rev 80238)
@@ -824,6 +824,7 @@
          <xsd:element name="object-name" type="jboss:jmx-nameType" minOccurs="0"/>
          <xsd:element name="management" type="jboss:managementType" minOccurs="0"/>
          <xsd:element name="xmbean" type="jboss:xmbeanType" minOccurs="0"/>
+         <xsd:element name="local-binding" type="jboss:local-bindingType" minOccurs="0" maxOccurs="unbounded"/>
          <xsd:element name="remote-binding" type="jboss:remote-bindingType" minOccurs="0" maxOccurs="unbounded"/>
          <xsd:element name="jndi-name" type="javaee:jndi-nameType" minOccurs="0"/>
          <xsd:element name="local-jndi-name" type="jboss:local-jndi-nameType" minOccurs="0"/>
@@ -924,6 +925,7 @@
          <xsd:element name="mapped-name" type="javaee:xsdStringType" minOccurs="0"/>
          <xsd:group ref="jboss:jndiEnvironmentRefsGroup"/>
          <xsd:element name="security-identity" type="javaee:security-identityType" minOccurs="0"/>
+         <xsd:element name="local-binding" type="jboss:local-bindingType" minOccurs="0" maxOccurs="unbounded"/>
          <xsd:element name="remote-binding" type="jboss:remote-bindingType" minOccurs="0" maxOccurs="unbounded"/>
          <xsd:element name="jndi-name" type="javaee:jndi-nameType" minOccurs="0"/>
          <xsd:element name="home-jndi-name" type="javaee:jndi-nameType" minOccurs="0"/>
@@ -1211,6 +1213,18 @@
 
    <!-- **************************************************** -->
 
+   <xsd:complexType name="local-bindingType">
+      <xsd:annotation>
+         <xsd:documentation>Element for specifying the local jndi binding for a bean.
+         </xsd:documentation>
+      </xsd:annotation>
+      <xsd:sequence>
+         <xsd:element name="jndi-name" type="javaee:jndi-nameType" minOccurs="0"/>
+      </xsd:sequence>
+   </xsd:complexType>
+
+   <!-- **************************************************** -->
+
    <xsd:complexType name="remote-bindingType">
       <xsd:annotation>
          <xsd:documentation>Element for specifying the remote jndi binding for a bean as well

Added: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/jbmeta119/unit/LocalBindingsUnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/jbmeta119/unit/LocalBindingsUnitTestCase.java	                        (rev 0)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/jbmeta119/unit/LocalBindingsUnitTestCase.java	2008-10-30 10:26:59 UTC (rev 80238)
@@ -0,0 +1,83 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.metadata.jbmeta119.unit;
+
+import java.util.List;
+
+import org.jboss.metadata.ejb.jboss.JBoss50MetaData;
+import org.jboss.metadata.ejb.jboss.JBossMetaData;
+import org.jboss.metadata.ejb.jboss.JBossServiceBeanMetaData;
+import org.jboss.metadata.ejb.jboss.JBossSessionBeanMetaData;
+import org.jboss.metadata.ejb.jboss.LocalBindingMetaData;
+import org.jboss.test.metadata.javaee.AbstractJavaEEEverythingTest;
+import org.jboss.xb.binding.sunday.unmarshalling.DefaultSchemaResolver;
+import org.jboss.xb.binding.sunday.unmarshalling.SchemaBindingResolver;
+
+/**
+ * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
+ * @version $Revision$
+ */
+public class LocalBindingsUnitTestCase extends AbstractJavaEEEverythingTest
+{
+   
+   public static SchemaBindingResolver initResolver()
+   {
+      DefaultSchemaResolver resolver = new DefaultSchemaResolver();
+      resolver.addClassBindingForLocation("jboss_5_0.xsd", JBoss50MetaData.class);
+      return resolver;
+   }
+
+
+   public LocalBindingsUnitTestCase(String name)
+   {
+      super(name);
+   }
+
+   public void testLocalBindingParsing() throws Exception
+   {
+      JBossMetaData metaData = unmarshal(JBoss50MetaData.class);
+      assertNotNull(metaData);
+      
+      JBossSessionBeanMetaData session = (JBossSessionBeanMetaData) metaData.getEnterpriseBean("SessionBean");
+      assertNotNull(session);
+      assertLocalBinding("LocalJndiBinding", session.getLocalBindings());
+      assertEquals("jndiNameSessionBean", session.getJndiName());
+      assertEquals("homeJndiNameSessionBean", session.getHomeJndiName());
+      
+      JBossServiceBeanMetaData service = (JBossServiceBeanMetaData) metaData.getEnterpriseBean("ServiceBean");
+      assertNotNull(service);
+      assertLocalBinding("LocalJndiServiceBinding", service.getLocalBindings());
+      assertEquals("jndiNameServiceBean", service.getJndiName());
+      assertEquals("homeJndiNameServiceBean", service.getHomeJndiName());
+   }
+   
+   private void assertLocalBinding(String jndiName, List<LocalBindingMetaData> localBindings)
+   {
+      assertNotNull(localBindings);
+      assertFalse(localBindings.isEmpty());
+      assertEquals(1, localBindings.size());
+      LocalBindingMetaData localBinding = localBindings.get(0);
+      assertNotNull(localBinding);
+      assertEquals(jndiName, localBinding.getJndiName());
+   }
+}
+

Added: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/jbmeta119/unit/LocalBindings_testLocalBindingParsing.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/jbmeta119/unit/LocalBindings_testLocalBindingParsing.xml	                        (rev 0)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/jbmeta119/unit/LocalBindings_testLocalBindingParsing.xml	2008-10-30 10:26:59 UTC (rev 80238)
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<jboss xmlns="http://www.jboss.com/xml/ns/javaee" 
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee http://www.jboss.org/j2ee/schema/jboss_5_0.xsd"
+       version="3.0">
+  <unauthenticated-principal>guest</unauthenticated-principal>
+  <enterprise-beans>
+    <session>
+      <ejb-name>SessionBean</ejb-name>
+      <local-binding>
+      	<jndi-name>LocalJndiBinding</jndi-name> 
+      </local-binding>
+      <jndi-name>jndiNameSessionBean</jndi-name>
+      <home-jndi-name>homeJndiNameSessionBean</home-jndi-name>
+    </session>
+    <service>
+      <ejb-name>ServiceBean</ejb-name>
+      <local-binding>
+      	<jndi-name>LocalJndiServiceBinding</jndi-name> 
+      </local-binding>
+      <jndi-name>jndiNameServiceBean</jndi-name>
+      <home-jndi-name>homeJndiNameServiceBean</home-jndi-name>
+    </service>
+  </enterprise-beans>
+</jboss>
\ No newline at end of file




More information about the jboss-cvs-commits mailing list