[jboss-cvs] JBossAS SVN: r102109 - in projects/metadata/web/trunk: src/main/java/org/jboss/metadata/web/jboss and 2 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Mar 9 00:57:51 EST 2010
Author: bstansberry at jboss.com
Date: 2010-03-09 00:57:50 -0500 (Tue, 09 Mar 2010)
New Revision: 102109
Added:
projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/JBossWebModuleNameUnitTestCase.java
Modified:
projects/metadata/web/trunk/
projects/metadata/web/trunk/.classpath
projects/metadata/web/trunk/pom.xml
projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/jboss/JBossWebMetaData.java
projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/Web30MetaData.java
projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp6EverythingUnitTestCase.java
Log:
[JBMETA-268] EE 6 module name concept in war metadata
Property changes on: projects/metadata/web/trunk
___________________________________________________________________
Name: svn:ignore
+ .settings
target
Modified: projects/metadata/web/trunk/.classpath
===================================================================
--- projects/metadata/web/trunk/.classpath 2010-03-09 04:54:54 UTC (rev 102108)
+++ projects/metadata/web/trunk/.classpath 2010-03-09 05:57:50 UTC (rev 102109)
@@ -31,18 +31,14 @@
<classpathentry kind="var" path="M2_REPO/org/jboss/jboss-vfs/2.0.0.CR1/jboss-vfs-2.0.0.CR1.jar"/>
<classpathentry kind="var" path="M2_REPO/org/jboss/security/jbosssx-client/2.0.3.SP1/jbosssx-client-2.0.3.SP1.jar" sourcepath="M2_REPO/org/jboss/security/jbosssx-client/2.0.3.SP1/jbosssx-client-2.0.3.SP1-sources.jar"/>
<classpathentry kind="var" path="M2_REPO/org/jboss/ws/jbossws-spi/1.0.6.GA/jbossws-spi-1.0.6.GA.jar"/>
- <classpathentry kind="var" path="M2_REPO/jboss/web/servlet-api/3.0.0.alpha-6/servlet-api-3.0.0.alpha-6.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/jbossxb/2.0.2.Beta1/jbossxb-2.0.2.Beta1.jar" sourcepath="M2_REPO/org/jboss/jbossxb/2.0.2.Beta1/jbossxb-2.0.2.Beta1-sources.jar">
- <attributes>
- <attribute name="javadoc_location" value="jar:file:/C:/Users/avoka/.m2/repository/org/jboss/jbossxb/2.0.2.Beta1/jbossxb-2.0.2.Beta1-javadoc.jar!/"/>
- </attributes>
- </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/jboss/web/servlet-api/3.0.0.alpha-13/servlet-api-3.0.0.alpha-13.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jbossxb/2.0.2.Beta1/jbossxb-2.0.2.Beta1.jar" sourcepath="M2_REPO/org/jboss/jbossxb/2.0.2.Beta1/jbossxb-2.0.2.Beta1-sources.jar"/>
<classpathentry kind="var" path="M2_REPO/org/jboss/naming/jnp-client/5.0.1.GA/jnp-client-5.0.1.GA.jar"/>
<classpathentry kind="var" path="M2_REPO/junit/junit/4.4/junit-4.4.jar"/>
<classpathentry kind="var" path="M2_REPO/apache-log4j/log4j/1.2.14/log4j-1.2.14.jar"/>
<classpathentry kind="var" path="M2_REPO/log4j/log4j/1.2.14/log4j-1.2.14.jar" sourcepath="M2_REPO/log4j/log4j/1.2.14/log4j-1.2.14-sources.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/metadata/metadata-common/2.0.0-SNAPSHOT/metadata-common-2.0.0-SNAPSHOT.jar" sourcepath="M2_REPO/org/jboss/metadata/metadata-common/2.0.0-SNAPSHOT/metadata-common-2.0.0-SNAPSHOT-sources.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/jboss/metadata/metadata-common/2.0.0-SNAPSHOT/metadata-common-2.0.0-SNAPSHOT-tests.jar" sourcepath="M2_REPO/org/jboss/metadata/metadata-common/2.0.0-SNAPSHOT/metadata-common-2.0.0-SNAPSHOT-test-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/metadata/jboss-metadata-common/2.0.0.Alpha14/jboss-metadata-common-2.0.0.Alpha14.jar" sourcepath="M2_REPO/org/jboss/metadata/jboss-metadata-common/2.0.0.Alpha14/jboss-metadata-common-2.0.0.Alpha14-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/metadata/jboss-metadata-common/2.0.0.Alpha14/jboss-metadata-common-2.0.0.Alpha14-tests.jar" sourcepath="M2_REPO/org/jboss/metadata/jboss-metadata-common/2.0.0.Alpha14/jboss-metadata-common-2.0.0.Alpha14-tests-sources.jar"/>
<classpathentry kind="var" path="M2_REPO/apache-xerces/xercesImpl/2.9.1/xercesImpl-2.9.1.jar"/>
<classpathentry kind="var" path="M2_REPO/apache-xerces/xml-apis/2.9.1/xml-apis-2.9.1.jar"/>
<classpathentry kind="var" path="M2_REPO/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar"/>
Modified: projects/metadata/web/trunk/pom.xml
===================================================================
--- projects/metadata/web/trunk/pom.xml 2010-03-09 04:54:54 UTC (rev 102108)
+++ projects/metadata/web/trunk/pom.xml 2010-03-09 05:57:50 UTC (rev 102109)
@@ -94,13 +94,13 @@
<dependency>
<groupId>org.jboss.metadata</groupId>
<artifactId>jboss-metadata-common</artifactId>
- <version>2.0.0.Alpha8</version>
+ <version>2.0.0.Alpha14</version>
</dependency>
<dependency>
<groupId>org.jboss.metadata</groupId>
<artifactId>jboss-metadata-common</artifactId>
- <version>2.0.0.Alpha8</version>
+ <version>2.0.0.Alpha14</version>
<type>test-jar</type>
<scope>test</scope>
</dependency>
Modified: projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/jboss/JBossWebMetaData.java
===================================================================
--- projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/jboss/JBossWebMetaData.java 2010-03-09 04:54:54 UTC (rev 102108)
+++ projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/jboss/JBossWebMetaData.java 2010-03-09 05:57:50 UTC (rev 102109)
@@ -34,6 +34,7 @@
import org.jboss.metadata.common.jboss.WebserviceDescriptionsMetaData;
import org.jboss.metadata.ejb.jboss.JBossEnvironmentRefsGroupMetaData;
+import org.jboss.metadata.javaee.jboss.NamedModule;
import org.jboss.metadata.javaee.jboss.RunAsIdentityMetaData;
import org.jboss.metadata.javaee.spec.EJBLocalReferenceMetaData;
import org.jboss.metadata.javaee.spec.EJBLocalReferencesMetaData;
@@ -65,7 +66,7 @@
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.IdMetaDataImplWithDescriptionGroup;
+import org.jboss.metadata.javaee.support.NamedModuleImpl;
import org.jboss.metadata.web.spec.AnnotationMetaData;
import org.jboss.metadata.web.spec.AnnotationsMetaData;
import org.jboss.metadata.web.spec.ErrorPageMetaData;
@@ -93,7 +94,7 @@
* @author Scott.Stark at jboss.org
* @version $Revision: 84989 $
*/
-public class JBossWebMetaData extends IdMetaDataImplWithDescriptionGroup
+public class JBossWebMetaData extends NamedModuleImpl
{
private static final long serialVersionUID = 1;
@@ -927,6 +928,11 @@
Web25MetaData web25MD = (Web25MetaData) original;
setMetadataComplete(web25MD.isMetadataComplete());
}
+
+ if(override != null && override.getModuleName() != null)
+ setModuleName(override.getModuleName());
+ else if(original instanceof NamedModule && ((NamedModule) original).getModuleName() != null)
+ setModuleName(((NamedModule) original).getModuleName());
if(override != null && override.contextParams!= null)
setContextParams(override.contextParams);
Modified: projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/Web30MetaData.java
===================================================================
--- projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/Web30MetaData.java 2010-03-09 04:54:54 UTC (rev 102108)
+++ projects/metadata/web/trunk/src/main/java/org/jboss/metadata/web/spec/Web30MetaData.java 2010-03-09 05:57:50 UTC (rev 102109)
@@ -7,6 +7,7 @@
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
+import org.jboss.metadata.javaee.jboss.NamedModule;
import org.jboss.metadata.javaee.spec.JavaEEMetaDataConstants;
import org.jboss.xb.annotations.JBossXmlSchema;
@@ -28,7 +29,7 @@
propOrder={"moduleName", "absoluteOrdering", "descriptionGroup", "distributable", "contextParams", "filters", "filterMappings", "listeners", "servlets",
"servletMappings", "sessionConfig", "mimeMappings", "welcomeFileList", "errorPages", "jspConfig", "securityConstraints",
"loginConfig", "securityRoles", "jndiEnvironmentRefsGroup", "messageDestinations", "localEncodings", "absoluteOrdering"})
-public class Web30MetaData extends WebMetaData
+public class Web30MetaData extends WebMetaData implements NamedModule
{
private static final long serialVersionUID = 1;
private boolean metadataComplete;
@@ -60,6 +61,7 @@
{
return moduleName;
}
+ @XmlAttribute(name="module-name")
public void setModuleName(String moduleName)
{
this.moduleName = moduleName;
Added: projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/JBossWebModuleNameUnitTestCase.java
===================================================================
--- projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/JBossWebModuleNameUnitTestCase.java (rev 0)
+++ projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/JBossWebModuleNameUnitTestCase.java 2010-03-09 05:57:50 UTC (rev 102109)
@@ -0,0 +1,136 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, Red Hat, Inc. 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.web;
+
+import junit.framework.TestCase;
+
+import org.jboss.metadata.web.jboss.JBossWebMetaData;
+import org.jboss.metadata.web.spec.Web30MetaData;
+
+/**
+ * Tests of JBossWebMetaData's merge logic for module name.
+ *
+ * @author Brian Stansberry
+ * @version $Revision$
+ */
+public class JBossWebModuleNameUnitTestCase extends TestCase
+{
+
+ public void testOverride()
+ {
+ JBossWebMetaData merged = new JBossWebMetaData();
+ JBossWebMetaData override = new JBossWebMetaData();
+
+ merged.merge(override, (JBossWebMetaData) null);
+ assertNull(merged.getModuleName());
+
+ merged = new JBossWebMetaData();
+ override.setModuleName("over");
+ merged.merge(override, (JBossWebMetaData) null);
+ assertEquals("over", merged.getModuleName());
+
+ merged = new JBossWebMetaData();
+ JBossWebMetaData orig = new JBossWebMetaData();
+ orig.setModuleName("orig");
+ merged.merge(override, orig);
+ assertEquals("over", merged.getModuleName());
+ }
+
+ public void testOriginal()
+ {
+ JBossWebMetaData merged = new JBossWebMetaData();
+ JBossWebMetaData orig = new JBossWebMetaData();
+
+ merged.merge((JBossWebMetaData) null, orig);
+ assertNull(merged.getModuleName());
+
+ orig.setModuleName("orig");
+
+ merged.merge((JBossWebMetaData) null, orig);
+ assertEquals("orig", merged.getModuleName());
+
+ merged = new JBossWebMetaData();
+ JBossWebMetaData override = new JBossWebMetaData();
+ override.setModuleName("over");
+ orig.setModuleName(null);
+ merged.merge(override, orig);
+ assertEquals("over", merged.getModuleName());
+ }
+
+ public void testNull()
+ {
+ JBossWebMetaData merged = new JBossWebMetaData();
+
+ merged.merge((JBossWebMetaData) null, (JBossWebMetaData) null);
+ assertNull(merged.getModuleName());
+ }
+
+ public void testOverrideOfSpec()
+ {
+ JBossWebMetaData merged = new JBossWebMetaData();
+ JBossWebMetaData override = new JBossWebMetaData();
+
+ merged.merge(override, (Web30MetaData) null);
+ assertNull(merged.getModuleName());
+
+ merged = new JBossWebMetaData();
+ override.setModuleName("over");
+ merged.merge(override, (Web30MetaData) null);
+ assertEquals("over", merged.getModuleName());
+
+ merged = new JBossWebMetaData();
+ Web30MetaData spec = new Web30MetaData();
+ spec.setModuleName("spec");
+ merged.merge(override, spec);
+ assertEquals("over", merged.getModuleName());
+ }
+
+ public void testSpec()
+ {
+ JBossWebMetaData merged = new JBossWebMetaData();
+ Web30MetaData spec = new Web30MetaData();
+
+ merged.merge((JBossWebMetaData) null, spec);
+ assertNull(merged.getModuleName());
+
+ spec.setModuleName("spec");
+
+ merged.merge((JBossWebMetaData) null, spec);
+ assertEquals("spec", merged.getModuleName());
+
+ merged = new JBossWebMetaData();
+ JBossWebMetaData override = new JBossWebMetaData();
+ override.setModuleName("over");
+ spec.setModuleName(null);
+ merged.merge(override, spec);
+ assertEquals("over", merged.getModuleName());
+ }
+
+ public void testNullSpec()
+ {
+ JBossWebMetaData merged = new JBossWebMetaData();
+
+ merged.merge((JBossWebMetaData) null, (Web30MetaData) null);
+ assertNull(merged.getModuleName());
+ }
+
+}
Modified: projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp6EverythingUnitTestCase.java
===================================================================
--- projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp6EverythingUnitTestCase.java 2010-03-09 04:54:54 UTC (rev 102108)
+++ projects/metadata/web/trunk/src/test/java/org/jboss/test/metadata/web/WebApp6EverythingUnitTestCase.java 2010-03-09 05:57:50 UTC (rev 102109)
@@ -68,18 +68,19 @@
public void testEverything() throws Exception
{
- WebMetaData webApp = unmarshal();
+ Web30MetaData webApp = unmarshal();
assertEverything(webApp, Mode.SPEC);
}
- protected WebMetaData unmarshal() throws Exception
+ protected Web30MetaData unmarshal() throws Exception
{
- return unmarshal(WebMetaData.class);
+ return unmarshal(Web30MetaData.class);
}
- protected void assertEverything(WebMetaData webApp, Mode mode)
+ protected void assertEverything(Web30MetaData webApp, Mode mode)
throws Exception
{
+ assertModuleName(webApp);
assertDescriptionGroup("web-app", webApp.getDescriptionGroup());
assertRemoteEnvironment("webApp", webApp, true, mode);
assertMessageDestinations5("webAppMessageDestination", 2, webApp.getMessageDestinations(), true);
@@ -270,4 +271,10 @@
assertTrue("Unchecked Sec Constraint?", scmd.isUnchecked());
assertNull(scmd.getAuthConstraint());
}
+
+ private void assertModuleName(WebMetaData webApp)
+ {
+ Web30MetaData webApp30 = (Web30MetaData) webApp;
+ assertEquals("foo", webApp30.getModuleName());
+ }
}
\ No newline at end of file
More information about the jboss-cvs-commits
mailing list