[jboss-cvs] JBossAS SVN: r66328 - in projects/metadata/trunk/src/main/java/org/jboss/metadata: javaee/support and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Oct 22 08:02:34 EDT 2007


Author: wolfc
Date: 2007-10-22 08:02:33 -0400 (Mon, 22 Oct 2007)
New Revision: 66328

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/JBossMessageDrivenBeanMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossSessionBeanMetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/support/NamedMetaDataWithDescriptionGroupWithOverride.java
Log:
JBAS-4506: ensureOverride fix

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-22 12:02:09 UTC (rev 66327)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossEntityBeanMetaData.java	2007-10-22 12:02:33 UTC (rev 66328)
@@ -378,7 +378,7 @@
    @Override
    protected IEnterpriseBeanMetaData ensureOverride()
    {
-      return new JBossEntityBeanMetaData();
+      return ensureOverride(EntityBeanMetaData.class);
    }
 
    

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-22 12:02:09 UTC (rev 66327)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossMessageDrivenBeanMetaData.java	2007-10-22 12:02:33 UTC (rev 66328)
@@ -299,7 +299,7 @@
    @Override
    protected IEnterpriseBeanMetaData ensureOverride()
    {
-      return new JBossMessageDrivenBeanMetaData();
+      return ensureOverride(MessageDrivenBeanMetaData.class);
    }
    
 }

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	2007-10-22 12:02:09 UTC (rev 66327)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/ejb/jboss/JBossSessionBeanMetaData.java	2007-10-22 12:02:33 UTC (rev 66328)
@@ -368,7 +368,6 @@
    @Override
    protected IEnterpriseBeanMetaData ensureOverride()
    {
-      return new JBossSessionBeanMetaData();
-   }
-   
+      return ensureOverride(SessionBeanMetaData.class);
+   }  
 }

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/support/NamedMetaDataWithDescriptionGroupWithOverride.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/support/NamedMetaDataWithDescriptionGroupWithOverride.java	2007-10-22 12:02:09 UTC (rev 66327)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/support/NamedMetaDataWithDescriptionGroupWithOverride.java	2007-10-22 12:02:33 UTC (rev 66328)
@@ -39,6 +39,31 @@
    /** The overriden metadata */
    private T data;
    
+   /**
+    * Make sure there is an overriden metadata set. If
+    * there is none, then create one from the given class.
+    * 
+    * @param cls    the class of the overriden metadata
+    * @return       an instance of overriden metadata, never null
+    */
+   protected T ensureOverride(Class<? extends T> cls)
+   {
+      try
+      {
+         if(data == null)
+            data = cls.newInstance();
+         return data;
+      }
+      catch (InstantiationException e)
+      {
+         throw new RuntimeException(e);
+      }
+      catch (IllegalAccessException e)
+      {
+         throw new RuntimeException(e);
+      }
+   }
+   
    public T getOverridenMetaData()
    {
       return data;




More information about the jboss-cvs-commits mailing list