[jboss-cvs] JBossAS SVN: r79326 - in projects/metadata/trunk/src: main/resources/schema and 2 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Oct 9 22:13:27 EDT 2008
Author: jeff.zhang
Date: 2008-10-09 22:13:27 -0400 (Thu, 09 Oct 2008)
New Revision: 79326
Added:
projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/RaConfigPropertyMetaData.java
projects/metadata/trunk/src/main/resources/schema/jboss-ra_1_0.xsd
projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/JbossRA10UnitTestCase.java
projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JbossRA10_testBasic.xml
Modified:
projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/DependsMetaData.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/JBossRAMetaData.java
Log:
[JBMETA-113] add JbossRA10UnitTestCase
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/DependsMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/DependsMetaData.java 2008-10-10 01:41:07 UTC (rev 79325)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/DependsMetaData.java 2008-10-10 02:13:27 UTC (rev 79326)
@@ -28,6 +28,8 @@
*
* @author <a href="mailto:vicky.kak at jboss.com">Vicky Kak</a>
*/
+
+//TODO currently xsd doesn't support depends feature in jboss-ra.xml
public class DependsMetaData implements Serializable
{
private static final long serialVersionUID = -4864068414581654366L;
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/JBossRAMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/JBossRAMetaData.java 2008-10-10 01:41:07 UTC (rev 79325)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/JBossRAMetaData.java 2008-10-10 02:13:27 UTC (rev 79326)
@@ -23,30 +23,46 @@
import java.util.List;
-import org.jboss.metadata.rar.spec.ConfigPropertyMetaDataContainer;
-import org.jboss.util.collection.CollectionsFactory;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlNs;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+import org.jboss.metadata.javaee.spec.JavaEEMetaDataConstants;
+import org.jboss.metadata.javaee.support.IdMetaDataImpl;
+
+import org.jboss.xb.annotations.JBossXmlSchema;
+
/**
* A JBossRAMetaData.
*
* @author <a href="weston.price at jboss.com">Weston Price</a>
* @author <a href="vicky.kak at jboss.com">Vicky Kak</a>
+ * @author Jeff Zhang
* @version $Revision: 75672 $
*/
-public class JBossRAMetaData extends ConfigPropertyMetaDataContainer
+ at XmlRootElement(name="jboss-ra", namespace="http://www.jboss.org/schema/ra")
+ at JBossXmlSchema(
+ xmlns={@XmlNs(namespaceURI = "http://www.jboss.org/schema/ra", prefix = "ra")},
+ ignoreUnresolvedFieldOrClass=false,
+ namespace="http://www.jboss.org/schema/ra",
+ elementFormDefault=XmlNsForm.QUALIFIED,
+ normalizeSpace=true)
+public class JBossRAMetaData extends IdMetaDataImpl
{
/** The serialVersionUID */
private static final long serialVersionUID = -8041048198795930659L;
- private List<DependsMetaData> dependsNameList = CollectionsFactory.createLazyList();
-
- public void addDependsMetaData(DependsMetaData dmd)
- {
- dependsNameList.add(dmd);
+ private List<RaConfigPropertyMetaData> raConfigProps;
+
+ @XmlElement(name="ra-config-property")
+ public void setRaConfigProps(List<RaConfigPropertyMetaData> raConfigProps) {
+ this.raConfigProps = raConfigProps;
}
+
+ public List<RaConfigPropertyMetaData> getRaConfigProps() {
+ return raConfigProps;
+ }
- public List<DependsMetaData> getDependsMetaData()
- {
- return dependsNameList;
- }
+
}
Added: projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/RaConfigPropertyMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/RaConfigPropertyMetaData.java (rev 0)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/RaConfigPropertyMetaData.java 2008-10-10 02:13:27 UTC (rev 79326)
@@ -0,0 +1,123 @@
+/*
+ * 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.rar.jboss;
+
+import javax.xml.bind.annotation.XmlElement;
+
+import org.jboss.metadata.javaee.support.IdMetaDataImplWithDescriptionGroup;
+
+/**
+ * Config property meta data
+ *
+ * @author Jeff Zhang
+ * @version $Revision:$
+ */
+public class RaConfigPropertyMetaData extends IdMetaDataImplWithDescriptionGroup
+{
+ private static final long serialVersionUID = -5247621229521854849L;
+
+ /** The name */
+ private String name;
+
+ /** The type */
+ private String type = "java.lang.String";
+
+ /** The value */
+ private String value = "";
+
+ /**
+ * Get the name
+ *
+ * @return the name
+ */
+ public String getName()
+ {
+ return name;
+ }
+
+ /**
+ * Set the name
+ *
+ * @param name the name
+ */
+ @XmlElement(name="ra-config-property-name")
+ public void setName(String name)
+ {
+ this.name = name;
+ }
+
+ /**
+ * Get the type
+ *
+ * @return the type
+ */
+ public String getType()
+ {
+ return type;
+ }
+
+ /**
+ * Set the type
+ *
+ * @param type the type
+ */
+ @XmlElement(name="ra-config-property-type")
+ public void setType(String type)
+ {
+ this.type = type;
+ }
+
+ /**
+ * Get the value
+ *
+ * @return the value
+ */
+ public String getValue()
+ {
+ return value;
+ }
+
+ /**
+ * Set the value
+ *
+ * @param value the value
+ */
+ @XmlElement(name="ra-config-property-value")
+ public void setValue(String value)
+ {
+ this.value = value;
+ }
+
+ public String toString()
+ {
+ StringBuffer buffer = new StringBuffer();
+ buffer.append("RaConfigPropertyMetaData").append('@');
+ buffer.append(Integer.toHexString(System.identityHashCode(this)));
+ buffer.append("[name=").append(name);
+ if (type != null)
+ buffer.append(" type=").append(type);
+ if (value != null)
+ buffer.append(" value=").append(value);
+ buffer.append(']');
+ return buffer.toString();
+ }
+}
Added: projects/metadata/trunk/src/main/resources/schema/jboss-ra_1_0.xsd
===================================================================
--- projects/metadata/trunk/src/main/resources/schema/jboss-ra_1_0.xsd (rev 0)
+++ projects/metadata/trunk/src/main/resources/schema/jboss-ra_1_0.xsd 2008-10-10 02:13:27 UTC (rev 79326)
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.jboss.org/schema/ra"
+ xmlns:ra="http://www.jboss.org/schema/ra" xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:j2ee="http://java.sun.com/xml/ns/j2ee/"
+ elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
+
+ <xsd:include schemaLocation="j2ee_1_4.xsd"/>
+ <xs:element name="jboss-ra" type="ra:jbossRaType">
+
+ </xs:element>
+
+ <xs:complexType name="jbossRaType">
+
+ <xs:sequence>
+ <xs:element name="ra-config-property" type="ra:ra-config-property-type" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+
+ </xs:complexType>
+
+ <xs:complexType name="ra-config-property-type">
+
+ <xs:sequence>
+ <xs:element name="ra-config-property-name" type="xs:string" minOccurs="1" maxOccurs="1"/>
+ <xs:element name="ra-config-property-type" type="xs:string" minOccurs="1" maxOccurs="1"/>
+ <xs:element name="ra-config-property-value" type="xs:string" minOccurs="0" maxOccurs="1"/>
+ </xs:sequence>
+ </xs:complexType>
+
+</xs:schema>
\ No newline at end of file
Added: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/JbossRA10UnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/JbossRA10UnitTestCase.java (rev 0)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/JbossRA10UnitTestCase.java 2008-10-10 02:13:27 UTC (rev 79326)
@@ -0,0 +1,29 @@
+package org.jboss.test.metadata.rar;
+
+import org.jboss.metadata.rar.jboss.JBossRAMetaData;
+import org.jboss.test.metadata.javaee.AbstractJavaEEMetaDataTest;
+import org.jboss.xb.binding.sunday.unmarshalling.DefaultSchemaResolver;
+import org.jboss.xb.binding.sunday.unmarshalling.SchemaBindingResolver;
+
+public class JbossRA10UnitTestCase extends AbstractJavaEEMetaDataTest
+{
+ public static SchemaBindingResolver initResolver()
+ {
+ DefaultSchemaResolver resolver = new DefaultSchemaResolver();
+ resolver.addClassBindingForLocation("jboss-ra_1_0.xsd", JBossRAMetaData.class);
+ return resolver;
+ }
+
+ public JbossRA10UnitTestCase(String name) {
+ super(name);
+ }
+
+ public void testBasic() throws Exception
+ {
+ JBossRAMetaData jbossRA = unmarshal(JBossRAMetaData.class);
+ assertNotNull(jbossRA);
+ assertEquals(jbossRA.getRaConfigProps().size(), 9);
+ assertEquals(jbossRA.getRaConfigProps().get(0).getValue(), "XMLOVERRIDE");
+
+ }
+}
Added: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JbossRA10_testBasic.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JbossRA10_testBasic.xml (rev 0)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JbossRA10_testBasic.xml 2008-10-10 02:13:27 UTC (rev 79326)
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<jboss-ra xmlns="http://www.jboss.org/schema/ra"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.jboss.org/schema/ra
+ http://www.jboss.org/schema/jboss-ra_1_0.xsd">
+ <ra-config-property>
+ <ra-config-property-name>StringRAR</ra-config-property-name>
+ <ra-config-property-type>java.lang.String</ra-config-property-type>
+ <ra-config-property-value>XMLOVERRIDE</ra-config-property-value>
+ </ra-config-property>
+ <ra-config-property>
+ <ra-config-property-name>
+ BooleanRAR</ra-config-property-name>
+
+ <ra-config-property-type>java.lang.Boolean</ra-config-property-type>
+ <ra-config-property-value>False</ra-config-property-value>
+ </ra-config-property>
+ <ra-config-property>
+ <ra-config-property-name>ByteRAR
+ </ra-config-property-name>
+ <ra-config-property-type>java.lang.Byte</ra-config-property-type>
+ <ra-config-property-value>1</ra-config-property-value>
+
+ </ra-config-property>
+ <ra-config-property>
+ <ra-config-property-name>
+ CharacterRAR
+ </ra-config-property-name>
+ <ra-config-property-type>java.lang.Character</ra-config-property-type>
+ <ra-config-property-value>A</ra-config-property-value>
+ </ra-config-property>
+ <ra-config-property>
+
+ <ra-config-property-name>ShortRAR</ra-config-property-name>
+ <ra-config-property-type>java.lang.Short</ra-config-property-type>
+ <ra-config-property-value>2</ra-config-property-value>
+ </ra-config-property>
+ <ra-config-property>
+ <ra-config-property-name>IntegerRAR</ra-config-property-name>
+ <ra-config-property-type>java.lang.Integer</ra-config-property-type>
+
+ <ra-config-property-value>3</ra-config-property-value>
+ </ra-config-property>
+ <ra-config-property>
+ <ra-config-property-name>LongRAR</ra-config-property-name>
+ <ra-config-property-type>java.lang.Long</ra-config-property-type>
+ <ra-config-property-value>4</ra-config-property-value>
+ </ra-config-property>
+
+ <ra-config-property>
+ <ra-config-property-name>FloatRAR</ra-config-property-name>
+ <ra-config-property-type>java.lang.Float</ra-config-property-type>
+ <ra-config-property-value>5e6</ra-config-property-value>
+ </ra-config-property>
+ <ra-config-property>
+ <ra-config-property-name>DoubleRAR</ra-config-property-name>
+
+ <ra-config-property-type>java.lang.Double</ra-config-property-type>
+ <ra-config-property-value>7e8</ra-config-property-value>
+ </ra-config-property>
+</jboss-ra>
\ No newline at end of file
More information about the jboss-cvs-commits
mailing list