[jboss-cvs] JBossAS SVN: r82234 - in projects/metadata/trunk/src: main/resources/schema and 3 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Dec 11 17:07:15 EST 2008
Author: jeff.zhang
Date: 2008-12-11 17:07:15 -0500 (Thu, 11 Dec 2008)
New Revision: 82234
Added:
projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/Connector16MetaData.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/JCA16MetaData.java
projects/metadata/trunk/src/main/resources/schema/connector_1_6.xsd
projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/RA16EverythingUnitTestCase.java
projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/RA16Everything_testEverything.xml
Modified:
projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/ActivationspecMetaData.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/ConfigPropertyMetaData.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/ConnectorMetaData.java
projects/metadata/trunk/src/test/java/org/jboss/test/metadata/xml/XmlValidationUnitTestCase.java
Log:
[JBMETA-155] update metadata for JCA 1.6 API
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/ActivationspecMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/ActivationspecMetaData.java 2008-12-11 17:24:13 UTC (rev 82233)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/ActivationspecMetaData.java 2008-12-11 22:07:15 UTC (rev 82234)
@@ -39,6 +39,7 @@
private String asClass;
private List<RequiredConfigPropertyMetaData> requiredConfigProps;
+ private List<RequiredConfigPropertyMetaData> configProps;
@XmlElement(name="activationspec-class")
public void setAsClass(String asClass) {
@@ -58,4 +59,15 @@
return requiredConfigProps;
}
+ public List<RequiredConfigPropertyMetaData> getConfigProps()
+ {
+ return configProps;
+ }
+
+ @XmlElement(name="config-property")
+ public void setConfigProps(List<RequiredConfigPropertyMetaData> configProps)
+ {
+ this.configProps = configProps;
+ }
+
}
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/ConfigPropertyMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/ConfigPropertyMetaData.java 2008-12-11 17:24:13 UTC (rev 82233)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/ConfigPropertyMetaData.java 2008-12-11 22:07:15 UTC (rev 82234)
@@ -44,6 +44,8 @@
/** The value */
private String value = "";
+
+ private boolean ignore;
/**
* Get the name
@@ -108,6 +110,18 @@
this.value = value;
}
+
+ public boolean isIgnore()
+ {
+ return ignore;
+ }
+
+ @XmlElement(name="config-property-ignore")
+ public void setIgnore(boolean ignore)
+ {
+ this.ignore = ignore;
+ }
+
public String toString()
{
StringBuffer buffer = new StringBuffer();
@@ -118,7 +132,7 @@
buffer.append(" type=").append(type);
if (value != null)
buffer.append(" value=").append(value);
- //buffer.append(" descriptions=").append(getDescriptions());
+ buffer.append(" ignore=").append(isIgnore());
buffer.append(']');
return buffer.toString();
}
Added: projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/Connector16MetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/Connector16MetaData.java (rev 0)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/Connector16MetaData.java 2008-12-11 22:07:15 UTC (rev 82234)
@@ -0,0 +1,64 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, 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.spec;
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+
+/**
+ * Connector meta data
+ *
+ * @author Jeff Zhang
+ * @version $Revision: $
+ */
+
+public class Connector16MetaData extends ConnectorMetaData
+{
+ private static final long serialVersionUID = 7047130842894140262L;
+
+ private boolean metadataComplete;
+ private String requiredWorkContext;
+
+
+ public boolean isMetadataComplete()
+ {
+ return metadataComplete;
+ }
+
+ @XmlAttribute(name="metadata-complete")
+ public void setMetadataComplete(boolean metadataComplete)
+ {
+ this.metadataComplete = metadataComplete;
+ }
+
+ public String getRequiredWorkContext()
+ {
+ return requiredWorkContext;
+ }
+
+ @XmlElement(name="required-work-context")
+ public void setRequiredWorkContext(String requiredWorkContext)
+ {
+ this.requiredWorkContext = requiredWorkContext;
+ }
+
+}
Property changes on: projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/Connector16MetaData.java
___________________________________________________________________
Name: svn:keywords
+ Id Reversion Date
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/ConnectorMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/ConnectorMetaData.java 2008-12-11 17:24:13 UTC (rev 82233)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/ConnectorMetaData.java 2008-12-11 22:07:15 UTC (rev 82234)
@@ -1,6 +1,6 @@
/*
* JBoss, Home of Professional Open Source.
- * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * Copyright 2008, 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.
*
@@ -33,7 +33,7 @@
*
* @author <a href="mailto:adrian at jboss.com">Adrian Brock</a>
* @author Jeff Zhang
- * @version $Revision: 76091 $
+ * @version $Revision: $
*/
public class ConnectorMetaData extends IdMetaDataImplWithDescriptionGroup
{
@@ -229,8 +229,6 @@
buffer.append(" eisType=").append(eisType);
buffer.append(" resourceAdapterVersion=").append(raVersion);
buffer.append(" license=").append(lmd);
- //buffer.append(" properties=").append(getProperties());
- //buffer.append(" descriptions=").append(descriptions.values());
buffer.append(']');
return buffer.toString();
}
Added: projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/JCA16MetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/JCA16MetaData.java (rev 0)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/JCA16MetaData.java 2008-12-11 22:07:15 UTC (rev 82234)
@@ -0,0 +1,47 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, 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.spec;
+
+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.xb.annotations.JBossXmlSchema;
+
+/**
+ * Connector meta data
+ *
+ * @author Jeff Zhang
+ * @version $Revision: $
+ */
+ at XmlRootElement(name="connector", namespace=JavaEEMetaDataConstants.J2EE_NS)
+ at JBossXmlSchema(
+ xmlns={@XmlNs(namespaceURI = JavaEEMetaDataConstants.J2EE_NS, prefix = "jee")},
+ ignoreUnresolvedFieldOrClass=false,
+ namespace=JavaEEMetaDataConstants.J2EE_NS,
+ elementFormDefault=XmlNsForm.QUALIFIED,
+ normalizeSpace=true)
+public class JCA16MetaData extends Connector16MetaData
+{
+ private static final long serialVersionUID = 1;
+}
Property changes on: projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/spec/JCA16MetaData.java
___________________________________________________________________
Name: svn:keywords
+ Id Reversion Date
Added: projects/metadata/trunk/src/main/resources/schema/connector_1_6.xsd
===================================================================
--- projects/metadata/trunk/src/main/resources/schema/connector_1_6.xsd (rev 0)
+++ projects/metadata/trunk/src/main/resources/schema/connector_1_6.xsd 2008-12-11 22:07:15 UTC (rev 82234)
@@ -0,0 +1,1136 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://java.sun.com/xml/ns/javaee"
+ xmlns:javaee="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="1.6">
+ <xsd:annotation>
+ <xsd:documentation>
+ @(#)connector_1_6.xsds 1.28 07/17/08
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright 2003-2007 Sun Microsystems, Inc. All rights reserved.
+
+ The contents of this file are subject to the terms of either the
+ GNU General Public License Version 2 only ("GPL") or the Common
+ Development and Distribution License("CDDL") (collectively, the
+ "License"). You may not use this file except in compliance with
+ the License. You can obtain a copy of the License at
+ https://glassfish.dev.java.net/public/CDDL+GPL.html or
+ glassfish/bootstrap/legal/LICENSE.txt. See the License for the
+ specific language governing permissions and limitations under the
+ License.
+
+ When distributing the software, include this License Header
+ Notice in each file and include the License file at
+ glassfish/bootstrap/legal/LICENSE.txt. Sun designates this
+ particular file as subject to the "Classpath" exception as
+ provided by Sun in the GPL Version 2 section of the License file
+ that accompanied this code. If applicable, add the following
+ below the License Header, with the fields enclosed by brackets []
+ replaced by your own identifying information:
+ "Portions Copyrighted [year] [name of copyright owner]"
+
+ Contributor(s):
+
+ If you wish your version of this file to be governed by only the
+ CDDL or only the GPL Version 2, indicate your decision by adding
+ "[Contributor] elects to include this software in this
+ distribution under the [CDDL or GPL Version 2] license." If you
+ don't indicate a single choice of license, a recipient has the
+ option to distribute your version of this file under either the
+ CDDL, the GPL Version 2 or to extend the choice of license to its
+ licensees as provided above. However, if you add GPL Version 2
+ code and therefore, elected the GPL Version 2 license, then the
+ option applies only if the new code is made subject to such
+ option by the copyright holder.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ This is the XML Schema for the Connector 1.6 deployment
+ descriptor. The deployment descriptor must be named
+ "META-INF/ra.xml" in the connector's rar file. All Connector
+ deployment descriptors must indicate the connector resource
+ adapter schema by using the Java EE namespace:
+
+ http://java.sun.com/xml/ns/javaee
+
+ and by indicating the version of the schema by
+ using the version element as shown below:
+
+ <connector xmlns="http://java.sun.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/connector_1_6.xsd"
+ version="1.6">
+ ...
+ </connector>
+
+ The instance documents may indicate the published version of
+ the schema using the xsi:schemaLocation attribute for Java EE
+ namespace with the following location:
+
+ http://java.sun.com/xml/ns/javaee/connector_1_6.xsd
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The following conventions apply to all Java EE
+ deployment descriptor elements unless indicated otherwise.
+
+ - In elements that specify a pathname to a file within the
+ same JAR file, relative filenames (i.e., those not
+ starting with "/") are considered relative to the root of
+ the JAR file's namespace. Absolute filenames (i.e., those
+ starting with "/") also specify names in the root of the
+ JAR file's namespace. In general, relative names are
+ preferred. The exception is .war files where absolute
+ names are preferred for consistency with the Servlet API.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="javaee_5.xsd"/>
+
+
+<!-- **************************************************** -->
+
+
+ <xsd:element name="connector" type="javaee:connectorType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The connector element is the root element of the deployment
+ descriptor for the resource adapter. This element includes
+ general information - vendor name, resource adapter version,
+ icon - about the resource adapter module. It also includes
+ information specific to the implementation of the resource
+ adapter library as specified through the element
+ resourceadapter.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="activationspecType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The activationspecType specifies an activation
+ specification. The information includes fully qualified
+ Java class name of an activation specification and a set of
+ required configuration property names.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="activationspec-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ The element activationspec-class specifies the fully
+ qualified Java class name of the activation
+ specification class. This class must implement the
+ javax.resource.spi.ActivationSpec interface. The
+ implementation of this class is required to be a
+ JavaBean.
+
+ Example:
+ <activationspec-class>com.wombat.ActivationSpecImpl
+ </activationspec-class>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="required-config-property"
+ type="javaee:required-config-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The required-config-property element is deprecated since
+ Connectors 1.6 specification. The resource adapter
+ implementation is recommended to use the @NotNull
+ Bean Validation annotation or its XML validation
+ descriptor equivalent to indicate that a configuration
+ property is required to be specified by the deployer.
+ See the Connectors specification for more information.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+
+ <xsd:element name="config-property"
+ type="javaee:config-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="adminobjectType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The adminobjectType specifies information about an
+ administered object. Administered objects are specific to a
+ messaging style or message provider. This contains
+ information on the Java type of the interface implemented by
+ an administered object, its Java class name and its
+ configuration properties.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="adminobject-interface"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ The element adminobject-interface specifies the
+ fully qualified name of the Java type of the
+ interface implemented by an administered object.
+
+ Example:
+ <adminobject-interface>javax.jms.Destination
+ </adminobject-interface>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="adminobject-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ The element adminobject-class specifies the fully
+ qualified Java class name of an administered object.
+
+ Example:
+ <adminobject-class>com.wombat.DestinationImpl
+ </adminobject-class>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="config-property"
+ type="javaee:config-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="authentication-mechanismType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The authentication-mechanismType specifies an authentication
+ mechanism supported by the resource adapter. Note that this
+ support is for the resource adapter and not for the
+ underlying EIS instance. The optional description specifies
+ any resource adapter specific requirement for the support of
+ security contract and authentication mechanism.
+
+ Note that BasicPassword mechanism type should support the
+ javax.resource.spi.security.PasswordCredential interface.
+ The Kerbv5 mechanism type should support the
+ org.ietf.jgss.GSSCredential interface or the deprecated
+ javax.resource.spi.security.GenericCredential interface.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="authentication-mechanism-type"
+ type="javaee:xsdStringType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ The element authentication-mechanism-type specifies
+ type of an authentication mechanism.
+
+ The example values are:
+
+ <authentication-mechanism-type>BasicPassword
+ </authentication-mechanism-type>
+
+ <authentication-mechanism-type>Kerbv5
+ </authentication-mechanism-type>
+
+ Any additional security mechanisms are outside the
+ scope of the Connector architecture specification.
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="credential-interface"
+ type="javaee:credential-interfaceType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="config-property-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ The config-property-nameType contains the name of a
+ configuration property.
+
+ The connector architecture defines a set of well-defined
+ properties all of type java.lang.String. These are as
+ follows.
+
+ ServerName
+ PortNumber
+ UserName
+ Password
+ ConnectionURL
+
+ A resource adapter provider can extend this property set to
+ include properties specific to the resource adapter and its
+ underlying EIS.
+
+ Possible values include
+ ServerName
+ PortNumber
+ UserName
+ Password
+ ConnectionURL
+
+ Example: <config-property-name>ServerName</config-property-name>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:xsdStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="config-property-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ The config-property-typeType contains the fully
+ qualified Java type of a configuration property.
+
+ The following are the legal values:
+ java.lang.Boolean, java.lang.String, java.lang.Integer,
+ java.lang.Double, java.lang.Byte, java.lang.Short,
+ java.lang.Long, java.lang.Float, java.lang.Character
+
+ Used in: config-property
+
+ Example:
+ <config-property-type>java.lang.String</config-property-type>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="java.lang.Boolean"/>
+ <xsd:enumeration value="java.lang.String"/>
+ <xsd:enumeration value="java.lang.Integer"/>
+ <xsd:enumeration value="java.lang.Double"/>
+ <xsd:enumeration value="java.lang.Byte"/>
+ <xsd:enumeration value="java.lang.Short"/>
+ <xsd:enumeration value="java.lang.Long"/>
+ <xsd:enumeration value="java.lang.Float"/>
+ <xsd:enumeration value="java.lang.Character"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="config-propertyType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The config-propertyType contains a declaration of a single
+ configuration property that may be used for providing
+ configuration information.
+
+ The declaration consists of an optional description, name,
+ type and an optional value of the configuration property. If
+ the resource adapter provider does not specify a value than
+ the deployer is responsible for providing a valid value for
+ a configuration property.
+
+ Any bounds or well-defined values of properties should be
+ described in the description element.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="config-property-name"
+ type="javaee:config-property-nameType"/>
+ <xsd:element name="config-property-type"
+ type="javaee:config-property-typeType"/>
+ <xsd:element name="config-property-value"
+ type="javaee:xsdStringType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ The element config-property-value contains the value
+ of a configuration entry. Note, it is possible for a
+ resource adapter deployer to override this
+ configuration information during deployment.
+
+ Example:
+ <config-property-value>WombatServer</config-property-value>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="config-property-ignore" type="javaee:true-falseType"
+ minOccurs="0" maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ The element config-property-ignore is used to specify
+ whether the configuration tools must ignore considering the
+ configuration property during auto-discovery of
+ Configuration properties. See the Connector specification for
+ more details. If unspecified, the container must not ignore
+ the configuration property during auto-discovery.
+ This element must be one of the following, "true" or "false".
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="connection-definitionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The connection-definitionType defines a set of connection
+ interfaces and classes pertaining to a particular connection
+ type. This also includes configurable properties for
+ ManagedConnectionFactory instances that may be produced out
+ of this set.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="managedconnectionfactory-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ The element managedconnectionfactory-class specifies
+ the fully qualified name of the Java class that
+ implements the
+ javax.resource.spi.ManagedConnectionFactory interface.
+ This Java class is provided as part of resource
+ adapter's implementation of connector architecture
+ specified contracts. The implementation of this
+ class is required to be a JavaBean.
+
+ Example:
+ <managedconnectionfactory-class>
+ com.wombat.ManagedConnectionFactoryImpl
+ </managedconnectionfactory-class>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="config-property"
+ type="javaee:config-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="connectionfactory-interface"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ The element connectionfactory-interface specifies
+ the fully qualified name of the ConnectionFactory
+ interface supported by the resource adapter.
+
+ Example:
+ <connectionfactory-interface>com.wombat.ConnectionFactory
+ </connectionfactory-interface>
+
+ OR
+
+ <connectionfactory-interface>javax.resource.cci.ConnectionFactory
+ </connectionfactory-interface>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="connectionfactory-impl-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ The element connectionfactory-impl-class specifies
+ the fully qualified name of the ConnectionFactory
+ class that implements resource adapter
+ specific ConnectionFactory interface.
+
+ Example:
+
+ <connectionfactory-impl-class>com.wombat.ConnectionFactoryImpl
+ </connectionfactory-impl-class>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="connection-interface"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ The connection-interface element specifies the fully
+ qualified name of the Connection interface supported
+ by the resource adapter.
+
+ Example:
+
+ <connection-interface>javax.resource.cci.Connection
+ </connection-interface>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="connection-impl-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ The connection-impl-classType specifies the fully
+ qualified name of the Connection class that
+ implements resource adapter specific Connection
+ interface. It is used by the connection-impl-class
+ elements.
+
+ Example:
+
+ <connection-impl-class>com.wombat.ConnectionImpl
+ </connection-impl-class>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="connectorType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The connectorType defines a resource adapter.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="vendor-name"
+ type="javaee:xsdStringType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element vendor-name specifies the name of
+ resource adapter provider vendor.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="eis-type"
+ type="javaee:xsdStringType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element eis-type contains information about the
+ type of the EIS. For example, the type of an EIS can
+ be product name of EIS independent of any version
+ info.
+
+ This helps in identifying EIS instances that can be
+ used with this resource adapter.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="resourceadapter-version"
+ type="javaee:xsdStringType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element resourceadapter-version specifies a string-based version
+ of the resource adapter from the resource adapter
+ provider.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="license"
+ type="javaee:licenseType"
+ minOccurs="0"/>
+ <xsd:element name="resourceadapter"
+ type="javaee:resourceadapterType"/>
+ <xsd:element name="required-work-context"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ The element required-work-contexts specifies a comma-separated list of
+ fully qualified class names that implements WorkContext interface
+ that a resource adapters requires the application server to support.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="version"
+ type="javaee:dewey-versionType"
+ fixed="1.6"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The version specifies the version of the
+ connector architecture specification that is
+ supported by this resource adapter. This information
+ enables deployer to configure the resource adapter to
+ support deployment and runtime requirements of the
+ corresponding connector architecture specification.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="metadata-complete" type="xsd:boolean">
+ <xsd:annotation>
+ <xsd:documentation>
+ The metadata-complete attribute defines whether the deployment
+ descriptor for the resource adapter module is complete, or whether
+ the class files available to the module and packaged with the resource
+ adapter should be examined for annotations that specify deployment
+ information.
+
+ If metadata-complete is set to "true", the deployment tool of the
+ application server must ignore any annotations that specify deployment
+ information, which might be present in the class files of the
+ application.If metadata-complete is not specified or is set to "false",
+ the deployment tool must examine the class files of the application for
+ annotations, as specified by this specification. If the
+ deployment descriptor is not included or is included but not marked
+ metadata-complete, the deployment tool will process annotations.
+
+ Application servers must assume that metadata-complete is true for
+ resource adapter modules with deployment descriptor version
+ lower than 1.6.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="credential-interfaceType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The credential-interfaceType specifies the
+ interface that the resource adapter implementation
+ supports for the representation of the
+ credentials. This element(s) that use this type,
+ i.e. credential-interface, should be used by
+ application server to find out the Credential
+ interface it should use as part of the security
+ contract.
+
+ The possible values are:
+
+ javax.resource.spi.security.PasswordCredential
+ org.ietf.jgss.GSSCredential
+ javax.resource.spi.security.GenericCredential
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:fully-qualified-classType">
+ <xsd:enumeration
+ value="javax.resource.spi.security.PasswordCredential"/>
+ <xsd:enumeration
+ value="org.ietf.jgss.GSSCredential"/>
+ <xsd:enumeration
+ value="javax.resource.spi.security.GenericCredential"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="inbound-resourceadapterType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The inbound-resourceadapterType specifies information
+ about an inbound resource adapter. This contains information
+ specific to the implementation of the resource adapter
+ library as specified through the messageadapter element.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="messageadapter"
+ type="javaee:messageadapterType"
+ minOccurs="0">
+ <xsd:unique name="messagelistener-type-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The messagelistener-type element content must be
+ unique in the messageadapter. Several messagelisteners
+ can not use the same messagelistener-type.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:messagelistener"/>
+ <xsd:field xpath="javaee:messagelistener-type"/>
+ </xsd:unique>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="licenseType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The licenseType specifies licensing requirements for the
+ resource adapter module. This type specifies whether a
+ license is required to deploy and use this resource adapter,
+ and an optional description of the licensing terms
+ (examples: duration of license, number of connection
+ restrictions). It is used by the license element.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="license-required"
+ type="javaee:true-falseType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element license-required specifies whether a
+ license is required to deploy and use the
+ resource adapter. This element must be one of
+ the following, "true" or "false".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="messageadapterType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The messageadapterType specifies information about the
+ messaging capabilities of the resource adapter. This
+ contains information specific to the implementation of the
+ resource adapter library as specified through the
+ messagelistener element.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="messagelistener"
+ type="javaee:messagelistenerType"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="messagelistenerType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The messagelistenerType specifies information about a
+ specific message listener supported by the messaging
+ resource adapter. It contains information on the Java type
+ of the message listener interface and an activation
+ specification.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="messagelistener-type"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ The element messagelistener-type specifies the fully
+ qualified name of the Java type of a message
+ listener interface.
+
+ Example:
+
+ <messagelistener-type>javax.jms.MessageListener
+ </messagelistener-type>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="activationspec"
+ type="javaee:activationspecType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="outbound-resourceadapterType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The outbound-resourceadapterType specifies information about
+ an outbound resource adapter. The information includes fully
+ qualified names of classes/interfaces required as part of
+ the connector architecture specified contracts for
+ connection management, level of transaction support
+ provided, one or more authentication mechanisms supported
+ and additional required security permissions.
+
+ If there is no authentication-mechanism specified as part of
+ resource adapter element then the resource adapter does not
+ support any standard security authentication mechanisms as
+ part of security contract. The application server ignores
+ the security part of the system contracts in this case.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="connection-definition"
+ type="javaee:connection-definitionType"
+ maxOccurs="unbounded"/>
+ <xsd:element name="transaction-support"
+ type="javaee:transaction-supportType"/>
+ <xsd:element name="authentication-mechanism"
+ type="javaee:authentication-mechanismType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="reauthentication-support"
+ type="javaee:true-falseType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element reauthentication-support specifies
+ whether the resource adapter implementation supports
+ re-authentication of existing Managed- Connection
+ instance. Note that this information is for the
+ resource adapter implementation and not for the
+ underlying EIS instance. This element must have
+ either a "true" or "false" value.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="required-config-propertyType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+
+ The required-config-propertyType contains a declaration
+ of a single configuration property used for specifying a
+ required configuration property name. It is used
+ by required-config-property elements.
+
+ Usage of this type is deprecated from Connectors 1.6 specification.
+ Refer to required-config-property element for more information.
+
+ Example:
+
+ <required-config-property>Destination</required-config-property>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="config-property-name"
+ type="javaee:config-property-nameType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="resourceadapterType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The resourceadapterType specifies information about the
+ resource adapter. The information includes fully qualified
+ resource adapter Java class name, configuration properties,
+ information specific to the implementation of the resource
+ adapter library as specified through the
+ outbound-resourceadapter and inbound-resourceadapter
+ elements, and an optional set of administered objects.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="resourceadapter-class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element resourceadapter-class specifies the
+ fully qualified name of a Java class that implements
+ the javax.resource.spi.ResourceAdapter
+ interface. This Java class is provided as part of
+ resource adapter's implementation of connector
+ architecture specified contracts. The implementation
+ of this class is required to be a JavaBean.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+ <xsd:element name="config-property"
+ type="javaee:config-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="outbound-resourceadapter"
+ type="javaee:outbound-resourceadapterType"
+ minOccurs="0">
+ <xsd:unique name="connectionfactory-interface-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The connectionfactory-interface element content
+ must be unique in the outbound-resourceadapter.
+ Multiple connection-definitions can not use the
+ same connectionfactory-type.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:connection-definition"/>
+ <xsd:field xpath="javaee:connectionfactory-interface"/>
+ </xsd:unique>
+ </xsd:element>
+ <xsd:element name="inbound-resourceadapter"
+ type="javaee:inbound-resourceadapterType"
+ minOccurs="0"/>
+ <xsd:element name="adminobject"
+ type="javaee:adminobjectType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:unique name="adminobject-type-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+ The adminobject-interface and adminobject-class element content must be
+ unique in the resourceadapterType. Several admin objects
+ can not use the same adminobject-interface and adminobject-class.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:adminobject"/>
+ <xsd:field xpath="javaee:adminobject-interface"/>
+ <xsd:field xpath="javaee:adminobject-class"/>
+ </xsd:unique>
+ </xsd:element>
+ <xsd:element name="security-permission"
+ type="javaee:security-permissionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="security-permissionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The security-permissionType specifies a security
+ permission that is required by the resource adapter code.
+
+ The security permission listed in the deployment descriptor
+ are ones that are different from those required by the
+ default permission set as specified in the connector
+ specification. The optional description can mention specific
+ reason that resource adapter requires a given security
+ permission.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="security-permission-spec"
+ type="javaee:xsdStringType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element security-permission-spec specifies a security
+ permission based on the Security policy file
+ syntax. Refer to the following URL for Sun's
+ implementation of the security permission
+ specification:
+
+ http://java.sun.com/products/jdk/1.4/docs/guide/security/PolicyFiles.html#FileSyntax
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="transaction-supportType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The transaction-supportType specifies the level of
+ transaction support provided by the resource adapter. It is
+ used by transaction-support elements.
+
+ The value must be one of the following:
+
+ NoTransaction
+ LocalTransaction
+ XATransaction
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="NoTransaction"/>
+ <xsd:enumeration value="LocalTransaction"/>
+ <xsd:enumeration value="XATransaction"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+</xsd:schema>
+
Added: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/RA16EverythingUnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/RA16EverythingUnitTestCase.java (rev 0)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/RA16EverythingUnitTestCase.java 2008-12-11 22:07:15 UTC (rev 82234)
@@ -0,0 +1,136 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2008, JBoss 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.rar;
+
+import java.util.List;
+
+import org.jboss.metadata.rar.spec.AdminObjectMetaData;
+import org.jboss.metadata.rar.spec.ConnectionDefinitionMetaData;
+import org.jboss.metadata.rar.spec.Connector16MetaData;
+import org.jboss.metadata.rar.spec.InboundRaMetaData;
+import org.jboss.metadata.rar.spec.JCA16MetaData;
+import org.jboss.metadata.rar.spec.MessageListenerMetaData;
+import org.jboss.metadata.rar.spec.OutboundRaMetaData;
+import org.jboss.metadata.rar.spec.ResourceAdapterMetaData;
+import org.jboss.metadata.rar.spec.TransactionSupportMetaData;
+import org.jboss.test.metadata.javaee.AbstractJavaEEEverythingTest;
+import org.jboss.xb.binding.sunday.unmarshalling.DefaultSchemaResolver;
+import org.jboss.xb.binding.sunday.unmarshalling.SchemaBindingResolver;
+/**
+ * Test ResourceAdapter ra.xml metadata.
+ *
+ * @author Jeff Zhang
+ * @version $Revision:$
+ */
+public class RA16EverythingUnitTestCase extends AbstractJavaEEEverythingTest {
+
+ public static SchemaBindingResolver initResolver()
+ {
+ DefaultSchemaResolver resolver = new DefaultSchemaResolver();
+ resolver.addClassBindingForLocation("connector_1_6.xsd", JCA16MetaData.class);
+ return resolver;
+ }
+
+ public RA16EverythingUnitTestCase(String name) {
+ super(name);
+ }
+
+ protected void setUp() throws Exception
+ {
+ super.setUp();
+ enableTrace("org.jboss.xb");
+ }
+
+ public void testEverything() throws Exception
+ {
+ Connector16MetaData connector = unmarshal();
+ assertNotNull(connector);
+ assertEverything(connector);
+ }
+
+ protected Connector16MetaData unmarshal() throws Exception
+ {
+ return unmarshal(Connector16MetaData.class);
+ }
+
+ protected void assertEverything(Connector16MetaData connector) throws Exception
+ {
+ assertDescriptionGroup("connector", connector.getDescriptionGroup());
+ assertGeneralInfo(connector);
+ assertRA(connector.getRa());
+ }
+
+ private void assertGeneralInfo(Connector16MetaData connector)
+ {
+ assertNotNull(connector.getVendorName());
+ assertNotNull(connector.getEISType());
+ assertEquals(connector.getRAVersion(), "6.0");
+ assertNotNull(connector.getLicense());
+ assertTrue(connector.getLicense().getRequired());
+ assertTrue(connector.isMetadataComplete());
+ }
+
+ private void assertRA(ResourceAdapterMetaData ra) {
+ assertNotNull(ra.getRaClass());
+ assertNotNull(ra.getConfigProperty());
+ assertEquals(ra.getConfigProperty().size(), 1);
+ assertEquals(ra.getConfigProperty().get(0).getValue(), "DEBUG");
+ assertOutboundAdapter(ra.getOutboundRa());
+ assertInoundAdapter(ra.getInboundRa());
+ assertAdminObject(ra.getAdminObjects());
+ assertNotNull(ra.getSecurityPermissions());
+ assertEquals(ra.getSecurityPermissions().get(0).getSecurityPermissionSpec(), "sa");
+ }
+
+ private void assertOutboundAdapter(OutboundRaMetaData outboundRa) {
+ assertNotNull(outboundRa.getConDefs());
+ ConnectionDefinitionMetaData conDef = outboundRa.getConDefs().get(0);
+ assertTrue(conDef.getManagedConnectionFactoryClass().endsWith("JmsManagedConnectionFactory"));
+ assertEquals(conDef.getConfigProps().size(), 7);
+ assertTrue(conDef.getConnectionFactoryInterfaceClass().endsWith("JmsConnectionFactory"));
+ assertTrue(conDef.getConnectionFactoryImplementationClass().endsWith("JmsConnectionFactoryImpl"));
+ assertTrue(conDef.getConnectionInterfaceClass().endsWith("Session"));
+ assertTrue(conDef.getConnectionImplementationClass().endsWith("JmsSession"));
+ assertEquals(outboundRa.getTransSupport(), TransactionSupportMetaData.XATransaction);
+ assertNotNull(outboundRa.getAuthMechanisms());
+ assertFalse(outboundRa.isReAuthSupport());
+
+ }
+
+ private void assertInoundAdapter(InboundRaMetaData inboundRa) {
+ assertNotNull(inboundRa.getMessageAdapter());
+ assertNotNull(inboundRa.getMessageAdapter().getMessageListeners());
+ MessageListenerMetaData msgListener = inboundRa.getMessageAdapter().getMessageListeners().get(0);
+ assertNotNull(msgListener);
+ assertTrue(msgListener.getType().endsWith("MessageListener"));
+ assertTrue(msgListener.getActivationSpecType().getAsClass().endsWith("JmsActivationSpec"));
+ assertNotNull(msgListener.getActivationSpecType().getRequiredConfigProps());
+ assertFalse(msgListener.getActivationSpecType().getRequiredConfigProps().isEmpty());
+ }
+
+ private void assertAdminObject(List<AdminObjectMetaData> adminObjects) {
+ assertEquals(adminObjects.size(), 1);
+ assertTrue(adminObjects.get(0).getAdminObjectInterfaceClass().endsWith("TestInterface"));
+
+ }
+
+}
Property changes on: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/RA16EverythingUnitTestCase.java
___________________________________________________________________
Name: svn:keywords
+ Id Reversion Date
Modified: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/xml/XmlValidationUnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/xml/XmlValidationUnitTestCase.java 2008-12-11 17:24:13 UTC (rev 82233)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/xml/XmlValidationUnitTestCase.java 2008-12-11 22:07:15 UTC (rev 82234)
@@ -103,8 +103,8 @@
}
});
- // TODO there are currently 30 expected
- assertEquals("Zero invalid files among total of " + total, 30, invalid);
+ // TODO there are currently 31 expected
+ assertEquals("Zero invalid files among total of " + total, 31, invalid);
}
private static boolean validate(File xmlFile) throws SAXException
Added: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/RA16Everything_testEverything.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/RA16Everything_testEverything.xml (rev 0)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/RA16Everything_testEverything.xml 2008-12-11 22:07:15 UTC (rev 82234)
@@ -0,0 +1,158 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- $Id$ -->
+
+<connector xmlns="http://java.sun.com/xml/ns/j2ee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
+ http://java.sun.com/xml/ns/j2ee/connector_1_6.xsd"
+ version="1.6" metadata-complete="true">
+
+
+ <!-- description group -->
+ <description>en-connector-desc</description>
+ <description xml:lang="fr">fr-connector-desc</description>
+ <description xml:lang="de">de-connector-desc</description>
+ <display-name>en-connector-disp</display-name>
+ <display-name xml:lang="fr">fr-connector-disp</display-name>
+ <display-name xml:lang="de">de-connector-disp</display-name>
+ <icon id="en-connector-icon-id">
+ <small-icon>en-connector-small-icon</small-icon>
+ <large-icon>en-connector-large-icon</large-icon>
+ </icon>
+ <icon xml:lang="fr" id="fr-connector-icon-id">
+ <small-icon>fr-connector-small-icon</small-icon>
+ <large-icon>fr-connector-large-icon</large-icon>
+ </icon>
+ <icon xml:lang="de" id="de-connector-icon-id">
+ <small-icon>de-connector-small-icon</small-icon>
+ <large-icon>de-connector-large-icon</large-icon>
+ </icon>
+
+ <vendor-name>Red Hat Middleware LLC</vendor-name>
+ <eis-type>JMS 1.1 Server</eis-type>
+ <resourceadapter-version>6.0</resourceadapter-version>
+
+ <license>
+ <description>
+ 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.
+ </description>
+ <license-required>true</license-required>
+ </license>
+
+ <resourceadapter>
+ <resourceadapter-class>org.jboss.resource.adapter.jms.JmsResourceAdapter</resourceadapter-class>
+
+ <config-property>
+ <description>Log level</description>
+ <config-property-name>logLevel</config-property-name>
+ <config-property-type>java.lang.String</config-property-type>
+ <config-property-value>DEBUG</config-property-value>
+ </config-property>
+
+ <outbound-resourceadapter>
+ <connection-definition>
+ <managedconnectionfactory-class>org.jboss.resource.adapter.jms.JmsManagedConnectionFactory</managedconnectionfactory-class>
+ <config-property>
+ <description>The jndi name of the provider of connection factories</description>
+ <config-property-name>JmsProviderAdapterJNDI</config-property-name>
+ <config-property-type>java.lang.String</config-property-type>
+ <config-property-value>java:DefaultJMSProvider</config-property-value>
+ </config-property>
+ <config-property>
+ <description>The default session type</description>
+ <config-property-name>SessionDefaultType</config-property-name>
+ <config-property-type>java.lang.String</config-property-type>
+ <config-property-value>javax.jms.Topic</config-property-value>
+ </config-property>
+ <config-property>
+ <description>The user name used to login to the jms server</description>
+ <config-property-name>UserName</config-property-name>
+ <config-property-type>java.lang.String</config-property-type>
+ <config-property-value></config-property-value>
+ </config-property>
+ <config-property>
+ <description>The password used to login to the jms server</description>
+ <config-property-name>Password</config-property-name>
+ <config-property-type>java.lang.String</config-property-type>
+ <config-property-value></config-property-value>
+ </config-property>
+ <config-property>
+ <description>The client id for this connection factory</description>
+ <config-property-name>ClientID</config-property-name>
+ <config-property-type>java.lang.String</config-property-type>
+ <config-property-value></config-property-value>
+ </config-property>
+ <config-property>
+ <config-property-name>Strict</config-property-name>
+ <config-property-type>java.lang.Boolean</config-property-type>
+ <config-property-value>true</config-property-value>
+ </config-property>
+ <config-property>
+ <description>Maximum wait for a lock</description>
+ <config-property-name>UseTryLock</config-property-name>
+ <config-property-type>java.lang.Integer</config-property-type>
+ </config-property>
+ <connectionfactory-interface>org.jboss.resource.adapter.jms.JmsConnectionFactory</connectionfactory-interface>
+ <connectionfactory-impl-class>org.jboss.resource.adapter.jms.JmsConnectionFactoryImpl</connectionfactory-impl-class>
+ <connection-interface>javax.jms.Session</connection-interface>
+ <connection-impl-class>org.jboss.resource.adapter.jms.JmsSession</connection-impl-class>
+ </connection-definition>
+ <transaction-support>XATransaction</transaction-support>
+ <authentication-mechanism>
+ <authentication-mechanism-type>BasicPassword</authentication-mechanism-type>
+ <credential-interface>javax.resource.spi.security.PasswordCredential</credential-interface>
+ </authentication-mechanism>
+ <reauthentication-support>false</reauthentication-support>
+ </outbound-resourceadapter>
+
+ <inbound-resourceadapter>
+ <messageadapter>
+ <messagelistener>
+ <messagelistener-type>javax.jms.MessageListener</messagelistener-type>
+ <activationspec>
+ <activationspec-class>org.jboss.resource.adapter.jms.inflow.JmsActivationSpec</activationspec-class>
+ <required-config-property>
+ <config-property-name>destination</config-property-name>
+ </required-config-property>
+ </activationspec>
+ </messagelistener>
+ </messageadapter>
+ </inbound-resourceadapter>
+
+ <adminobject>
+ <adminobject-interface>org.jboss.test.jca.adminobject.TestInterface</adminobject-interface>
+ <adminobject-class>org.jboss.test.jca.adminobject.TestImplementation</adminobject-class>
+ <config-property>
+ <config-property-name>StringProperty</config-property-name>
+ <config-property-type>java.lang.String</config-property-type>
+ </config-property>
+ <config-property>
+ <config-property-name>IntegerProperty</config-property-name>
+ <config-property-type>java.lang.Integer</config-property-type>
+ </config-property>
+ </adminobject>
+ <security-permission>
+ <description></description>
+ <security-permission-spec>sa</security-permission-spec>
+ </security-permission>
+ </resourceadapter>
+</connector>
\ No newline at end of file
Property changes on: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/RA16Everything_testEverything.xml
___________________________________________________________________
Name: svn:keywords
+ Id Reversion Date
More information about the jboss-cvs-commits
mailing list