On 10/13/2011 10:44 AM, Linda DeMichiel wrote:
[snip]
>
> Definitions for the proposed annotations are given below. If the expert
> group agrees with this approach, I'll follow up with corresponding XML.
>
>
Here are the type definitions for the XML elements corresponding to
the annotations.
These would be referenced in the "jndiEnvironmentRefsGroup" after
"data-source" as follows:
<xsd:element name="jms-connection-factory" type="javaee:jms-connection-factoryType" minOccurs="0"
maxOccurs="unbounded"/>
<xsd:element name="jms-destination" type="javaee:jms-destinationType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="mail-session" type="javaee:mail-sessionType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="connector-resource" type="javaee:connector-resourceType" minOccurs="0" maxOccurs="unbounded"/>
<!-- **************************************************** -->
<xsd:complexType name="jms-connection-factoryType">
<xsd:annotation>
<xsd:documentation>
Configuration of a JMS Connection Factory.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="description"
type="javaee:descriptionType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Description of this JMS Connection Factory.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="name"
type="javaee:jndi-nameType">
<xsd:annotation>
<xsd:documentation>
The name element specifies the JNDI name of the
JMS connection factory being defined.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="class-name"
type="javaee:fully-qualified-classType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
javax.jms.ConnectionFactory, javax.jms.QueueConnectionFactory, or javax.jms.TopicConnectionFactory
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="resource-adapter-name"
type="javaee:string"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Resource adapter name.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="user"
type="javaee:string"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
User name to use for connection authentication.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="password"
type="javaee:string"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Password to use for connection authentication.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="client-id"
type="javaee:string"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Client id to use for connection.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="property"
type="javaee:propertyType"
minOccurs="0"
maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>
JMS Connection Factory property. This may be a vendor-specific
property or a less commonly used ConnectionFactory property.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="connection-timeout"
type="javaee:xsdIntegerType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Sets the maximum time in seconds that to wait while
attempting to connect to the resource.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="transactional"
type="javaee:xsdBooleanType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Set to false if connections should not participate in
transactions.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="initial-pool-size"
type="javaee:xsdIntegerType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Number of connections that should be created when a
connection pool is initialized.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="max-pool-size"
type="javaee:xsdIntegerType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Maximum number of connections that should be concurrently
allocated for a connection pool.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="min-pool-size"
type="javaee:xsdIntegerType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Minimum number of connections that should be concurrently
allocated for a connection pool.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="max-idle-time"
type="javaee:xsdIntegerType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
The number of seconds that a physical connection should
remain unused in the pool before the connection is
closed for a connection pool.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="id"
type="xsd:ID"/>
</xsd:complexType>
<!-- **************************************************** -->
<xsd:complexType name="jms-destinationType">
<xsd:annotation>
<xsd:documentation>
Configuration of a JMS Destination.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="description"
type="javaee:descriptionType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Description of this JMS Destination.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="name"
type="javaee:jndi-nameType">
<xsd:annotation>
<xsd:documentation>
The name element specifies the JNDI name of the
JMS destination being defined.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="class-name"
type="javaee:fully-qualified-classType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
javax.jms.Queue or javax.jms.Topic
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="resource-adapter-name"
type="javaee:string"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Resource adapter name.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="resource-name"
type="javaee:string"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Name of the queue or topic.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="property"
type="javaee:propertyType"
minOccurs="0"
maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>
JMS Destination property. This may be a vendor-specific
property or a less commonly used Destination property.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="id"
type="xsd:ID"/>
</xsd:complexType>
<!-- **************************************************** -->
<xsd:complexType name="mail-sessionType">
<xsd:annotation>
<xsd:documentation>
Configuration of a Mail Session resource.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="description"
type="javaee:descriptionType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Description of this Mail Session resource.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="name"
type="javaee:jndi-nameType">
<xsd:annotation>
<xsd:documentation>
The name element specifies the JNDI name of the
Mail Session resource being defined.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="store-protocol"
type="javaee:string"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Storage protocol.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="store-protocol-class"
type="javaee:fully-qualified-classType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Service provider store protocol implementation class
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="transport-protocol"
type="javaee:string"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Transport protocol.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="transport-protocol-class"
type="javaee:fully-qualified-classType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Service provider transport protocol implementation class
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="host"
type="javaee:string"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Mail server host name.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="user"
type="javaee:string"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Mail server user name.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="from"
type="javaee:string"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Email address to indicate the message sender.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="property"
type="javaee:propertyType"
minOccurs="0"
maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>
Mail server property. This may be a vendor-specific
property.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="id"
type="xsd:ID"/>
</xsd:complexType>
<!-- **************************************************** -->
<xsd:complexType name="connector-resourceType">
<xsd:annotation>
<xsd:documentation>
Configuration of a resource, possibly a custom resource.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="description"
type="javaee:descriptionType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Description of this resource.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="name"
type="javaee:jndi-nameType">
<xsd:annotation>
<xsd:documentation>
The name element specifies the JNDI name of the
resource being defined.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="class-name"
type="javaee:fully-qualified-classType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
The resource type.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="property"
type="javaee:propertyType"
minOccurs="0"
maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>
Resource property. This may be a vendor-specific
property.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="id"
type="xsd:ID"/>
</xsd:complexType>
<!-- **************************************************** -->