[jboss-cvs] JBossAS SVN: r65507 - in projects/metadata/trunk/src: main/java/org/jboss/metadata/client/jboss and 5 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Sep 20 12:37:33 EDT 2007


Author: wolfc
Date: 2007-09-20 12:37:32 -0400 (Thu, 20 Sep 2007)
New Revision: 65507

Added:
   projects/metadata/trunk/src/main/java/org/jboss/metadata/client/jboss/
   projects/metadata/trunk/src/main/java/org/jboss/metadata/client/jboss/JBossClient5MetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossRemoteEnvironmentRefsGroupMetaData.java
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/ApplicationClientJBossMergeEverythingUnitTestCase.java
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/JBossClient5EverythingUnitTestCase.java
   projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/client/JBossClient5Everything_testEverything.xml
Modified:
   projects/metadata/trunk/src/main/java/org/jboss/metadata/client/spec/ApplicationClient5MetaData.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/client/spec/ApplicationClientMetaData.java
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/ApplicationClient14EverythingUnitTestCase.java
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/ApplicationClient5EverythingUnitTestCase.java
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/javaee/AbstractJavaEEEverythingTest.java
Log:
JBoss client 5 new style

Added: projects/metadata/trunk/src/main/java/org/jboss/metadata/client/jboss/JBossClient5MetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/client/jboss/JBossClient5MetaData.java	                        (rev 0)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/client/jboss/JBossClient5MetaData.java	2007-09-20 16:37:32 UTC (rev 65507)
@@ -0,0 +1,218 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt 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.metadata.client.jboss;
+
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlNs;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlTransient;
+import javax.xml.bind.annotation.XmlType;
+
+import org.jboss.metadata.client.spec.ApplicationClient5MetaData;
+import org.jboss.metadata.javaee.jboss.JBossRemoteEnvironmentRefsGroupMetaData;
+import org.jboss.metadata.javaee.spec.EJBReferenceMetaData;
+import org.jboss.metadata.javaee.spec.EJBReferencesMetaData;
+import org.jboss.metadata.javaee.spec.EnvironmentEntriesMetaData;
+import org.jboss.metadata.javaee.spec.EnvironmentEntryMetaData;
+import org.jboss.metadata.javaee.spec.JavaEEMetaDataConstants;
+import org.jboss.metadata.javaee.spec.LifecycleCallbacksMetaData;
+import org.jboss.metadata.javaee.spec.MessageDestinationReferenceMetaData;
+import org.jboss.metadata.javaee.spec.MessageDestinationReferencesMetaData;
+import org.jboss.metadata.javaee.spec.MessageDestinationsMetaData;
+import org.jboss.metadata.javaee.spec.PersistenceUnitReferenceMetaData;
+import org.jboss.metadata.javaee.spec.PersistenceUnitReferencesMetaData;
+import org.jboss.metadata.javaee.spec.RemoteEnvironment;
+import org.jboss.metadata.javaee.spec.ResourceEnvironmentReferenceMetaData;
+import org.jboss.metadata.javaee.spec.ResourceEnvironmentReferencesMetaData;
+import org.jboss.metadata.javaee.spec.ResourceReferenceMetaData;
+import org.jboss.metadata.javaee.spec.ResourceReferencesMetaData;
+import org.jboss.metadata.javaee.support.IdMetaDataImplWithDescriptionGroupWithOverride;
+import org.jboss.metadata.javaee.support.JavaEEMetaDataUtil;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * JBoss specific meta data for JavaEE 5 clients.
+ *
+ * @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
+ * @version $Revision: $
+ */
+ at XmlRootElement(name="jboss-client", namespace=JavaEEMetaDataConstants.JBOSS_NS)
+ at JBossXmlSchema(
+      xmlns={@XmlNs(namespaceURI = JavaEEMetaDataConstants.JAVAEE_NS, prefix = "jee")},
+      ignoreUnresolvedFieldOrClass=false,
+      namespace=JavaEEMetaDataConstants.JBOSS_NS,
+      elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlType(name="jboss-clientType", namespace=JavaEEMetaDataConstants.JBOSS_NS)
+public class JBossClient5MetaData extends IdMetaDataImplWithDescriptionGroupWithOverride<ApplicationClient5MetaData> implements RemoteEnvironment
+{
+   private static final long serialVersionUID = 1L;
+
+   /** The jndi name for the client environment */
+   private String jndiName;
+   
+   /** The environment */
+   private JBossRemoteEnvironmentRefsGroupMetaData jndiEnvironmentRefsGroup;
+   
+   /** The merged environment */
+   private transient JBossRemoteEnvironmentRefsGroupMetaData mergedEnvironment;
+   
+   /** A list of extra dependencies to wait on */
+   private List<String> depends;
+   
+   private transient MessageDestinationsMetaData mergedMessageDestinations;
+   
+   public String getCallbackHandler()
+   {
+      return getOverridenMetaDataWithCheck().getCallbackHandler();
+   }
+   
+   public List<String> getDepends()
+   {
+      return depends;
+   }
+   
+   public JBossRemoteEnvironmentRefsGroupMetaData getJBossJndiEnvironmentRefsGroup()
+   {
+      return jndiEnvironmentRefsGroup;
+   }
+   
+   public String getJndiName()
+   {
+      return jndiName;
+   }
+   
+   /**
+    * Get the mergedEnvironment.
+    * 
+    * @return the mergedEnvironment.
+    */
+   @XmlTransient
+   public JBossRemoteEnvironmentRefsGroupMetaData getMergedEnvironment()
+   {
+      if (mergedEnvironment != null)
+         return mergedEnvironment;
+      
+      mergedEnvironment = JBossRemoteEnvironmentRefsGroupMetaData.merge(jndiEnvironmentRefsGroup, getOverridenMetaDataWithCheck(), "application-client.xml", "jboss-client.xml");
+      return mergedEnvironment;
+   }
+   
+   public void setDepends(List<String> depends)
+   {
+      this.depends = depends;
+   }
+   
+   public void setJBossJndiEnvironmentRefsGroup(JBossRemoteEnvironmentRefsGroupMetaData jndiEnvironmentRefsGroup)
+   {
+      if(jndiEnvironmentRefsGroup == null)
+         throw new IllegalArgumentException("jndiEnvironmentRefsGroup is null");
+      this.jndiEnvironmentRefsGroup = jndiEnvironmentRefsGroup;
+   }
+   
+   public void setJndiName(String jndiName)
+   {
+      this.jndiName = jndiName;
+   }
+
+   // MERGED
+   
+   public EJBReferenceMetaData getEjbReferenceByName(String name)
+   {
+      return getMergedEnvironment().getEjbReferenceByName(name);
+   }
+
+   public EJBReferencesMetaData getEjbReferences()
+   {
+      return getMergedEnvironment().getEjbReferences();
+   }
+
+   public EnvironmentEntriesMetaData getEnvironmentEntries()
+   {
+      return getMergedEnvironment().getEnvironmentEntries();
+   }
+
+   public EnvironmentEntryMetaData getEnvironmentEntryByName(String name)
+   {
+      return getMergedEnvironment().getEnvironmentEntryByName(name);
+   }
+
+   public MessageDestinationReferenceMetaData getMessageDestinationReferenceByName(String name)
+   {
+      return getMergedEnvironment().getMessageDestinationReferenceByName(name);
+   }
+
+   public MessageDestinationReferencesMetaData getMessageDestinationReferences()
+   {
+      return getMergedEnvironment().getMessageDestinationReferences();
+   }
+
+   public MessageDestinationsMetaData getMergedMessageDestinations()
+   {
+      if(mergedMessageDestinations != null)
+         return mergedMessageDestinations;
+      
+      mergedMessageDestinations = new MessageDestinationsMetaData();
+      mergedMessageDestinations = JavaEEMetaDataUtil.merge(mergedMessageDestinations, getOverridenMetaDataWithCheck().getMessageDestinations(), null, "message-destination", "application-client.xml", "jboss-client.xml", true);
+      return mergedMessageDestinations;
+   }
+   
+   public PersistenceUnitReferenceMetaData getPersistenceUnitReferenceByName(String name)
+   {
+      return getMergedEnvironment().getPersistenceUnitReferenceByName(name);
+   }
+
+   public PersistenceUnitReferencesMetaData getPersistenceUnitRefs()
+   {
+      return getMergedEnvironment().getPersistenceUnitRefs();
+   }
+
+   public LifecycleCallbacksMetaData getPostConstructs()
+   {
+      return getMergedEnvironment().getPostConstructs();
+   }
+
+   public LifecycleCallbacksMetaData getPreDestroys()
+   {
+      return getMergedEnvironment().getPreDestroys();
+   }
+
+   public ResourceEnvironmentReferenceMetaData getResourceEnvironmentReferenceByName(String name)
+   {
+      return getMergedEnvironment().getResourceEnvironmentReferenceByName(name);
+   }
+
+   public ResourceEnvironmentReferencesMetaData getResourceEnvironmentReferences()
+   {
+      return getMergedEnvironment().getResourceEnvironmentReferences();
+   }
+
+   public ResourceReferenceMetaData getResourceReferenceByName(String name)
+   {
+      return getMergedEnvironment().getResourceReferenceByName(name);
+   }
+
+   public ResourceReferencesMetaData getResourceReferences()
+   {
+      return getMergedEnvironment().getResourceReferences();
+   }
+}


Property changes on: projects/metadata/trunk/src/main/java/org/jboss/metadata/client/jboss/JBossClient5MetaData.java
___________________________________________________________________
Name: svn:keywords
   + Author Date Id Revision
Name: svn:eol-style
   + native

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/client/spec/ApplicationClient5MetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/client/spec/ApplicationClient5MetaData.java	2007-09-20 16:37:01 UTC (rev 65506)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/client/spec/ApplicationClient5MetaData.java	2007-09-20 16:37:32 UTC (rev 65507)
@@ -27,7 +27,6 @@
 import javax.xml.bind.annotation.XmlType;
 
 import org.jboss.metadata.javaee.spec.JavaEEMetaDataConstants;
-import org.jboss.metadata.javaee.spec.LifecycleCallbacksMetaData;
 import org.jboss.xb.annotations.JBossXmlSchema;
 
 /**
@@ -51,18 +50,4 @@
 public class ApplicationClient5MetaData extends ApplicationClientMetaData
 {
    private static final long serialVersionUID = 1L;
-   
-   public LifecycleCallbacksMetaData getPostConstructs()
-   {
-      if (getJndiEnvironmentRefsGroup() != null)
-         return getJndiEnvironmentRefsGroup().getPostConstructs();
-      return null;
-   }
-
-   public LifecycleCallbacksMetaData getPreDestroys()
-   {
-      if (getJndiEnvironmentRefsGroup() != null)
-         return getJndiEnvironmentRefsGroup().getPreDestroys();
-      return null;
-   }
 }

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/client/spec/ApplicationClientMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/client/spec/ApplicationClientMetaData.java	2007-09-20 16:37:01 UTC (rev 65506)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/client/spec/ApplicationClientMetaData.java	2007-09-20 16:37:32 UTC (rev 65507)
@@ -27,10 +27,14 @@
 import org.jboss.metadata.javaee.spec.EJBReferencesMetaData;
 import org.jboss.metadata.javaee.spec.EnvironmentEntriesMetaData;
 import org.jboss.metadata.javaee.spec.EnvironmentEntryMetaData;
+import org.jboss.metadata.javaee.spec.LifecycleCallbacksMetaData;
 import org.jboss.metadata.javaee.spec.MessageDestinationMetaData;
 import org.jboss.metadata.javaee.spec.MessageDestinationReferenceMetaData;
 import org.jboss.metadata.javaee.spec.MessageDestinationReferencesMetaData;
 import org.jboss.metadata.javaee.spec.MessageDestinationsMetaData;
+import org.jboss.metadata.javaee.spec.PersistenceUnitReferenceMetaData;
+import org.jboss.metadata.javaee.spec.PersistenceUnitReferencesMetaData;
+import org.jboss.metadata.javaee.spec.RemoteEnvironment;
 import org.jboss.metadata.javaee.spec.RemoteEnvironmentRefsGroupMetaData;
 import org.jboss.metadata.javaee.spec.ResourceEnvironmentReferenceMetaData;
 import org.jboss.metadata.javaee.spec.ResourceEnvironmentReferencesMetaData;
@@ -45,7 +49,7 @@
  * @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
  * @version $Revision: $
  */
-public abstract class ApplicationClientMetaData extends IdMetaDataImplWithDescriptionGroup
+public abstract class ApplicationClientMetaData extends IdMetaDataImplWithDescriptionGroup implements RemoteEnvironment
 {
    /** The environment */
    private RemoteEnvironmentRefsGroupMetaData jndiEnvironmentRefsGroup;
@@ -85,7 +89,7 @@
       return AbstractMappedMetaData.getByName(name, getEnvironmentEntries());
    }
 
-   public RemoteEnvironmentRefsGroupMetaData getJndiEnvironmentRefsGroup()
+   protected RemoteEnvironmentRefsGroupMetaData getJndiEnvironmentRefsGroup()
    {
       return jndiEnvironmentRefsGroup;
    }
@@ -130,6 +134,32 @@
       return AbstractMappedMetaData.getByName(name, getResourceEnvironmentReferences());
    }
 
+   public PersistenceUnitReferenceMetaData getPersistenceUnitReferenceByName(String name)
+   {
+      return AbstractMappedMetaData.getByName(name, getPersistenceUnitRefs());
+   }
+   
+   public PersistenceUnitReferencesMetaData getPersistenceUnitRefs()
+   {
+      if(jndiEnvironmentRefsGroup != null)
+         return jndiEnvironmentRefsGroup.getPersistenceUnitRefs();
+      return null;
+   }
+   
+   public LifecycleCallbacksMetaData getPostConstructs()
+   {
+      if (jndiEnvironmentRefsGroup != null)
+         return jndiEnvironmentRefsGroup.getPostConstructs();
+      return null;
+   }
+
+   public LifecycleCallbacksMetaData getPreDestroys()
+   {
+      if (jndiEnvironmentRefsGroup != null)
+         return jndiEnvironmentRefsGroup.getPreDestroys();
+      return null;
+   }
+   
    public ResourceEnvironmentReferencesMetaData getResourceEnvironmentReferences()
    {
       if (jndiEnvironmentRefsGroup != null)

Added: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossRemoteEnvironmentRefsGroupMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossRemoteEnvironmentRefsGroupMetaData.java	                        (rev 0)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossRemoteEnvironmentRefsGroupMetaData.java	2007-09-20 16:37:32 UTC (rev 65507)
@@ -0,0 +1,128 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt 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.metadata.javaee.jboss;
+
+import org.jboss.metadata.javaee.spec.EJBReferencesMetaData;
+import org.jboss.metadata.javaee.spec.EnvironmentEntriesMetaData;
+import org.jboss.metadata.javaee.spec.LifecycleCallbacksMetaData;
+import org.jboss.metadata.javaee.spec.MessageDestinationReferencesMetaData;
+import org.jboss.metadata.javaee.spec.PersistenceUnitReferencesMetaData;
+import org.jboss.metadata.javaee.spec.RemoteEnvironment;
+import org.jboss.metadata.javaee.spec.RemoteEnvironmentRefsGroupMetaData;
+import org.jboss.metadata.javaee.spec.ResourceEnvironmentReferencesMetaData;
+import org.jboss.metadata.javaee.spec.ResourceReferencesMetaData;
+import org.jboss.xb.annotations.JBossXmlModelGroup;
+
+/**
+ * JBoss specifics for remote references.
+ *
+ * @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
+ * @version $Revision: $
+ */
+ at JBossXmlModelGroup(name="jndiEnvironmentRefsGroup",
+      propOrder={
+         "environmentEntries", 
+         "ejbReferences",
+         "resourceReferences", 
+         "resourceEnvironmentReferences",
+         "messageDestinationReferences",
+         "persistenceUnitRefs",
+         "postConstructs",
+         "preDestroys"})
+public class JBossRemoteEnvironmentRefsGroupMetaData extends RemoteEnvironmentRefsGroupMetaData
+{
+   private static final long serialVersionUID = 1L;
+
+   public static JBossRemoteEnvironmentRefsGroupMetaData merge(JBossRemoteEnvironmentRefsGroupMetaData jbossEnvironmentRefsGroup,
+         RemoteEnvironment environmentRefsGroup, String overridenFile, String overrideFile)
+   {
+      JBossRemoteEnvironmentRefsGroupMetaData merged = new JBossRemoteEnvironmentRefsGroupMetaData();
+      
+      if (jbossEnvironmentRefsGroup == null && environmentRefsGroup == null)
+         return merged;
+
+      EnvironmentEntriesMetaData envEntries = null;
+      EJBReferencesMetaData ejbRefs = null;
+      EJBReferencesMetaData jbossEjbRefs = null;
+      ResourceReferencesMetaData resRefs = null;
+      ResourceReferencesMetaData jbossResRefs = null;
+      ResourceEnvironmentReferencesMetaData resEnvRefs = null;
+      ResourceEnvironmentReferencesMetaData jbossResEnvRefs = null;
+      MessageDestinationReferencesMetaData messageDestinationRefs = null;
+      MessageDestinationReferencesMetaData jbossMessageDestinationRefs = null;
+      PersistenceUnitReferencesMetaData persistenceUnitRefs = null;
+      LifecycleCallbacksMetaData postConstructs = null;
+      LifecycleCallbacksMetaData preDestroys = null;
+      
+      if (environmentRefsGroup != null)
+      {
+         envEntries = environmentRefsGroup.getEnvironmentEntries();
+         ejbRefs = environmentRefsGroup.getEjbReferences();
+         // ServiceRefs
+         resRefs = environmentRefsGroup.getResourceReferences();
+         resEnvRefs = environmentRefsGroup.getResourceEnvironmentReferences();
+         messageDestinationRefs = environmentRefsGroup.getMessageDestinationReferences();
+         persistenceUnitRefs = environmentRefsGroup.getPersistenceUnitRefs();
+         postConstructs = environmentRefsGroup.getPostConstructs();
+         preDestroys = environmentRefsGroup.getPreDestroys();
+      }
+      
+      if (jbossEnvironmentRefsGroup != null)
+      {
+         jbossEjbRefs = jbossEnvironmentRefsGroup.getEjbReferences();
+         jbossResRefs = jbossEnvironmentRefsGroup.getResourceReferences();
+         jbossResEnvRefs = jbossEnvironmentRefsGroup.getResourceEnvironmentReferences();
+         jbossMessageDestinationRefs = jbossEnvironmentRefsGroup.getMessageDestinationReferences();
+      }
+      
+      EJBReferencesMetaData mergedEjbRefs = EJBReferencesMetaData.merge(jbossEjbRefs, ejbRefs, overridenFile, overrideFile);
+      if (mergedEjbRefs != null)
+         merged.setEjbReferences(mergedEjbRefs);
+      
+      ResourceReferencesMetaData mergedResRefs = ResourceReferencesMetaData.merge(jbossResRefs, resRefs, overridenFile, overrideFile);
+      if (mergedResRefs != null)
+         merged.setResourceReferences(mergedResRefs);
+
+      ResourceEnvironmentReferencesMetaData mergedResEnvRefs = ResourceEnvironmentReferencesMetaData.merge(jbossResEnvRefs, resEnvRefs, overridenFile, overrideFile);
+      if (mergedResEnvRefs != null)
+         merged.setResourceEnvironmentReferences(mergedResEnvRefs);
+
+      MessageDestinationReferencesMetaData mergedMessageDestinationRefs = MessageDestinationReferencesMetaData.merge(jbossMessageDestinationRefs, messageDestinationRefs, overridenFile, overrideFile);
+      if (mergedMessageDestinationRefs != null)
+         merged.setMessageDestinationReferences(mergedMessageDestinationRefs);
+      
+      if (envEntries != null)
+         merged.setEnvironmentEntries(envEntries);
+      
+      if (persistenceUnitRefs != null)
+         merged.setPersistenceUnitRefs(persistenceUnitRefs);
+      
+      if (postConstructs != null)
+         merged.setPostConstructs(postConstructs);
+      
+      if (preDestroys != null)
+         merged.setPreDestroys(preDestroys);
+      
+      return merged;
+   }
+
+}


Property changes on: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossRemoteEnvironmentRefsGroupMetaData.java
___________________________________________________________________
Name: svn:keywords
   + Author Date Id Revision
Name: svn:eol-style
   + native

Modified: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/ApplicationClient14EverythingUnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/ApplicationClient14EverythingUnitTestCase.java	2007-09-20 16:37:01 UTC (rev 65506)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/ApplicationClient14EverythingUnitTestCase.java	2007-09-20 16:37:32 UTC (rev 65507)
@@ -63,7 +63,7 @@
       ApplicationClient14MetaData appClientMetaData = unmarshal();
       //assertEverythingWithAppMetaData(appClientMetaData);
       assertDescriptionGroup("application-client", appClientMetaData.getDescriptionGroup());
-      assertRemoteEnvironment("appClient", appClientMetaData.getJndiEnvironmentRefsGroup(), true);
+      assertRemoteEnvironment("appClient", appClientMetaData, true);
       assertEquals("org.jboss.test.metadata.client.AppClientCallbackHandler", appClientMetaData.getCallbackHandler());
       assertMessageDestinations14("appClientMessageDestination", 2, appClientMetaData.getMessageDestinations(), true);
    }

Modified: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/ApplicationClient5EverythingUnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/ApplicationClient5EverythingUnitTestCase.java	2007-09-20 16:37:01 UTC (rev 65506)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/ApplicationClient5EverythingUnitTestCase.java	2007-09-20 16:37:32 UTC (rev 65507)
@@ -41,6 +41,15 @@
       super(name);
    }
 
+   protected void assertEverything(ApplicationClient5MetaData appClientMetaData)
+   {
+      //assertEverythingWithAppMetaData(appClientMetaData);
+      assertDescriptionGroup("application-client", appClientMetaData.getDescriptionGroup());
+      assertRemoteEnvironment("appClient", appClientMetaData, true);
+      assertEquals("org.jboss.test.metadata.client.AppClientCallbackHandler", appClientMetaData.getCallbackHandler());
+      assertMessageDestinations5("appClientMessageDestination", 2, appClientMetaData.getMessageDestinations(), true);
+   }
+   
    private void assertMessageDestinations5(String prefix, int size, MessageDestinationsMetaData messageDestinations, boolean full)
    {
       assertNotNull("no message destinations are set", messageDestinations);
@@ -61,11 +70,7 @@
    public void testEverything() throws Exception
    {
       ApplicationClient5MetaData appClientMetaData = unmarshal();
-      //assertEverythingWithAppMetaData(appClientMetaData);
-      assertDescriptionGroup("application-client", appClientMetaData.getDescriptionGroup());
-      assertRemoteEnvironment("appClient", appClientMetaData.getJndiEnvironmentRefsGroup(), true);
-      assertEquals("org.jboss.test.metadata.client.AppClientCallbackHandler", appClientMetaData.getCallbackHandler());
-      assertMessageDestinations5("appClientMessageDestination", 2, appClientMetaData.getMessageDestinations(), true);
+      assertEverything(appClientMetaData);
    }
    
    protected ApplicationClient5MetaData unmarshal() throws Exception

Added: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/ApplicationClientJBossMergeEverythingUnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/ApplicationClientJBossMergeEverythingUnitTestCase.java	                        (rev 0)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/ApplicationClientJBossMergeEverythingUnitTestCase.java	2007-09-20 16:37:32 UTC (rev 65507)
@@ -0,0 +1,120 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt 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.client;
+
+import org.jboss.metadata.client.jboss.JBossClient5MetaData;
+import org.jboss.metadata.client.spec.ApplicationClient14MetaData;
+import org.jboss.metadata.client.spec.ApplicationClient5MetaData;
+import org.jboss.metadata.javaee.spec.JavaEEMetaDataConstants;
+import org.jboss.metadata.javaee.spec.MessageDestinationMetaData;
+import org.jboss.metadata.javaee.spec.MessageDestinationsMetaData;
+import org.jboss.test.metadata.javaee.AbstractJavaEEEverythingTest;
+import org.jboss.xb.binding.sunday.unmarshalling.SchemaBinding;
+import org.jboss.xb.binding.sunday.unmarshalling.SchemaBindingResolver;
+import org.jboss.xb.builder.JBossXBBuilder;
+import org.w3c.dom.ls.LSInput;
+
+/**
+ * Test all entries of an JBoss specific application client descriptor.
+ *
+ * @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
+ * @version $Revision: $
+ */
+public class ApplicationClientJBossMergeEverythingUnitTestCase extends AbstractJavaEEEverythingTest
+{
+
+   public ApplicationClientJBossMergeEverythingUnitTestCase(String name)
+   {
+      super(name);
+   }
+
+   private void assertMessageDestinations5(String prefix, int size, MessageDestinationsMetaData messageDestinations, boolean full)
+   {
+      assertNotNull("no message destinations are set", messageDestinations);
+      assertEquals(size, messageDestinations.size());
+      int count = 1;
+      for(MessageDestinationMetaData messageDestinationMetaData : messageDestinations)
+      {
+         assertMessageDestination50(prefix + count, messageDestinationMetaData);
+         count++;
+      }
+   }
+
+   public static SchemaBindingResolver initResolver()
+   {
+      return new SchemaBindingResolver()
+      {
+         public String getBaseURI()
+         {
+            return null;
+         }
+
+         public SchemaBinding resolve(String nsUri, String baseURI, String schemaLocation)
+         {
+            SchemaBinding schema;
+            if(JavaEEMetaDataConstants.JAVAEE_NS.equals(nsUri))
+            {
+               schema = JBossXBBuilder.build(ApplicationClient5MetaData.class);
+            }
+            else if(JavaEEMetaDataConstants.J2EE_NS.equals(nsUri))
+            {
+               schema = JBossXBBuilder.build(ApplicationClient14MetaData.class);
+            }
+            else if(JavaEEMetaDataConstants.JBOSS_NS.equals(nsUri))
+            {
+               schema = JBossXBBuilder.build(JBossClient5MetaData.class);
+            }
+            else
+            {
+               throw new IllegalStateException("Unexpected namespace: " + nsUri);
+            }
+            return schema;
+         }
+
+         public LSInput resolveAsLSInput(String nsUri, String baseUri, String schemaLocation)
+         {
+            return null;
+         }
+
+         public void setBaseURI(String baseURI)
+         {
+         }
+      };
+   }
+   
+   public void testAppClient5Everything() throws Exception
+   {
+      ApplicationClient5MetaData appClientMetaData = unmarshal("ApplicationClient5Everything_testEverything.xml", ApplicationClient5MetaData.class, null);
+      new ApplicationClient5EverythingUnitTestCase("appClient").assertEverything(appClientMetaData);
+      
+      JBossClient5MetaData jbossClientMetaData = unmarshal("JBossClient5Everything_testEverything.xml", JBossClient5MetaData.class, null);
+      new JBossClient5EverythingUnitTestCase("jbossClient").assertEverything(jbossClientMetaData);
+      
+      jbossClientMetaData.setOverridenMetaData(appClientMetaData);
+      
+      // TODO: should this work?
+      //assertDescriptionGroup("application-client", jbossClientMetaData.getDescriptionGroup());
+      assertRemoteEnvironment("appClient", jbossClientMetaData, true);
+      assertEquals("org.jboss.test.metadata.client.AppClientCallbackHandler", jbossClientMetaData.getCallbackHandler());
+      assertMessageDestinations5("appClientMessageDestination", 2, jbossClientMetaData.getMergedMessageDestinations(), true);
+   }
+}


Property changes on: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/ApplicationClientJBossMergeEverythingUnitTestCase.java
___________________________________________________________________
Name: svn:keywords
   + Author Date Id Revision
Name: svn:eol-style
   + native

Added: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/JBossClient5EverythingUnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/JBossClient5EverythingUnitTestCase.java	                        (rev 0)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/JBossClient5EverythingUnitTestCase.java	2007-09-20 16:37:32 UTC (rev 65507)
@@ -0,0 +1,70 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt 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.client;
+
+import org.jboss.metadata.client.jboss.JBossClient5MetaData;
+import org.jboss.test.metadata.javaee.AbstractJavaEEEverythingTest;
+import org.jboss.xb.binding.sunday.unmarshalling.SchemaBindingResolver;
+
+/**
+ * Test all entries of an JBoss client 5 descriptor.
+ *
+ * @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
+ * @version $Revision: $
+ */
+public class JBossClient5EverythingUnitTestCase extends AbstractJavaEEEverythingTest
+{
+
+   public JBossClient5EverythingUnitTestCase(String name)
+   {
+      super(name);
+   }
+
+   protected void assertEverything(JBossClient5MetaData jbossClientMetaData)
+   {
+      assertEquals("appClientJndiName", jbossClientMetaData.getJndiName());
+      assertEquals("http://localhost", jbossClientMetaData.getJBossJndiEnvironmentRefsGroup().getResourceReferences().get("appClientResourceRef2Name").getResUrl());
+      assertEquals(2, jbossClientMetaData.getDepends().size());
+      int count = 1;
+      for(String depends : jbossClientMetaData.getDepends())
+      {
+         assertEquals("appClientDepends" + count, depends);
+         count++;
+      }
+   }
+   
+   public static SchemaBindingResolver initResolver()
+   {
+      return schemaResolverForClass(JBossClient5MetaData.class);
+   }
+   
+   public void testEverything() throws Exception
+   {
+      JBossClient5MetaData jbossClientMetaData = unmarshal();
+      assertEverything(jbossClientMetaData);
+   }
+   
+   protected JBossClient5MetaData unmarshal() throws Exception
+   {
+      return unmarshal(JBossClient5MetaData.class);
+   }
+}


Property changes on: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/client/JBossClient5EverythingUnitTestCase.java
___________________________________________________________________
Name: svn:keywords
   + Author Date Id Revision
Name: svn:eol-style
   + native

Modified: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/javaee/AbstractJavaEEEverythingTest.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/javaee/AbstractJavaEEEverythingTest.java	2007-09-20 16:37:01 UTC (rev 65506)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/javaee/AbstractJavaEEEverythingTest.java	2007-09-20 16:37:32 UTC (rev 65507)
@@ -70,7 +70,7 @@
 import org.jboss.metadata.javaee.spec.PersistenceUnitReferencesMetaData;
 import org.jboss.metadata.javaee.spec.PropertiesMetaData;
 import org.jboss.metadata.javaee.spec.PropertyMetaData;
-import org.jboss.metadata.javaee.spec.RemoteEnvironmentRefsGroupMetaData;
+import org.jboss.metadata.javaee.spec.RemoteEnvironment;
 import org.jboss.metadata.javaee.spec.ResourceAuthorityType;
 import org.jboss.metadata.javaee.spec.ResourceEnvironmentReferenceMetaData;
 import org.jboss.metadata.javaee.spec.ResourceEnvironmentReferencesMetaData;
@@ -82,7 +82,6 @@
 import org.jboss.metadata.javaee.spec.SecurityRoleMetaData;
 import org.jboss.metadata.javaee.spec.SecurityRolesMetaData;
 import org.jboss.metadata.javaee.support.IdMetaData;
-import org.jboss.test.metadata.javaee.AbstractJavaEEMetaDataTest;
 
 /**
  * AbstractJavaEEEverythingTest.
@@ -116,7 +115,7 @@
    
    protected void assertDescriptionGroup(String suffix, DescriptionGroupMetaData group)
    {
-      assertNotNull(group);
+      assertNotNull("no description group meta data is set", group);
       assertDescriptions(suffix, group.getDescriptions());
       assertDisplayNames(suffix, group.getDisplayNames());
       assertIcons(suffix, group.getIcons());
@@ -124,7 +123,7 @@
    
    protected void assertDescriptions(String suffix, Descriptions descriptions)
    {
-      assertNotNull(descriptions);
+      assertNotNull("no descriptions are set", descriptions);
       assertTrue(descriptions instanceof DescriptionsImpl);
       DescriptionsImpl impl = (DescriptionsImpl) descriptions;
       assertEquals(3, impl.size());
@@ -374,7 +373,7 @@
       assertEquals(size + 1, count);
    }
 
-   protected void assertRemoteEnvironment(String prefix, RemoteEnvironmentRefsGroupMetaData environment, boolean full)
+   protected void assertRemoteEnvironment(String prefix, RemoteEnvironment environment, boolean full)
    {
       assertNotNull(environment);
       if (full)

Added: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/client/JBossClient5Everything_testEverything.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/client/JBossClient5Everything_testEverything.xml	                        (rev 0)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/client/JBossClient5Everything_testEverything.xml	2007-09-20 16:37:32 UTC (rev 65507)
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<jboss-client xmlns="http://www.jboss.com/xml/ns/javaee"
+                    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+                    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/jboss-client_5_0.xsd"
+                    version="5.0"
+                    id="appclient-test">
+   <!-- jndi name -->
+   <jndi-name>appClientJndiName</jndi-name>
+   
+   <!-- resource ref -->
+   <resource-ref id="appClientResourceRef2-id">
+      <res-ref-name>appClientResourceRef2Name</res-ref-name>
+      <res-url>http://localhost</res-url>
+   </resource-ref>
+      
+   <!-- depends -->
+   <depends>appClientDepends1</depends>
+   <depends>appClientDepends2</depends>
+</jboss-client>
\ No newline at end of file


Property changes on: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/client/JBossClient5Everything_testEverything.xml
___________________________________________________________________
Name: svn:keywords
   + Author Date Id Revision
Name: svn:eol-style
   + native




More information about the jboss-cvs-commits mailing list