[jboss-svn-commits] JBoss Common SVN: r2515 - in jbossxb-builder/trunk/src/test: java/org/jboss/test/ejb/metadata/test and 1 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Aug 28 05:16:20 EDT 2007


Author: alex.loubyansky at jboss.com
Date: 2007-08-28 05:16:20 -0400 (Tue, 28 Aug 2007)
New Revision: 2515

Added:
   jbossxb-builder/trunk/src/test/resources/org/jboss/test/ejb/metadata/test/JBossCMP_testEnterpriseBeans.xml
Modified:
   jbossxb-builder/trunk/src/test/java/org/jboss/ejb/metadata/jboss/cmp/JBossCMPEnterpriseBeansMetaData.java
   jbossxb-builder/trunk/src/test/java/org/jboss/ejb/metadata/jboss/cmp/JBossCMPEntityBeanMetaData.java
   jbossxb-builder/trunk/src/test/java/org/jboss/test/ejb/metadata/test/JBossCMPUnitTestCase.java
Log:
some more cmp binding

Modified: jbossxb-builder/trunk/src/test/java/org/jboss/ejb/metadata/jboss/cmp/JBossCMPEnterpriseBeansMetaData.java
===================================================================
--- jbossxb-builder/trunk/src/test/java/org/jboss/ejb/metadata/jboss/cmp/JBossCMPEnterpriseBeansMetaData.java	2007-08-27 09:48:37 UTC (rev 2514)
+++ jbossxb-builder/trunk/src/test/java/org/jboss/ejb/metadata/jboss/cmp/JBossCMPEnterpriseBeansMetaData.java	2007-08-28 09:16:20 UTC (rev 2515)
@@ -21,15 +21,11 @@
  */
 package org.jboss.ejb.metadata.jboss.cmp;
 
-import org.jboss.ejb.metadata.jboss.JBossEnterpriseBeanMetaData;
-import org.jboss.ejb.metadata.jboss.JBossEntityBeanMetaData;
-import org.jboss.ejb.metadata.jboss.JBossMessageDrivenBeanMetaData;
-import org.jboss.ejb.metadata.jboss.JBossSessionBeanMetaData;
+import javax.xml.bind.annotation.XmlType;
+
 import org.jboss.ejb.metadata.spec.EnterpriseBeanMetaData;
 import org.jboss.ejb.metadata.spec.EnterpriseBeansMetaData;
 import org.jboss.ejb.metadata.spec.EntityBeanMetaData;
-import org.jboss.ejb.metadata.spec.MessageDrivenBeanMetaData;
-import org.jboss.ejb.metadata.spec.SessionBeanMetaData;
 import org.jboss.javaee.metadata.support.AbstractMappedMetaDataWithOverride;
 
 
@@ -39,9 +35,10 @@
  * @author <a href="alex at jboss.com">Alexey Loubyansky</a>
  * @version $Revision: 1.1 $
  */
+ at XmlType(name="jbosscmp-enterprise-beansType")
 public class JBossCMPEnterpriseBeansMetaData extends AbstractMappedMetaDataWithOverride<EnterpriseBeanMetaData, JBossCMPEntityBeanMetaData, EnterpriseBeansMetaData>
 {
-   protected JBossCMPEnterpriseBeansMetaData()
+   public JBossCMPEnterpriseBeansMetaData()
    {
       super("ejb name for enterprise bean");
    }

Modified: jbossxb-builder/trunk/src/test/java/org/jboss/ejb/metadata/jboss/cmp/JBossCMPEntityBeanMetaData.java
===================================================================
--- jbossxb-builder/trunk/src/test/java/org/jboss/ejb/metadata/jboss/cmp/JBossCMPEntityBeanMetaData.java	2007-08-27 09:48:37 UTC (rev 2514)
+++ jbossxb-builder/trunk/src/test/java/org/jboss/ejb/metadata/jboss/cmp/JBossCMPEntityBeanMetaData.java	2007-08-28 09:16:20 UTC (rev 2515)
@@ -23,11 +23,16 @@
 
 import java.util.List;
 
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElementWrapper;
 import javax.xml.bind.annotation.XmlTransient;
+import javax.xml.bind.annotation.XmlType;
 
 import org.jboss.ejb.metadata.spec.EnterpriseBeanMetaData;
 import org.jboss.ejb.metadata.spec.EntityBeanMetaData;
 import org.jboss.javaee.metadata.support.NamedMetaDataWithDescriptionGroupWithOverride;
+import org.jboss.xb.annotations.JBossXmlConstants;
+import org.jboss.xb.annotations.JBossXmlModelGroup;
 
 
 /**
@@ -36,13 +41,16 @@
  * @author <a href="alex at jboss.com">Alexey Loubyansky</a>
  * @version $Revision: 1.1 $
  */
+ at JBossXmlModelGroup(
+      kind=JBossXmlConstants.MODEL_GROUP_CHOICE,
+      particles={
+            @JBossXmlModelGroup.Particle(element=@XmlElement(name="entity"), type=JBossCMPEntityBeanMetaData.class)})
+ at XmlType(name="jbosscmp-entityType")
 public class JBossCMPEntityBeanMetaData extends NamedMetaDataWithDescriptionGroupWithOverride<EnterpriseBeanMetaData>
 {
    /** The serialVersionUID */
    private static final long serialVersionUID = -4847975458333924853L;
    
-   private String ejbName;
-   
    private String datasource;
    private String datasourceMapping;
    private boolean createTable;
@@ -135,22 +143,27 @@
    {
       this.eagerLoadGroup = eagerLoadGroup;
    }
+   
    public String getEjbName()
    {
-      return ejbName;
+      return getName();
    }
+   
    public void setEjbName(String ejbName)
    {
-      this.ejbName = ejbName;
+      setName(ejbName);
    }
+   
    public JBossCMPEntityCommandMetaData getEntityCommand()
    {
       return entityCommand;
    }
+   
    public void setEntityCommand(JBossCMPEntityCommandMetaData entityCommand)
    {
       this.entityCommand = entityCommand;
    }
+   
    public long getFetchSize()
    {
       return fetchSize;
@@ -199,14 +212,19 @@
    {
       this.pkConstraint = pkConstraint;
    }
+   
    public List<String> getPostTableCreate()
    {
       return postTableCreate;
    }
+   
+   @XmlElementWrapper
+   @XmlElement(name="sql-statement")
    public void setPostTableCreate(List<String> postTableCreate)
    {
       this.postTableCreate = postTableCreate;
    }
+   
    public List<JBossCMPQueryMetaData> getQueries()
    {
       return queries;

Modified: jbossxb-builder/trunk/src/test/java/org/jboss/test/ejb/metadata/test/JBossCMPUnitTestCase.java
===================================================================
--- jbossxb-builder/trunk/src/test/java/org/jboss/test/ejb/metadata/test/JBossCMPUnitTestCase.java	2007-08-27 09:48:37 UTC (rev 2514)
+++ jbossxb-builder/trunk/src/test/java/org/jboss/test/ejb/metadata/test/JBossCMPUnitTestCase.java	2007-08-28 09:16:20 UTC (rev 2515)
@@ -27,6 +27,8 @@
 import junit.framework.Test;
 
 import org.jboss.ejb.metadata.jboss.cmp.JBossCMPDefaultsMetaData;
+import org.jboss.ejb.metadata.jboss.cmp.JBossCMPEnterpriseBeansMetaData;
+import org.jboss.ejb.metadata.jboss.cmp.JBossCMPEntityBeanMetaData;
 import org.jboss.ejb.metadata.jboss.cmp.JBossCMPEntityCommandMetaData;
 import org.jboss.ejb.metadata.jboss.cmp.JBossCMPMetaData;
 import org.jboss.ejb.metadata.jboss.cmp.JBossCMPPreferredRelationMapping;
@@ -304,4 +306,59 @@
          assertEquals("word" + (i + 1),  reservedWords.get(i));
       }
    }
+
+   public void testEnterpriseBeans() throws Exception
+   {
+      //enableTrace("org.jboss.xb.builder");
+
+      JBossCMPMetaData jbossMetaData = unmarshal();    
+      assertNotNull(jbossMetaData);
+      assertNull(jbossMetaData.getDefaults());
+      assertNull(jbossMetaData.getTypeMappings());
+      assertNull(jbossMetaData.getEntityCommands());
+      assertNull(jbossMetaData.getReservedWords());
+      
+      JBossCMPEnterpriseBeansMetaData enterpriseBeans = jbossMetaData.getEnterpriseBeans();
+      assertNotNull(enterpriseBeans);
+      assertEquals(2, enterpriseBeans.size());
+      
+      JBossCMPEntityBeanMetaData entity = enterpriseBeans.get("entity1EjbName");
+      assertNotNull(entity);
+      assertEquals("entity1EjbName", entity.getEjbName());
+      assertNull(entity.getAudit());
+      assertNull(entity.getCmpFields());
+      assertNull(entity.getDatasource());
+      assertNull(entity.getDatasourceMapping());
+      assertNull(entity.getEagerLoadGroup());
+      assertNull(entity.getEntityCommand());
+      assertEquals(0, entity.getFetchSize());
+      assertNull(entity.getLazyLoadGroups());
+      assertEquals(0, entity.getListCacheMax());
+      assertNull(entity.getLoadGroups());
+      assertNull(entity.getOptimisticLocking());
+      assertNull(entity.getPostTableCreate());
+      assertNull(entity.getQueries());
+      assertNull(entity.getReadAhead());
+      assertEquals(0, entity.getReadTimeOut());
+      assertNull(entity.getTableName());
+      assertNull(entity.getUnknownPk());
+      assertFalse(entity.isCleanReadAheadOnLoad());
+      assertFalse(entity.isCreateTable());
+      assertFalse(entity.isPkConstraint());
+      assertFalse(entity.isReadOnly());
+      assertFalse(entity.isRemoveTable());
+      assertFalse(entity.isRowLocking());
+
+      entity = enterpriseBeans.get("entity2EjbName");
+      assertNotNull(entity);
+      assertEquals("entity2EjbName", entity.getEjbName());
+      assertEquals("java:/DefaultDS", entity.getDatasource());
+      assertEquals("Hypersonic SQL", entity.getDatasourceMapping());
+      assertTrue(entity.isCreateTable());
+      assertTrue(entity.isRemoveTable());
+      assertTrue(entity.isReadOnly());
+      assertEquals(1000, entity.getReadTimeOut());
+      assertTrue(entity.isRowLocking());
+      assertTrue(entity.isPkConstraint());
+   }
 }

Added: jbossxb-builder/trunk/src/test/resources/org/jboss/test/ejb/metadata/test/JBossCMP_testEnterpriseBeans.xml
===================================================================
--- jbossxb-builder/trunk/src/test/resources/org/jboss/test/ejb/metadata/test/JBossCMP_testEnterpriseBeans.xml	                        (rev 0)
+++ jbossxb-builder/trunk/src/test/resources/org/jboss/test/ejb/metadata/test/JBossCMP_testEnterpriseBeans.xml	2007-08-28 09:16:20 UTC (rev 2515)
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<jbosscmp-jdbc xmlns="http://www.jboss.com/xml/ns/javaee/cmp2x"
+       xmlns:jee="http://java.sun.com/xml/ns/javaee"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee/cmp2x http://www.jboss.org/j2ee/schema/jbosscmp-jdbc_5_0.xsd">
+
+   <enterprise-beans>
+      <entity>
+         <ejb-name>entity1EjbName</ejb-name>
+      </entity>
+
+      <entity>
+         <ejb-name>entity2EjbName</ejb-name>
+         <datasource>java:/DefaultDS</datasource>
+         <datasource-mapping>Hypersonic SQL</datasource-mapping>
+         <create-table>true</create-table>
+         <remove-table>true</remove-table>
+
+         <post-table-create>
+            <sql-statement>alter table 1</sql-statement>
+            <sql-statement>alter table 2</sql-statement>
+            <sql-statement>alter table 3</sql-statement>
+         </post-table-create>
+
+         <read-only>true</read-only>
+         <read-time-out>1000</read-time-out>
+         <row-locking>true</row-locking>
+         <pk-constraint>true</pk-constraint>
+      </entity>
+   </enterprise-beans>
+
+</jbosscmp-jdbc>




More information about the jboss-svn-commits mailing list