[jboss-cvs] JBossAS SVN: r66408 - 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
Wed Oct 24 21:25:23 EDT 2007


Author: scott.stark at jboss.org
Date: 2007-10-24 21:25:23 -0400 (Wed, 24 Oct 2007)
New Revision: 66408

Modified:
   projects/metadata/trunk/src/main/java/org/jboss/metadata/BeanMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/EntityMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/MessageDrivenMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/SessionMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/ClusterConfigMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeanMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeansMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEntityBeanMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossMessageDrivenBeanMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/support/NamedMetaDataWithDescriptionGroup.java
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/EJBMetaDataTestSuite.java
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss50UnitTestCase.java
Log:
Completely remove all override metadata from jboss view

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/BeanMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/BeanMetaData.java	2007-10-25 00:59:17 UTC (rev 66407)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/BeanMetaData.java	2007-10-25 01:25:23 UTC (rev 66408)
@@ -71,7 +71,7 @@
  * @version $Revision: 45953 $
  */
 @Deprecated
-public abstract class BeanMetaData extends OldMetaDataWithOverride<JBossEnterpriseBeanMetaData, EnterpriseBeanMetaData>
+public abstract class BeanMetaData extends OldMetaData<JBossEnterpriseBeanMetaData>
 {
    /** Session type */
    public static final char SESSION_TYPE = 'S';
@@ -213,7 +213,7 @@
     */
    public String getEjbClass()
    {
-      return getOverridenDelegate().getEjbClass();
+      return getDelegate().getEjbClass();
    }
 
    /**
@@ -223,7 +223,7 @@
     */
    public boolean isContainerManagedTx()
    {
-      return getOverridenDelegate().isCMT();
+      return getDelegate().isCMT();
    }
 
    /**
@@ -233,7 +233,7 @@
     */
    public boolean isBeanManagedTx()
    {
-      return getOverridenDelegate().isBMT();
+      return getDelegate().isBMT();
    }
 
    /**
@@ -369,7 +369,7 @@
     */
    public Iterator<MethodMetaData> getTransactionMethods()
    {
-      ContainerTransactionsMetaData transactions = getOverridenDelegate().getContainerTransactions();
+      ContainerTransactionsMetaData transactions = getDelegate().getContainerTransactions();
       return new TransactionMethodMetaDataIterator(transactions);
    }
 
@@ -383,7 +383,7 @@
     */
    public byte getMethodTransactionType(String methodName, Class[] params, InvocationType iface)
    {
-      TransAttributeType type = getOverridenDelegate().getMethodTransactionType(methodName, params, invocationTypeToMethodInterfaceType(iface));
+      TransAttributeType type = getDelegate().getMethodTransactionType(methodName, params, invocationTypeToMethodInterfaceType(iface));
       return mapTransactionType(type);
    }
 
@@ -403,7 +403,7 @@
       if (b != null) 
          return b;
 
-      TransAttributeType type = getOverridenDelegate().getMethodTransactionType(m, invocationTypeToMethodInterfaceType(iface));
+      TransAttributeType type = getDelegate().getMethodTransactionType(m, invocationTypeToMethodInterfaceType(iface));
       byte result = mapTransactionType(type);
 
       // provide default if method is not found in descriptor
@@ -421,7 +421,7 @@
     */
    public Iterator<MethodMetaData> getPermissionMethods()
    {
-      MethodPermissionsMetaData methodPermissions = getOverridenDelegate().getMethodPermissions();
+      MethodPermissionsMetaData methodPermissions = getDelegate().getMethodPermissions();
       return new PermissionMethodMetaDataIterator(methodPermissions);
    }
 
@@ -439,7 +439,7 @@
     */
    public Iterator<MethodMetaData> getExcludedMethods()
    {
-      ExcludeListMetaData excluded = getOverridenDelegate().getExcludeList();
+      ExcludeListMetaData excluded = getDelegate().getExcludeList();
       return new ExcludedMethodMetaDataIterator(excluded);
    }
 

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/EntityMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/EntityMetaData.java	2007-10-25 00:59:17 UTC (rev 66407)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/EntityMetaData.java	2007-10-25 01:25:23 UTC (rev 66408)
@@ -89,33 +89,27 @@
    }
 
    @Override
-   public EntityBeanMetaData getOverridenDelegate()
-   {
-      return (EntityBeanMetaData) super.getOverridenDelegate();
-   }
-   
-   @Override
    public String getHome()
    {
-      return getOverridenDelegate().getHome();
+      return getDelegate().getHome();
    }
 
    @Override
    public String getLocal()
    {
-      return getOverridenDelegate().getLocal();
+      return getDelegate().getLocal();
    }
 
    @Override
    public String getLocalHome()
    {
-      return getOverridenDelegate().getLocalHome();
+      return getDelegate().getLocalHome();
    }
 
    @Override
    public String getRemote()
    {
-      return getOverridenDelegate().getRemote();
+      return getDelegate().getRemote();
    }
 
    @Override
@@ -131,7 +125,7 @@
     */
    public boolean isCMP()
    {
-      return getOverridenDelegate().isCMP();
+      return getDelegate().isCMP();
    }
 
    /**
@@ -141,7 +135,7 @@
     */
    public boolean isCMP1x()
    {
-      return getOverridenDelegate().isCMP1x();
+      return getDelegate().isCMP1x();
    }
 
    /**
@@ -156,7 +150,7 @@
 
    public boolean isBMP()
    {
-      return getOverridenDelegate().isBMP();
+      return getDelegate().isBMP();
    }
 
    /**
@@ -166,7 +160,7 @@
     */
    public String getPrimaryKeyClass()
    {
-      return getOverridenDelegate().getPrimKeyClass();
+      return getDelegate().getPrimKeyClass();
    }
 
    /**
@@ -176,7 +170,7 @@
     */
    public boolean isReentrant()
    {
-      return getOverridenDelegate().isReentrant();
+      return getDelegate().isReentrant();
    }
 
    /**
@@ -186,7 +180,7 @@
     */
    public String getAbstractSchemaName()
    {
-      return getOverridenDelegate().getAbstractSchemaName();
+      return getDelegate().getAbstractSchemaName();
    }
 
    /**
@@ -196,7 +190,7 @@
     */
    public Iterator<String> getCMPFields()
    {
-      CMPFieldsMetaData result = getOverridenDelegate().getCmpFields();
+      CMPFieldsMetaData result = getDelegate().getCmpFields();
       if (result != null)
          return new CMPFieldIterator(result);
       List<String> list = Collections.emptyList();
@@ -210,12 +204,12 @@
     */
    public String getPrimKeyField()
    {
-      return getOverridenDelegate().getPrimKeyField();
+      return getDelegate().getPrimKeyField();
    }
 
    public Iterator<QueryMetaData> getQueries()
    {
-      QueriesMetaData result = getOverridenDelegate().getQueries();
+      QueriesMetaData result = getDelegate().getQueries();
       return new OldMetaDataIterator<org.jboss.metadata.ejb.spec.QueryMetaData, QueryMetaData>(result, org.jboss.metadata.ejb.spec.QueryMetaData.class, QueryMetaData.class);
    }
 
@@ -257,7 +251,7 @@
    @Override
    public Iterator<SecurityRoleRefMetaData> getSecurityRoleReferences()
    {
-      SecurityRoleRefsMetaData roleRefs = getOverridenDelegate().getSecurityRoleRefs();
+      SecurityRoleRefsMetaData roleRefs = getDelegate().getSecurityRoleRefs();
       return new OldMetaDataIterator<org.jboss.metadata.javaee.spec.SecurityRoleRefMetaData, SecurityRoleRefMetaData>(roleRefs, org.jboss.metadata.javaee.spec.SecurityRoleRefMetaData.class, SecurityRoleRefMetaData.class);
    }
 

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/MessageDrivenMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/MessageDrivenMetaData.java	2007-10-25 00:59:17 UTC (rev 66407)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/MessageDrivenMetaData.java	2007-10-25 01:25:23 UTC (rev 66408)
@@ -109,12 +109,6 @@
    }
 
    @Override
-   public MessageDrivenBeanMetaData getOverridenDelegate()
-   {
-      return (MessageDrivenBeanMetaData) super.getOverridenDelegate();
-   }
-   
-   @Override
    public String getHome()
    {
       return null;
@@ -151,7 +145,7 @@
     */
    public String getMessagingType()
    {
-      return getOverridenDelegate().getMessagingType();
+      return getDelegate().getMessagingType();
    }
 
    /**
@@ -161,7 +155,7 @@
     */
    public boolean isJMSMessagingType()
    {
-      return getOverridenDelegate().isJMS();
+      return getDelegate().isJMS();
    }
 
    /**
@@ -171,7 +165,7 @@
     */
    public String getDestinationType()
    {
-      return getOverridenDelegate().getMessageDestinationType();
+      return getDelegate().getMessageDestinationType();
    }
 
    /**
@@ -181,7 +175,7 @@
     */
    public String getDestinationLink()
    {
-      return getOverridenDelegate().getMessageDestinationLink();
+      return getDelegate().getMessageDestinationLink();
    }
 
    /**
@@ -192,7 +186,7 @@
    public HashMap<String, ActivationConfigPropertyMetaData> getActivationConfigProperties()
    {
       HashMap<String, ActivationConfigPropertyMetaData> result = new LinkedHashMap<String, ActivationConfigPropertyMetaData>();
-      ActivationConfigMetaData config = getOverridenDelegate().getActivationConfig();
+      ActivationConfigMetaData config = getDelegate().getActivationConfig();
       if (config != null)
       {
          ActivationConfigPropertiesMetaData properties = config.getActivationConfigProperties();
@@ -213,7 +207,7 @@
     */
    public ActivationConfigPropertyMetaData getActivationConfigProperty(String name)
    {
-      ActivationConfigMetaData config = getOverridenDelegate().getActivationConfig();
+      ActivationConfigMetaData config = getDelegate().getActivationConfig();
       if (config != null)
       {
          ActivationConfigPropertiesMetaData properties = config.getActivationConfigProperties();
@@ -307,7 +301,7 @@
       else
       {
          // TODO LAST enum for acknowledge mode
-         String ack = getOverridenDelegate().getAcknowledgeMode();
+         String ack = getDelegate().getAcknowledgeMode();
          if (ack == null || ack.equalsIgnoreCase("Auto-acknowledge") || ack.equalsIgnoreCase("AUTO_ACKNOWLEDGE"))
             return AUTO_ACKNOWLEDGE_MODE;
          else if (ack.equalsIgnoreCase("Dups-ok-acknowledge") || ack.equalsIgnoreCase("DUPS_OK_ACKNOWLEDGE"))
@@ -323,7 +317,7 @@
     */
    public String getMessageSelector()
    {
-      return getOverridenDelegate().getMessageSelector();
+      return getDelegate().getMessageSelector();
    }
    
    /**
@@ -384,7 +378,7 @@
     */
    public byte getSubscriptionDurability()
    {
-      SubscriptionDurability durability = getOverridenDelegate().getSubscriptionDurability();
+      SubscriptionDurability durability = getDelegate().getSubscriptionDurability();
       if (durability == SubscriptionDurability.Durable)
          return DURABLE_SUBSCRIPTION;
       else

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/SessionMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/SessionMetaData.java	2007-10-25 00:59:17 UTC (rev 66407)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/SessionMetaData.java	2007-10-25 01:25:23 UTC (rev 66408)
@@ -84,39 +84,33 @@
    }
 
    @Override
-   public SessionBeanMetaData getOverridenDelegate()
-   {
-      return (SessionBeanMetaData) super.getOverridenDelegate();
-   }
-
-   @Override
    public String getHome()
    {
-      return getOverridenDelegate().getHome();
+      return getDelegate().getHome();
    }
 
    @Override
    public String getLocal()
    {
-      return getOverridenDelegate().getLocal();
+      return getDelegate().getLocal();
    }
 
    @Override
    public String getLocalHome()
    {
-      return getOverridenDelegate().getLocalHome();
+      return getDelegate().getLocalHome();
    }
 
    @Override
    public String getRemote()
    {
-      return getOverridenDelegate().getRemote();
+      return getDelegate().getRemote();
    }
 
    @Override
    public String getServiceEndpoint()
    {
-      return getOverridenDelegate().getServiceEndpoint();
+      return getDelegate().getServiceEndpoint();
    }
 
    /**
@@ -126,7 +120,7 @@
     */
    public boolean isStateful()
    {
-      return getOverridenDelegate().isStateful();
+      return getDelegate().isStateful();
    }
 
    /**
@@ -136,7 +130,7 @@
     */
    public boolean isStateless()
    {
-      return getOverridenDelegate().isStateless();
+      return getDelegate().isStateless();
    }
 
    @Override
@@ -167,7 +161,7 @@
    @Override
    public Iterator<SecurityRoleRefMetaData> getSecurityRoleReferences()
    {
-      SecurityRoleRefsMetaData roleRefs = getOverridenDelegate().getSecurityRoleRefs();
+      SecurityRoleRefsMetaData roleRefs = getDelegate().getSecurityRoleRefs();
       return new OldMetaDataIterator<org.jboss.metadata.javaee.spec.SecurityRoleRefMetaData, SecurityRoleRefMetaData>(roleRefs, org.jboss.metadata.javaee.spec.SecurityRoleRefMetaData.class, SecurityRoleRefMetaData.class);
    }
 

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/ClusterConfigMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/ClusterConfigMetaData.java	2007-10-25 00:59:17 UTC (rev 66407)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/ClusterConfigMetaData.java	2007-10-25 01:25:23 UTC (rev 66408)
@@ -23,7 +23,6 @@
 
 import javax.xml.bind.annotation.XmlType;
 
-import org.jboss.metadata.common.ejb.IEnterpriseBeanMetaData;
 import org.jboss.metadata.javaee.support.IdMetaDataImplWithDescriptions;
 
 /**
@@ -144,9 +143,7 @@
    {
       if (homeLoadBalancingPolicy == null && enterpriseBeanMetaData != null)
       {
-         IEnterpriseBeanMetaData ejb = enterpriseBeanMetaData.getOverridenMetaData();
-         if (ejb != null)
-            return ROUND_ROBIN;
+         return ROUND_ROBIN;
       }
       return homeLoadBalancingPolicy;
    }

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeanMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeanMetaData.java	2007-10-25 00:59:17 UTC (rev 66407)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeanMetaData.java	2007-10-25 01:25:23 UTC (rev 66408)
@@ -75,6 +75,7 @@
 import org.jboss.metadata.javaee.spec.SecurityRoleRefsMetaData;
 import org.jboss.metadata.javaee.support.AbstractMappedMetaData;
 import org.jboss.metadata.javaee.support.NamedMetaData;
+import org.jboss.metadata.javaee.support.NamedMetaDataWithDescriptionGroup;
 import org.jboss.metadata.javaee.support.NamedMetaDataWithDescriptionGroupWithOverride;
 import org.jboss.metadata.javaee.support.NonNullLinkedHashSet;
 import org.jboss.xb.annotations.JBossXmlConstants;
@@ -98,7 +99,7 @@
             @JBossXmlModelGroup.Particle(element=@XmlElement(name="message-driven"), type=JBossMessageDrivenBeanMetaData.class),
             @JBossXmlModelGroup.Particle(element=@XmlElement(name="ejb"), type=JBossGenericBeanMetaData.class),
             @JBossXmlModelGroup.Particle(element=@XmlElement(name="service"), type=JBossServiceBeanMetaData.class)})
-public abstract class JBossEnterpriseBeanMetaData extends NamedMetaDataWithDescriptionGroupWithOverride<EnterpriseBeanMetaData>
+public abstract class JBossEnterpriseBeanMetaData extends NamedMetaDataWithDescriptionGroup
    implements Environment,
    IEnterpriseBeanMetaData<JBossEnterpriseBeanMetaData>
 {
@@ -1037,28 +1038,6 @@
    }
 
    /**
-    * Utility method for accessing 
-    * @param roleName
-    * @return
-    */
-   @XmlTransient
-   public SecurityRoleRefsMetaData getSecurityRoleRefs()
-   {
-      SecurityRoleRefsMetaData refs = null;
-      if (isEntity())
-      {
-         EntityBeanMetaData ebmd = (EntityBeanMetaData) this.getOverridenMetaData();
-         refs = ebmd.getSecurityRoleRefs();
-      }
-      else if (isSession())
-      {
-         SessionBeanMetaData sbmd = (SessionBeanMetaData) this.getOverridenMetaData();
-         refs = sbmd.getSecurityRoleRefs();
-      }
-      return refs;
-   }
-
-   /**
     * Get a security role's principals
     * 
     * @param roleName the role name
@@ -1103,12 +1082,11 @@
    {
       Set<String> result = null;
 
-      IEnterpriseBeanMetaData<EnterpriseBeanMetaData> ejb = getOverridenMetaDataWithCheck();
       JBossMetaData jbossMetaData = getJBossMetaDataWithCheck();
       
       // First check the excluded method list as this takes priority over
       // all other assignments
-      ExcludeListMetaData excluded = ejb.getExcludeList();
+      ExcludeListMetaData excluded = getExcludeList();
       if (excluded != null && excluded.matches(methodName, params, interfaceType))
       {
          // No one is allowed to execute this method so add a role that
@@ -1122,7 +1100,7 @@
       }
 
       // Check the permissioned methods list
-      MethodPermissionsMetaData permissions = ejb.getMethodPermissions();
+      MethodPermissionsMetaData permissions = getMethodPermissions();
       if (permissions != null)
       {
          for (MethodPermissionMetaData permission : permissions)
@@ -1182,16 +1160,14 @@
     */
    public boolean hasMethodPermissions(String methodName, Class<?>[] params, MethodInterfaceType interfaceType)
    {
-      IEnterpriseBeanMetaData<EnterpriseBeanMetaData> ejb = getOverridenMetaDataWithCheck();
-      
       // First check the excluded method list as this takes priority over
       // all other assignments
-      ExcludeListMetaData excluded = ejb.getExcludeList();
+      ExcludeListMetaData excluded = getExcludeList();
       if (excluded != null && excluded.matches(methodName, params, interfaceType))
          return true;
 
       // Check the permissioned methods list
-      MethodPermissionsMetaData permissions = ejb.getMethodPermissions();
+      MethodPermissionsMetaData permissions = getMethodPermissions();
       if (permissions != null)
       {
          for (MethodPermissionMetaData permission : permissions)
@@ -1355,6 +1331,10 @@
       throw new RuntimeException("wrong merge method called");
    }
    
+   public void merge(JBossEnterpriseBeanMetaData override, EnterpriseBeanMetaData original)
+   {
+      this.merge(override, original, "jboss.xml", "ejb-jar.xml", true);
+   }
    public void merge(JBossEnterpriseBeanMetaData override, EnterpriseBeanMetaData original, String overridenFile, String overrideFile, boolean mustOverride)
    {
       super.merge(override, original);
@@ -1397,8 +1377,6 @@
          if(override.securityProxy != null)
             setSecurityProxy(override.securityProxy);
       }
-      // TODO: remove
-      setOverridenMetaData(original);
 
       if(this.jndiEnvironmentRefsGroup == null)
          jndiEnvironmentRefsGroup = new JBossEnvironmentRefsGroupMetaData();

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeansMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeansMetaData.java	2007-10-25 00:59:17 UTC (rev 66407)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEnterpriseBeansMetaData.java	2007-10-25 01:25:23 UTC (rev 66408)
@@ -71,7 +71,7 @@
       else
          throw new IllegalArgumentException("Unrecognised: " + data);
       result.setEjbName(data.getEjbName());
-      result.setOverridenMetaData(data);
+      result.merge(null, data);
       return result;
    }
 

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEntityBeanMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEntityBeanMetaData.java	2007-10-25 00:59:17 UTC (rev 66407)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEntityBeanMetaData.java	2007-10-25 01:25:23 UTC (rev 66408)
@@ -28,7 +28,7 @@
 import org.jboss.metadata.ejb.spec.QueriesMetaData;
 import org.jboss.metadata.javaee.spec.SecurityRoleRefsMetaData;
 
-import javax.xml.bind.annotation.XmlTransient;
+import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlType;
 
 /**
@@ -118,99 +118,348 @@
    }
 
    @Override
-   public EntityBeanMetaData getOverridenMetaData()
+   public boolean isEntity()
    {
-      return (EntityBeanMetaData) super.getOverridenMetaData();
+      return true;
    }
-   
-   @XmlTransient
-   public void setOverridenMetaData(EntityBeanMetaData data)
+
+   /**
+    * Get the home.
+    * 
+    * @return the home.
+    */
+   public String getHome()
    {
-      super.setOverridenMetaData(data);
+      return home;
    }
 
-   @Override
-   public boolean isEntity()
+   /**
+    * Set the home.
+    * 
+    * @param home the home.
+    * @throws IllegalArgumentException for a null home
+    */
+   public void setHome(String home)
    {
-      return true;
+      if (home == null)
+         throw new IllegalArgumentException("Null home");
+      this.home = home;
    }
 
-   public String getAbstractSchemaName()
+   /**
+    * Get the remote.
+    * 
+    * @return the remote.
+    */
+   public String getRemote()
    {
-      return abstractSchemaName;
+      return remote;
    }
 
-   public CMPFieldsMetaData getCmpFields()
+   /**
+    * Set the remote.
+    * 
+    * @param remote the remote.
+    * @throws IllegalArgumentException for a null remote
+    */
+   public void setRemote(String remote)
    {
-      return cmpFields;
+      if (remote == null)
+         throw new IllegalArgumentException("Null remote");
+      this.remote = remote;
    }
 
-   public String getCmpVersion()
+   /**
+    * Get the localHome.
+    * 
+    * @return the localHome.
+    */
+   public String getLocalHome()
    {
-      return cmpVersion;
+      return localHome;
    }
 
-   public String getHome()
+   /**
+    * Set the localHome.
+    * 
+    * @param localHome the localHome.
+    * @throws IllegalArgumentException for a null localHome
+    */
+   public void setLocalHome(String localHome)
    {
-      return home;
+      if (localHome == null)
+         throw new IllegalArgumentException("Null localHome");
+      this.localHome = localHome;
    }
 
+   /**
+    * Get the local.
+    * 
+    * @return the local.
+    */
    public String getLocal()
    {
       return local;
    }
 
-   public String getLocalHome()
+   /**
+    * Set the local.
+    * 
+    * @param local the local.
+    * @throws IllegalArgumentException for a null local
+    */
+   public void setLocal(String local)
    {
-      return localHome;
+      if (local == null)
+         throw new IllegalArgumentException("Null local");
+      this.local = local;
    }
 
+   /**
+    * Is this container managed persistence
+    * 
+    * @return true for cmp
+    */
+   public boolean isCMP()
+   {
+      if (persistenceType == null)
+         return true;
+      return persistenceType == PersistenceType.Container;
+   }
+
+   /**
+    * Is this bean managed persistence
+    * 
+    * @return true for bmp
+    */
+   public boolean isBMP()
+   {
+      return isCMP() == false;
+   }
+
+   /**
+    * Get the persistenceType.
+    * 
+    * @return the persistenceType.
+    */
    public PersistenceType getPersistenceType()
    {
       return persistenceType;
    }
 
+   /**
+    * Set the persistenceType.
+    * 
+    * @param persistenceType the persistenceType.
+    * @throws IllegalArgumentException for a null persistenceType
+    */
+   public void setPersistenceType(PersistenceType persistenceType)
+   {
+      if (persistenceType == null)
+         throw new IllegalArgumentException("Null persistenceType");
+      this.persistenceType = persistenceType;
+   }
+
+   /**
+    * Get the primKeyClass.
+    * 
+    * @return the primKeyClass.
+    */
    public String getPrimKeyClass()
    {
       return primKeyClass;
    }
 
+   /**
+    * Set the primKeyClass.
+    * 
+    * @param primKeyClass the primKeyClass.
+    * @throws IllegalArgumentException for a null primKeyClass
+    */
+   public void setPrimKeyClass(String primKeyClass)
+   {
+      if (primKeyClass == null)
+         throw new IllegalArgumentException("Null primKeyClass");
+      this.primKeyClass = primKeyClass;
+   }
+
+   /**
+    * Get the reentrant.
+    * 
+    * @return the reentrant.
+    */
+   public boolean isReentrant()
+   {
+      return reentrant;
+   }
+
+   /**
+    * Set the reentrant.
+    * 
+    * @param reentrant the reentrant.
+    */
+   public void setReentrant(boolean reentrant)
+   {
+      this.reentrant = reentrant;
+   }
+
+   /**
+    * Whether it is CMP1x
+    * 
+    * @return true for cmp1x
+    */
+   public boolean isCMP1x()
+   {
+      return "1.x".equals(cmpVersion);
+   }
+   
+   /**
+    * Get the cmpVersion.
+    * 
+    * @return the cmpVersion.
+    */
+   public String getCmpVersion()
+   {
+      return cmpVersion;
+   }
+
+   /**
+    * Set the cmpVersion.
+    * 
+    * @param cmpVersion the cmpVersion.
+    * @throws IllegalArgumentException for a null cmpVersion
+    */
+   public void setCmpVersion(String cmpVersion)
+   {
+      if (cmpVersion == null)
+         throw new IllegalArgumentException("Null cmpVersion");
+      this.cmpVersion = cmpVersion;
+   }
+
+   /**
+    * Get the abstractSchemaName.
+    * 
+    * @return the abstractSchemaName.
+    */
+   public String getAbstractSchemaName()
+   {
+      return abstractSchemaName;
+   }
+
+   /**
+    * Set the abstractSchemaName.
+    * 
+    * @param abstractSchemaName the abstractSchemaName.
+    * @throws IllegalArgumentException for a null abstractSchemaName
+    */
+   public void setAbstractSchemaName(String abstractSchemaName)
+   {
+      if (abstractSchemaName == null)
+         throw new IllegalArgumentException("Null abstractSchemaName");
+      this.abstractSchemaName = abstractSchemaName;
+   }
+
+   /**
+    * Get the primKeyField.
+    * 
+    * @return the primKeyField.
+    */
    public String getPrimKeyField()
    {
       return primKeyField;
    }
 
-   public QueriesMetaData getQueries()
+   /**
+    * Set the primKeyField.
+    * 
+    * @param primKeyField the primKeyField.
+    * @throws IllegalArgumentException for a null primKeyField
+    */
+   @XmlElement(name="primkey-field")
+   public void setPrimKeyField(String primKeyField)
    {
-      return queries;
+      if (primKeyField == null)
+         throw new IllegalArgumentException("Null primKeyField");
+      this.primKeyField = primKeyField;
    }
 
-   public boolean isReentrant()
+   /**
+    * Get the cmpFields.
+    * 
+    * @return the cmpFields.
+    */
+   public CMPFieldsMetaData getCmpFields()
    {
-      return reentrant;
+      return cmpFields;
    }
 
-   public String getRemote()
+   /**
+    * Set the cmpFields.
+    * 
+    * @param cmpFields the cmpFields.
+    * @throws IllegalArgumentException for a null cmpFields
+    */
+   @XmlElement(name="cmp-field")
+   public void setCmpFields(CMPFieldsMetaData cmpFields)
    {
-      return remote;
+      if (cmpFields == null)
+         throw new IllegalArgumentException("Null cmpFields");
+      this.cmpFields = cmpFields;
    }
 
+   /**
+    * Get the securityRoleRefs.
+    * 
+    * @return the securityRoleRefs.
+    */
    public SecurityRoleRefsMetaData getSecurityRoleRefs()
    {
       return securityRoleRefs;
    }
 
+   /**
+    * Set the securityRoleRefs.
+    * 
+    * @param securityRoleRefs the securityRoleRefs.
+    * @throws IllegalArgumentException for a null securityRoleRefs
+    */
+   @XmlElement(name="security-role-ref")
+   public void setSecurityRoleRefs(SecurityRoleRefsMetaData securityRoleRefs)
+   {
+      if (securityRoleRefs == null)
+         throw new IllegalArgumentException("Null securityRoleRefs");
+      this.securityRoleRefs = securityRoleRefs;
+   }
+
+   /**
+    * Get the queries.
+    * 
+    * @return the queries.
+    */
+   public QueriesMetaData getQueries()
+   {
+      return queries;
+   }
+
+   /**
+    * Set the queries.
+    * 
+    * @param queries the queries.
+    * @throws IllegalArgumentException for a null queries
+    */
+   @XmlElement(name="query")
+   public void setQueries(QueriesMetaData queries)
+   {
+      if (queries == null)
+         throw new IllegalArgumentException("Null queries");
+      this.queries = queries;
+   }
+
    @Override
    public String getDefaultConfigurationName()
    {
-      boolean isCMP = true;
-      boolean isCMP1x = false;
-      EntityBeanMetaData overriden = getOverridenMetaData();
-      if (overriden != null)
-      {
-         isCMP = overriden.isCMP();
-         isCMP1x = overriden.isCMP1x();
-      }
+      boolean isCMP = isCMP();
+      boolean isCMP1x = isCMP1x();
 
       if (isCMP)
       {
@@ -241,15 +490,8 @@
    @Override
    public String getDefaultInvokerName()
    {
-      boolean isCMP = true;
-      boolean isCMP1x = false;
-      EntityBeanMetaData overriden = getOverridenMetaData();
-      if (overriden != null)
-      {
-         isCMP = overriden.isCMP();
-         isCMP1x = overriden.isCMP1x();
-      }
-
+      boolean isCMP = isCMP();
+      boolean isCMP1x = isCMP1x();
       if (isCMP)
       {
          if (isCMP1x)
@@ -309,13 +551,9 @@
       if (jndiName != null)
          return jndiName;
       
-      EntityBeanMetaData overriden = getOverridenMetaData();
-      if (overriden != null)
-      {
-         String mapped = overriden.getMappedName();
-         if (mapped != null)
-            return mapped;
-      }
+      String mapped = getMappedName();
+      if (mapped != null)
+         return mapped;
       return getEjbName();
    }
 
@@ -323,8 +561,7 @@
    public String getContainerObjectNameJndiName()
    {
       boolean remote = false;
-      EntityBeanMetaData entity = getOverridenMetaData();
-      if (entity != null && entity.getHome() != null)
+      if (getHome() != null)
          remote = true;
       return remote ? determineJndiName() : getLocalJndiName();
    }

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-10-25 00:59:17 UTC (rev 66407)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossMessageDrivenBeanMetaData.java	2007-10-25 01:25:23 UTC (rev 66408)
@@ -22,13 +22,13 @@
 package org.jboss.metadata.ejb.jboss;
 
 import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlTransient;
 import javax.xml.bind.annotation.XmlType;
 
 import org.jboss.metadata.ejb.spec.ActivationConfigMetaData;
 import org.jboss.metadata.ejb.spec.AroundInvokesMetaData;
 import org.jboss.metadata.ejb.spec.EnterpriseBeanMetaData;
 import org.jboss.metadata.ejb.spec.MessageDrivenBeanMetaData;
+import org.jboss.metadata.ejb.spec.MessageDrivenDestinationMetaData;
 import org.jboss.metadata.ejb.spec.NamedMethodMetaData;
 import org.jboss.metadata.ejb.spec.SecurityIdentityMetaData;
 import org.jboss.metadata.ejb.spec.SubscriptionDurability;
@@ -105,23 +105,12 @@
    }
 
    @Override
-   public MessageDrivenBeanMetaData getOverridenMetaData()
-   {
-      return (MessageDrivenBeanMetaData) super.getOverridenMetaData();
-   }
-   
-   @XmlTransient
-   public void setOverridenMetaData(MessageDrivenBeanMetaData data)
-   {
-      super.setOverridenMetaData(data);
-   }
-
-   @Override
    public boolean isMessageDriven()
    {
       return true;
    }
 
+
    /**
     * Get the messagingType.
     * 
@@ -143,7 +132,22 @@
       return messagingType == null || "javax.jms.MessageListener".equals(messagingType);
    }
 
+
    /**
+    * Set the messagingType.
+    * 
+    * @param messagingType the messagingType.
+    * @throws IllegalArgumentException for a null messagingType
+    */
+   public void setMessagingType(String messagingType)
+   {
+      if (messagingType == null)
+         throw new IllegalArgumentException("Null messagingType");
+      this.messagingType = messagingType;
+   }
+
+
+   /**
     * Get the timeoutMethod.
     * 
     * @return the timeoutMethod.
@@ -153,7 +157,22 @@
       return timeoutMethod;
    }
 
+
    /**
+    * Set the timeoutMethod.
+    * 
+    * @param timeoutMethod the timeoutMethod.
+    * @throws IllegalArgumentException for a null timeoutMethod
+    */
+   @XmlElement(required=false)
+   public void setTimeoutMethod(NamedMethodMetaData timeoutMethod)
+   {
+      if (timeoutMethod == null)
+         throw new IllegalArgumentException("Null timeoutMethod");
+      this.timeoutMethod = timeoutMethod;
+   }
+
+   /**
     * Get the messageDestinationType.
     * 
     * @return the messageDestinationType.
@@ -165,6 +184,20 @@
 
 
    /**
+    * Set the messageDestinationType.
+    * 
+    * @param messageDestinationType the messageDestinationType.
+    * @throws IllegalArgumentException for a null messageDestinationType
+    */
+   public void setMessageDestinationType(String messageDestinationType)
+   {
+      if (messageDestinationType == null)
+         throw new IllegalArgumentException("Null messageDestinationType");
+      this.messageDestinationType = messageDestinationType;
+   }
+
+
+   /**
     * Get the aroundInvokes.
     * 
     * @return the aroundInvokes.
@@ -176,6 +209,21 @@
 
 
    /**
+    * Set the aroundInvokes.
+    * 
+    * @param aroundInvokes the aroundInvokes.
+    * @throws IllegalArgumentException for a null aroundInvokes
+    */
+   @XmlElement(name="around-invoke", required=false)
+   public void setAroundInvokes(AroundInvokesMetaData aroundInvokes)
+   {
+      if (aroundInvokes == null)
+         throw new IllegalArgumentException("Null aroundInvokes");
+      this.aroundInvokes = aroundInvokes;
+   }
+
+
+   /**
     * Get the messageDestinationLink.
     * 
     * @return the messageDestinationLink.
@@ -187,6 +235,20 @@
 
 
    /**
+    * Set the messageDestinationLink.
+    * 
+    * @param messageDestinationLink the messageDestinationLink.
+    * @throws IllegalArgumentException for a null messageDestinationLink
+    */
+   public void setMessageDestinationLink(String messageDestinationLink)
+   {
+      if (messageDestinationLink == null)
+         throw new IllegalArgumentException("Null messageDestinationLink");
+      this.messageDestinationLink = messageDestinationLink;
+   }
+
+
+   /**
     * Get the activationConfig.
     * 
     * @return the activationConfig.
@@ -198,6 +260,19 @@
 
 
    /**
+    * Set the activationConfig.
+    * 
+    * @param activationConfig the activationConfig.
+    * @throws IllegalArgumentException for a null activationConfig
+    */
+   public void setActivationConfig(ActivationConfigMetaData activationConfig)
+   {
+      if (activationConfig == null)
+         throw new IllegalArgumentException("Null activationConfig");
+      this.activationConfig = activationConfig;
+   }
+
+   /**
     * Get the messageSelector.
     * 
     * @return the messageSelector.
@@ -208,6 +283,20 @@
    }
 
    /**
+    * Set the messageSelector.
+    * 
+    * @param messageSelector the messageSelector.
+    * @throws IllegalArgumentException for a null messageSelector
+    */
+   @XmlElement(required=false)
+   public void setMessageSelector(String messageSelector)
+   {
+      if (messageSelector == null)
+         throw new IllegalArgumentException("Null messageSelector");
+      this.messageSelector = messageSelector;
+   }
+
+   /**
     * Get the acknowledgeMode.
     * 
     * @return the acknowledgeMode.
@@ -218,6 +307,20 @@
    }
 
    /**
+    * Set the acknowledgeMode.
+    * 
+    * @param acknowledgeMode the acknowledgeMode.
+    * @throws IllegalArgumentException for a null acknowledgeMode
+    */
+   @XmlElement(required=false)
+   public void setAcknowledgeMode(String acknowledgeMode)
+   {
+      if (acknowledgeMode == null)
+         throw new IllegalArgumentException("Null acknowledgeMode");
+      this.acknowledgeMode = acknowledgeMode;
+   }
+
+   /**
     * Get the subscriptionDurability.
     * 
     * @return the subscriptionDurability.
@@ -227,14 +330,36 @@
       return subscriptionDurability;
    }
 
+   /**
+    * Set the subscriptionDurability.
+    * 
+    * @param subscriptionDurability the subscriptionDurability.
+    * @throws IllegalArgumentException for a null subscriptionDurability
+    */
+   @XmlElement(required=false)
+   public void setSubscriptionDurability(SubscriptionDurability subscriptionDurability)
+   {
+      if (subscriptionDurability == null)
+         throw new IllegalArgumentException("Null subscriptionDurability");
+      this.subscriptionDurability = subscriptionDurability;
+   }
+
+   @XmlElement(name="message-driven-destination", required=false)
+   public void setMessageDrivenDestination(MessageDrivenDestinationMetaData mdd)
+   {
+      // Translate this into destinationType, subscriptionDurability
+      this.setMessageDestinationType(mdd.getDestinationType());
+      String durability = mdd.getSubscriptionDurability();
+      SubscriptionDurability sd = SubscriptionDurability.NonDurable;
+      if (durability != null && durability.equalsIgnoreCase("Durable"))
+         sd = SubscriptionDurability.Durable;
+      this.setSubscriptionDurability(sd);
+   }
+
    @Override
    public String getDefaultConfigurationName()
    {
-      boolean isJMS = true;
-      MessageDrivenBeanMetaData overriden = getOverridenMetaData();
-      if (overriden != null)
-         isJMS = overriden.isJMS();
-
+      boolean isJMS = isJMS();
       if (isJMS == false)
          return ContainerConfigurationMetaData.MESSAGE_INFLOW_DRIVEN;
       else

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/support/NamedMetaDataWithDescriptionGroup.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/support/NamedMetaDataWithDescriptionGroup.java	2007-10-25 00:59:17 UTC (rev 66407)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/support/NamedMetaDataWithDescriptionGroup.java	2007-10-25 01:25:23 UTC (rev 66408)
@@ -60,4 +60,17 @@
          throw new IllegalArgumentException("Null descriptionGroup");
       this.descriptionGroup = descriptionGroup;
    }
+
+   @Override
+   public void merge(NamedMetaData override, NamedMetaData original)
+   {
+      super.merge(override, original);
+      NamedMetaDataWithDescriptionGroup n0 = (NamedMetaDataWithDescriptionGroup) override;
+      NamedMetaDataWithDescriptionGroup n1 = (NamedMetaDataWithDescriptionGroup) original;
+      if(n0 != null && n0.descriptionGroup != null)
+         setDescriptionGroup(n0.descriptionGroup);
+      else if(n1 != null && n1.descriptionGroup != null)
+         setDescriptionGroup(n1.descriptionGroup);
+   }
+
 }

Modified: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/EJBMetaDataTestSuite.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/EJBMetaDataTestSuite.java	2007-10-25 00:59:17 UTC (rev 66407)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/EJBMetaDataTestSuite.java	2007-10-25 01:25:23 UTC (rev 66408)
@@ -50,6 +50,8 @@
       suite.addTest(JBoss50UnitTestCase.suite());
       suite.addTest(JBoss5xEverythingUnitTestCase.suite());
       suite.addTest(EjbJarJBossMergeEverythingUnitTestCase.suite());
+      suite.addTest(JBoss42UnitTestCase.suite());
+      
       //suite.addTest(JBossCMPUnitTestCase.suite());
       //suite.addTest(JBossCMPMergeUnitTestCase.suite());
       

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-10-25 00:59:17 UTC (rev 66407)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss50UnitTestCase.java	2007-10-25 01:25:23 UTC (rev 66408)
@@ -23,13 +23,11 @@
 
 import java.util.HashSet;
 import java.util.Iterator;
-import java.util.Map;
 import java.util.Set;
 
 import junit.framework.Test;
 
 import org.jboss.metadata.ApplicationMetaData;
-import org.jboss.metadata.AssemblyDescriptorMetaData;
 import org.jboss.metadata.BeanMetaData;
 import org.jboss.metadata.ConfigurationMetaData;
 import org.jboss.metadata.common.ejb.IEnterpriseBeanMetaData;
@@ -515,15 +513,14 @@
       // Validate the merged StrictlyPooledMDB 
       IEnterpriseBeanMetaData<?> strictlyPooledMDB = beans.get("StrictlyPooledMDB");
       JBossMessageDrivenBeanMetaData strictlyPooledMDBMD = (JBossMessageDrivenBeanMetaData) strictlyPooledMDB;
-      MessageDrivenBeanMetaData strictlyPooledSpecMD = strictlyPooledMDBMD.getOverridenMetaData();
       assertNotNull("strictlyPooledMDB", strictlyPooledMDB);
-      assertEquals("Message driven pooling test", strictlyPooledSpecMD.getDescriptionGroup().getDescription());
-      assertEquals("org.jboss.test.cts.ejb.StrictlyPooledMDB", strictlyPooledSpecMD.getEjbClass());
+      assertEquals("Message driven pooling test", strictlyPooledMDBMD.getDescriptionGroup().getDescription());
+      assertEquals("org.jboss.test.cts.ejb.StrictlyPooledMDB", strictlyPooledMDBMD.getEjbClass());
       assertTrue(strictlyPooledMDB.isMessageDriven());
       assertTrue(strictlyPooledMDB instanceof JBossMessageDrivenBeanMetaData);
-      assertEquals("AUTO_ACKNOWLEDGE", strictlyPooledSpecMD.getAcknowledgeMode());
-      assertEquals("javax.jms.Queue", strictlyPooledSpecMD.getMessageDestinationType());
-      assertEquals(SubscriptionDurability.NonDurable, strictlyPooledSpecMD.getSubscriptionDurability());
+      assertEquals("AUTO_ACKNOWLEDGE", strictlyPooledMDBMD.getAcknowledgeMode());
+      assertEquals("javax.jms.Queue", strictlyPooledMDBMD.getMessageDestinationType());
+      assertEquals(SubscriptionDurability.NonDurable, strictlyPooledMDBMD.getSubscriptionDurability());
       EnvironmentEntryMetaData maxActiveCount = strictlyPooledMDBMD.getEnvironmentEntryByName("maxActiveCount");
       assertEquals("maxActiveCountID", maxActiveCount.getId());
       assertEquals("java.lang.Integer", maxActiveCount.getType());




More information about the jboss-cvs-commits mailing list