[jboss-cvs] JBossAS SVN: r66427 - in projects/metadata/trunk/src: test/java/org/jboss/test/metadata/web and 1 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Oct 25 08:23:33 EDT 2007


Author: alex.loubyansky at jboss.com
Date: 2007-10-25 08:23:33 -0400 (Thu, 25 Oct 2007)
New Revision: 66427

Added:
   projects/metadata/trunk/src/main/java/org/jboss/metadata/web/jboss/ClassLoadingMetaData.java
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/web/JBossWebApp24UnitTestCase.java
   projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/web/JBossWebApp24_testClassLoading.xml
Modified:
   projects/metadata/trunk/src/main/java/org/jboss/metadata/web/jboss/JBossWebMetaData.java
Log:
put loader-repository and java2ClassLoadingCompliance into ClassLoadingMetaData

Added: projects/metadata/trunk/src/main/java/org/jboss/metadata/web/jboss/ClassLoadingMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/web/jboss/ClassLoadingMetaData.java	                        (rev 0)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/web/jboss/ClassLoadingMetaData.java	2007-10-25 12:23:33 UTC (rev 66427)
@@ -0,0 +1,60 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.metadata.web.jboss;
+
+import javax.xml.bind.annotation.XmlAttribute;
+
+import org.jboss.metadata.common.jboss.LoaderRepositoryMetaData;
+
+
+/**
+ * A ClassLoadingMetaData.
+ * 
+ * @author <a href="alex at jboss.com">Alexey Loubyansky</a>
+ * @version $Revision: 1.1 $
+ */
+public class ClassLoadingMetaData
+{
+   private boolean java2ClassLoadingCompliance;
+   private LoaderRepositoryMetaData loaderRepository;
+   
+   @XmlAttribute(name="java2ClassLoadingCompliance")
+   public boolean isJava2ClassLoadingCompliance()
+   {
+      return java2ClassLoadingCompliance;
+   }
+   
+   public void setJava2ClassLoadingCompliance(boolean value)
+   {
+      this.java2ClassLoadingCompliance = value;
+   }
+   
+   public LoaderRepositoryMetaData getLoaderRepository()
+   {
+      return loaderRepository;
+   }
+   
+   public void setLoaderRepository(LoaderRepositoryMetaData loaderRepository)
+   {
+      this.loaderRepository = loaderRepository;
+   }
+}

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/web/jboss/JBossWebMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/web/jboss/JBossWebMetaData.java	2007-10-25 12:04:47 UTC (rev 66426)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/web/jboss/JBossWebMetaData.java	2007-10-25 12:23:33 UTC (rev 66427)
@@ -31,7 +31,6 @@
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlTransient;
 
-import org.jboss.metadata.common.jboss.LoaderRepositoryMetaData;
 import org.jboss.metadata.common.jboss.WebserviceDescriptionsMetaData;
 import org.jboss.metadata.ejb.jboss.JBossEnvironmentRefsGroupMetaData;
 import org.jboss.metadata.ejb.spec.SecurityIdentityMetaData;
@@ -58,8 +57,6 @@
 import org.jboss.metadata.javaee.spec.SecurityRoleMetaData;
 import org.jboss.metadata.javaee.spec.SecurityRoleRefsMetaData;
 import org.jboss.metadata.javaee.spec.SecurityRolesMetaData;
-import org.jboss.metadata.javaee.spec.ServiceReferenceMetaData;
-import org.jboss.metadata.javaee.spec.ServiceReferencesMetaData;
 import org.jboss.metadata.javaee.support.AbstractMappedMetaData;
 import org.jboss.metadata.javaee.support.IdMetaDataImplWithOverride;
 import org.jboss.metadata.web.spec.SecurityConstraintMetaData;
@@ -84,9 +81,8 @@
    private String alternativeDD;
    private String securityDomain;
    private String jaccContextID;
-   private boolean java2ClassLoadingCompliance;
    /** The loader repository */
-   private LoaderRepositoryMetaData loaderRepository;
+   private ClassLoadingMetaData classLoading;
    private ServletsMetaData servlets = new ServletsMetaData();
    /** A list of extra dependencies to wait on */
    private List<String> depends;
@@ -274,39 +270,16 @@
       this.depends = depends;
    }
 
-   public boolean getJava2ClassLoadingCompliance()
+   public ClassLoadingMetaData getClassLoading()
    {
-      return java2ClassLoadingCompliance;
+      return classLoading;
    }
-   public void setJava2ClassLoadingCompliance(boolean java2ClassLoadingCompliance)
-   {
-      this.java2ClassLoadingCompliance = java2ClassLoadingCompliance;
-   }
 
-   /**
-    * Get the loaderRepository.
-    * 
-    * @return the loaderRepository.
-    */
-   
-   public LoaderRepositoryMetaData getLoaderRepository()
+   public void setClassLoading(ClassLoadingMetaData classLoading)
    {
-      return loaderRepository;
+      this.classLoading = classLoading;
    }
-
-   /**
-    * Set the loaderRepository.
-    * 
-    * @param loaderRepository the loaderRepository.
-    * @throws IllegalArgumentException for a null loaderRepository
-    */
-   public void setLoaderRepository(LoaderRepositoryMetaData loaderRepository)
-   {
-      if (loaderRepository == null)
-         throw new IllegalArgumentException("Null loaderRepository");
-      this.loaderRepository = loaderRepository;
-   }
-
+   
    public String getJaccContextID()
    {
       return jaccContextID;

Added: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/web/JBossWebApp24UnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/web/JBossWebApp24UnitTestCase.java	                        (rev 0)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/web/JBossWebApp24UnitTestCase.java	2007-10-25 12:23:33 UTC (rev 66427)
@@ -0,0 +1,66 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.test.metadata.web;
+
+import org.jboss.metadata.common.jboss.LoaderRepositoryMetaData;
+import org.jboss.metadata.web.jboss.ClassLoadingMetaData;
+import org.jboss.metadata.web.jboss.JBoss50DTDWebMetaData;
+import org.jboss.metadata.web.jboss.JBossWebMetaData;
+import org.jboss.test.metadata.javaee.AbstractJavaEEEverythingTest;
+import org.jboss.xb.binding.sunday.unmarshalling.SchemaBindingResolver;
+
+
+/**
+ * A JBossWebApp24UnitTestCase.
+ * 
+ * @author <a href="alex at jboss.com">Alexey Loubyansky</a>
+ * @version $Revision: 1.1 $
+ */
+public class JBossWebApp24UnitTestCase extends AbstractJavaEEEverythingTest
+{
+   public static SchemaBindingResolver initResolver()
+   {
+      return schemaResolverForClass(JBoss50DTDWebMetaData.class);
+   }
+
+   public JBossWebApp24UnitTestCase(String name)
+   {
+      super(name);
+   }
+
+   public void testClassLoading() throws Exception
+   {
+      //enableTrace("org.jboss.xb.builder");
+      JBossWebMetaData jbossWeb = unmarshal();
+      ClassLoadingMetaData classLoading = jbossWeb.getClassLoading();
+      assertNotNull(classLoading);
+      assertTrue(classLoading.isJava2ClassLoadingCompliance());
+      LoaderRepositoryMetaData loaderRepository = classLoading.getLoaderRepository();
+      assertNotNull(loaderRepository);
+      assertEquals("jbossws.jbws1581:domain=jaxws-jbws1581.war", loaderRepository.getName());
+   }
+   
+   protected JBossWebMetaData unmarshal() throws Exception
+   {
+      return unmarshal(JBoss50DTDWebMetaData.class);
+   }
+}

Added: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/web/JBossWebApp24_testClassLoading.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/web/JBossWebApp24_testClassLoading.xml	                        (rev 0)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/web/JBossWebApp24_testClassLoading.xml	2007-10-25 12:23:33 UTC (rev 66427)
@@ -0,0 +1,7 @@
+<!DOCTYPE jboss-web PUBLIC "-//JBoss//DTD Web Application 2.4//EN" "http://www.jboss.org/j2ee/dtd/jboss-web_4_0.dtd">
+
+<jboss-web>
+  <class-loading java2ClassLoadingCompliance='true'>
+    <loader-repository>jbossws.jbws1581:domain=jaxws-jbws1581.war</loader-repository>
+  </class-loading>
+</jboss-web>




More information about the jboss-cvs-commits mailing list