<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0"
    xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="jca"
    nsURI="jca.xmi" nsPrefix="org.eclipse.jst.j2ee.jca">
  <eClassifiers xsi:type="ecore:EClass" name="Connector" eSuperTypes="common.ecore#//CompatibilityDescriptionGroup">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="The connector element is the root element of the deployment descriptor for the resource adapter. This element includes general information - vendor name, version, specification version supported, 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.&#xD;&#xA;"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="vendorName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="Specifies the name of resource adapter provider vendor.&#xD;&#xA;Example: Wombat Corp."/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="specVersion" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="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.&#xD;&#xA;"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="eisType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="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.&#xD;&#xA;&#xD;&#xA;This helps in identifying EIS instances that can be used with&#xD;&#xA;this resource adapter.&#xD;&#xA;"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="Specifies a string-based version of the resource adapter from the resource adapter provider.&#xD;&#xA;&#xD;&#xA;Example: 1.5"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="license" eType="#//License"
        containment="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="Specifies licensing requirements for the resource adapter module. This element 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&#xD;&#xA;connection restrictions)."/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="resourceAdapter" lowerBound="1"
        eType="#//ResourceAdapter" containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ResourceAdapter" eSuperTypes="common.ecore#//J2EEEObject">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Specifies information about the resource adapter. The information includes fully-qualified names of class/interfaces required as part of the connector architecture specified contracts, level of transaction support provided, configurable properties for ManagedConnectionFactory instances, one or more authentication mechanisms supported and additional&#xD;&#xA;required security permissions.&#xD;&#xA;&#xD;&#xA;If there is no authentication-mechanism specified as part of&#xD;&#xA;resource adapter element then the resource adapter does not&#xD;&#xA;support any standard security authentication mechanisms as part&#xD;&#xA;of security contract. The application server ignores the security&#xD;&#xA;part of the system contracts in this case.&#xD;&#xA;"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="managedConnectionFactoryClass"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@version J2EE1.4 deprecated, becomes outboundResourceAdapter.connectionDefinitions.managedConnectionFactoryClass&#xD;&#xA;Specifies the fully qualified name of the Java class that implements the javax.resource.spi.Managed-ConnectionFactory interface. This Java class is provided as part of resource adapter's implementation of connector architecture specified contracts.&#xD;&#xA;"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="connectionFactoryInterface"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@version J2EE1.4 deprecated, becomes outboundResourceAdapter.connectionDefinitions.connectionFactoryInterface&#xD;&#xA;Specifies the fully-qualified name of the ConnectionFactory interface supported by the resource adapter.&#xD;&#xA;"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="connectionFactoryImplClass"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@version J2EE1.4 deprecated, becomes outboundResourceAdapter.connectionDefinitions.connectionFactoryImplClass&#xD;&#xA;Specifies the fully-qualified name of the ConnectionFactory class that implements resource adapter specific ConnectionFactory interface."/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="connectionInterface" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@version J2EE1.4 deprecated, becomes outboundResourceAdapter.connectionDefinitions.connectionInterface"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="connectionImplClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@version J2EE1.4 deprecated, becomes outboundResourceAdapter.connectionDefinitions.connectionImplClass&#xD;&#xA;Specifies the fully-qualified name of the Connection interface supported by the resource adapter."/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="transactionSupport" eType="#//TransactionSupportKind"
        unsettable="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@version J2EE1.4 deprecated, becomes outboundResourceAdapter.transactionSupport&#xD;&#xA;The transaction-support element specifies the level of transaction&#xD;&#xA;support provided by the resource adapter.&#xD;&#xA;The value of transaction-support must be one of the following:&#xD;&#xA;  NoTransaction&#xD;&#xA;  LocalTransaction&#xD;&#xA;  XATransaction"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="reauthenticationSupport"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" unsettable="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@version J2EE1.4 deprecated, becomes outboundResourceAdapter.reauthenticationSupport&#xD;&#xA;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."/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="resourceAdapterClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="The element resourceadapter-class specifies the&#xD;&#xA;        fully qualified name of a Java class that implements&#xD;&#xA;        the javax.resource.spi.ResourceAdapter&#xD;&#xA;        interface. This Java class is provided as part of&#xD;&#xA;        resource adapter's implementation of connector&#xD;&#xA;        architecture specified contracts. The implementation&#xD;&#xA;        of this class is required to be a JavaBean."/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="securityPermissions" upperBound="-1"
        eType="#//SecurityPermission" containment="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@deprecated"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="authenticationMechanisms"
        upperBound="-1" eType="#//AuthenticationMechanism" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="configProperties" upperBound="-1"
        eType="#//ConfigProperty" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="outboundResourceAdapter"
        eType="#//OutboundResourceAdapter" containment="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@version J2EE1.4&#xD;&#xA;The connectionfactory-interface element content must be&#xD;&#xA;        unique in the outbound-resourceadapter. Multiple connection-definitions&#xD;&#xA;        can not use the same connectionfactory-type."/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="inboundResourceAdapter"
        eType="#//InboundResourceAdapter" containment="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@version J2EE1.4"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="adminObjects" upperBound="-1"
        eType="#//AdminObject" containment="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@version J2EE1.4"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="AuthenticationMechanism" eSuperTypes="common.ecore#//J2EEEObject">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="The element authentication-mechanism 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.&#xD;&#xA;&#xD;&#xA;Note that BasicPassword mechanism type should support the&#xD;&#xA;javax.resource.spi.security.PasswordCredential interface.&#xD;&#xA;The Kerbv5 mechanism type should support the&#xD;&#xA;javax.resource.spi.security.GenericCredential interface.&#xD;&#xA;"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@version J2EE1.4 deprecated, becomes descriptions"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="authenticationMechanism"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="authenticationMechanismType"
        eType="#//AuthenticationMechanismType" unsettable="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@deprecated See authenticationMechanism&#xD;&#xA;&#xD;&#xA;The authentication-mechanism-type specifies type of an authentication mechanism.&#xD;&#xA;&#xD;&#xA;The example values are:&#xD;&#xA;  - BasicPassword&#xD;&#xA;  - Kerbv5&#xD;&#xA;&#xD;&#xA;Any additional security mechanisms are outside the scope of the&#xD;&#xA;Connector architecture specification.&#xD;&#xA;"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="credentialInterface" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="Specifies the interface that the resource adapter implementation supports for the representation of the credentials. This element should be used by application server to find out the Credential interface it should use as part of the security contract.&#xD;&#xA;&#xD;&#xA;The possible values are:&#xD;&#xA;   javax.resource.spi.security.PasswordCredential&#xD;&#xA;   javax.resource.spi.security.GenericCredential&#xD;&#xA;"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="customAuthMechType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        transient="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@deprecated&#xD;&#xA;This is an internal variable used to store the AthenticationMechanismType when it is something other than BasicPassword or Kerbv5.  AuthenticationMecanismType is set to 'Custom' in those cases.  This attribute should not be used by runtime.  It is only used by the writer to write back out the custom AuthenticationMechanismType string in the case of custom AuthenticationMechanismType's.  &#xD;&#xA;This variable is internal, used only by the reader/writer classes, and can change or disappear without notice.  "/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="descriptions" upperBound="-1"
        eType="ecore:EClass common.ecore#//Description" containment="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@version J2EE1.4"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EEnum" name="AuthenticationMechanismType">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="@version J2EE1.4&#xD;&#xA;BasicPassword=0&#xD;&#xA;Kerbv5=1"/>
    </eAnnotations>
    <eLiterals name="BasicPassword"/>
    <eLiterals name="Kerbv5" value="1"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ConfigProperty" eSuperTypes="common.ecore#//J2EEEObject">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="The config property contains a declaration of a single&#xD;&#xA;configuration property for a ManagedConnectionFactory instance.&#xD;&#xA;&#xD;&#xA;Each ManagedConnectionFactory instance creates connections to a specific EIS instance based on the properties configured on the ManagedConnectionFactory instance. The configurable properties are specified only once in the deployment descriptor, even though a resource adapter can be used to configure multiple ManagedConnnection-Factory instances (that create connections to different instances of the same EIS).&#xD;&#xA;&#xD;&#xA;The declaration consists of an optional description, name, type&#xD;&#xA;and an optional value of the configuration property. If the resource&#xD;&#xA;adapter provider does not specify a value than the deployer is&#xD;&#xA;responsible for providing a valid value for a configuration property.&#xD;&#xA;&#xD;&#xA;Any bounds or well-defined values of properties should be described in the description.&#xD;&#xA;"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@version J2EE1.4 deprecated, becomes descriptions"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="Contains the name of a configuration property.&#xD;&#xA;&#xD;&#xA;The connector architecture defines a set of well-defined properties all of type java.lang.String. These are as follows:&#xD;&#xA;&#xD;&#xA;     ServerName&#xD;&#xA;     PortNumber&#xD;&#xA;     UserName&#xD;&#xA;     Password&#xD;&#xA;     ConnectionURL&#xD;&#xA;&#xD;&#xA;A resource adapter provider can extend this property set to include properties specific to the resource adapter and its underlying EIS.&#xD;&#xA;"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="Contains the fully qualified Java type of a configuration property as required by ManagedConnection-Factory instance.&#xD;&#xA;&#xD;&#xA;The following are the legal values of config-property-type:&#xD;&#xA;   java.lang.Boolean, java.lang.String, java.lang.Integer,&#xD;&#xA;   java.lang.Double, java.lang.Byte, java.lang.Short,&#xD;&#xA;   java.lang.Long, java.lang.Float, java.lang.Character"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="The element config-property-value contains the value&#xD;&#xA;        of a configuration entry. Note, it is possible for a&#xD;&#xA;        resource adapter deployer to override this&#xD;&#xA;        configuration information during deployment.&#xD;&#xA;&#xD;&#xA;        Example:&#xD;&#xA;        &lt;config-property-value>WombatServer&lt;/config-property-value>"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="descriptions" upperBound="-1"
        eType="ecore:EClass common.ecore#//Description" containment="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@version J2EE1.4"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="SecurityPermission" eSuperTypes="common.ecore#//J2EEEObject">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Specifies a security permission that is required by the resource adapter code.&#xD;&#xA;&#xD;&#xA;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.&#xD;&#xA;"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@version J2EE1.4 deprecated, becomes descriptions"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="specification" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="The element permission-spec specifies a security permission based on the Security policy file syntax. &#xD;&#xA;"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="descriptions" upperBound="-1"
        eType="ecore:EClass common.ecore#//Description" containment="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@version J2EE1.4"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="License" eSuperTypes="common.ecore#//J2EEEObject">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="Specifies licensing requirements for the resource adapter module. 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)."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="@deprecated Replaced with descriptions&#xD;&#xA;The description is used to provide text describing the license."/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="required" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="descriptions" upperBound="-1"
        eType="ecore:EClass common.ecore#//Description" containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EEnum" name="TransactionSupportKind">
    <eLiterals name="NoTransaction"/>
    <eLiterals name="LocalTransaction" value="1"/>
    <eLiterals name="XATransaction" value="2"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="InboundResourceAdapter" eSuperTypes="common.ecore#//J2EEEObject">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="@version J2EE1.4&#xD;&#xA;The inbound-resourceadapterType specifies information&#xD;&#xA;about an inbound resource adapter. This contains information&#xD;&#xA;specific to the implementation of the resource adapter&#xD;&#xA;library as specified through the messageadapter element."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="messageAdapter" eType="#//MessageAdapter"
        containment="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="The messagelistener-type element content must be&#xD;&#xA;        unique in the messageadapter. Several messagelisteners&#xD;&#xA;        can not use the same messagelistener-type."/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="OutboundResourceAdapter" eSuperTypes="common.ecore#//J2EEEObject">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="@version J2EE1.4&#xD;&#xA;The outbound-resourceadapterType specifies information about&#xD;&#xA;an outbound resource adapter. The information includes fully&#xD;&#xA;qualified names of classes/interfaces required as part of&#xD;&#xA;the connector architecture specified contracts for&#xD;&#xA;connection management, level of transaction support&#xD;&#xA;provided, one or more authentication mechanisms supported&#xD;&#xA;and additional required security permissions.&#xD;&#xA;&#xD;&#xA;If there is no authentication-mechanism specified as part of&#xD;&#xA;resource adapter element then the resource adapter does not&#xD;&#xA;support any standard security authentication mechanisms as&#xD;&#xA;part of security contract. The application server ignores&#xD;&#xA;the security part of the system contracts in this case."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="reauthenticationSupport"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" unsettable="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="The element reauthentication-support specifies&#xD;&#xA;        whether the resource adapter implementation supports&#xD;&#xA;        re-authentication of existing Managed- Connection&#xD;&#xA;        instance. Note that this information is for the&#xD;&#xA;        resource adapter implementation and not for the&#xD;&#xA;        underlying EIS instance. This element must have&#xD;&#xA;        either a &quot;true&quot; or &quot;false&quot; value."/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="transactionSupport" eType="#//TransactionSupportKind"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="connectionDefinitions"
        upperBound="-1" eType="#//ConnectionDefinition" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="authenticationMechanisms"
        upperBound="-1" eType="#//AuthenticationMechanism" containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="MessageAdapter" eSuperTypes="common.ecore#//J2EEEObject">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="@version J2EE1.4&#xD;&#xA;The messageadapterType specifies information about the&#xD;&#xA;messaging capabilities of the resource adapter. This&#xD;&#xA;contains information specific to the implementation of the&#xD;&#xA;resource adapter library as specified through the&#xD;&#xA;messagelistener element."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="messageListeners" lowerBound="1"
        upperBound="-1" eType="#//MessageListener" containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ConnectionDefinition" eSuperTypes="common.ecore#//J2EEEObject">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="@version J2EE1.4&#xD;&#xA;The connection-definitionType defines a set of connection&#xD;&#xA;interfaces and classes pertaining to a particular connection&#xD;&#xA;type. This also includes configurable properties for&#xD;&#xA;ManagedConnectionFactory instances that may be produced out&#xD;&#xA;of this set."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="managedConnectionFactoryClass"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="The element managedconnectionfactory-class specifies&#xD;&#xA;        the fully qualified name of the Java class that&#xD;&#xA;        implements the&#xD;&#xA;        javax.resource.spi.ManagedConnectionFactory interface.&#xD;&#xA;        This Java class is provided as part of resource&#xD;&#xA;        adapter's implementation of connector architecture&#xD;&#xA;        specified contracts. The implementation of this&#xD;&#xA;        class is required to be a JavaBean.&#xD;&#xA;&#xD;&#xA;        Example:&#xD;&#xA;        &lt;managedconnectionfactory-class>&#xD;&#xA;            com.wombat.ManagedConnectionFactoryImpl&#xD;&#xA;        &lt;/managedconnectionfactory-class>"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="connectionFactoryInterface"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="The element connectionfactory-interface specifies&#xD;&#xA;        the fully qualified name of the ConnectionFactory&#xD;&#xA;        interface supported by the resource adapter.&#xD;&#xA;&#xD;&#xA;        Example:&#xD;&#xA;        &lt;connectionfactory-interface>com.wombat.ConnectionFactory&#xD;&#xA;        &lt;/connectionfactory-interface>&#xD;&#xA;&#xD;&#xA;        OR&#xD;&#xA;&#xD;&#xA;        &lt;connectionfactory-interface>javax.resource.cci.ConnectionFactory&#xD;&#xA;        &lt;/connectionfactory-interface>"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="connectionFactoryImplClass"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="The element connectionfactory-impl-class specifies&#xD;&#xA;        the fully qualified name of the ConnectionFactory&#xD;&#xA;        class that implements resource adapter&#xD;&#xA;        specific ConnectionFactory interface.&#xD;&#xA;&#xD;&#xA;        Example:&#xD;&#xA;&#xD;&#xA;        &lt;connectionfactory-impl-class>com.wombat.ConnectionFactoryImpl&#xD;&#xA;        &lt;/connectionfactory-impl-class>"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="connectionInterface" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="The connection-interface element specifies the fully&#xD;&#xA;        qualified name of the Connection interface supported&#xD;&#xA;        by the resource adapter.&#xD;&#xA;&#xD;&#xA;        Example:&#xD;&#xA;&#xD;&#xA;            &lt;connection-interface>javax.resource.cci.Connection&#xD;&#xA;            &lt;/connection-interface>"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="connectionImplClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="The connection-impl-classType specifies the fully&#xD;&#xA;        qualified name of the Connection class that&#xD;&#xA;        implements resource adapter specific Connection&#xD;&#xA;        interface.  It is used by the connection-impl-class&#xD;&#xA;        elements.&#xD;&#xA;&#xD;&#xA;        Example:&#xD;&#xA;&#xD;&#xA;            &lt;connection-impl-class>com.wombat.ConnectionImpl&#xD;&#xA;            &lt;/connection-impl-class>"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="configProperties" upperBound="-1"
        eType="#//ConfigProperty" containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="AdminObject" eSuperTypes="common.ecore#//J2EEEObject">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="@version J2EE1.4&#xD;&#xA;The adminobjectType specifies information about an&#xD;&#xA;administered object.  Administered objects are specific to a&#xD;&#xA;messaging style or message provider.  This contains&#xD;&#xA;information on the Java type of the interface implemented by&#xD;&#xA;an administered object, its Java class name and its&#xD;&#xA;configuration properties."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="adminObjectInterface" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="The element adminobject-interface specifies the&#xD;&#xA;        fully qualified name of the Java type of the&#xD;&#xA;        interface implemented by an administered object.&#xD;&#xA;&#xD;&#xA;        Example:&#xD;&#xA;          &lt;adminobject-interface>javax.jms.Destination&#xD;&#xA;          &lt;/adminobject-interface>"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="adminObjectClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="The element adminobject-class specifies the fully&#xD;&#xA;        qualified Java class name of an administered object.&#xD;&#xA;&#xD;&#xA;        Example:&#xD;&#xA;            &lt;adminobject-class>com.wombat.DestinationImpl&#xD;&#xA;            &lt;/adminobject-class>"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="configProperties" upperBound="-1"
        eType="#//ConfigProperty" containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="MessageListener" eSuperTypes="common.ecore#//J2EEEObject">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="@version J2EE1.4&#xD;&#xA;The messagelistenerType specifies information about a&#xD;&#xA;specific message listener supported by the messaging&#xD;&#xA;resource adapter. It contains information on the Java type&#xD;&#xA;of the message listener interface and an activation&#xD;&#xA;specification."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="messageListenerType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="The element messagelistener-type specifies the fully&#xD;&#xA;        qualified name of the Java type of a message&#xD;&#xA;        listener interface.&#xD;&#xA;&#xD;&#xA;        Example:&#xD;&#xA;&#xD;&#xA;          &lt;messagelistener-type>javax.jms.MessageListener&#xD;&#xA;          &lt;/messagelistener-type>"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="activationSpec" lowerBound="1"
        eType="#//ActivationSpec" containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ActivationSpec" eSuperTypes="common.ecore#//J2EEEObject">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="@version J2EE1.4&#xD;&#xA;The activationspecType specifies an activation&#xD;&#xA;specification.  The information includes fully qualified&#xD;&#xA;Java class name of an activation specification and a set of&#xD;&#xA;required configuration property names."/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="activationSpecClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="The element activationspec-class specifies the fully&#xD;&#xA;        qualified Java class name of the activation&#xD;&#xA;        specification class. This class must implement the&#xD;&#xA;        javax.resource.spi.ActivationSpec interface. The&#xD;&#xA;        implementation of this class is required to be a&#xD;&#xA;        JavaBean.&#xD;&#xA;&#xD;&#xA;        Example:&#xD;&#xA;            &lt;activationspec-class>com.wombat.ActivationSpecImpl&#xD;&#xA;            &lt;/activationspec-class>"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="requiredConfigProperties"
        upperBound="-1" eType="#//RequiredConfigPropertyType" containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="RequiredConfigPropertyType" eSuperTypes="common.ecore#//J2EEEObject">
    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
      <details key="documentation" value="@version J2EE1.4&#xD;&#xA;The required-config-propertyType contains a declaration&#xD;&#xA;of a single configuration property used for specifying a&#xD;&#xA;required configuration property name. It is used&#xD;&#xA;by required-config-property elements.&#xD;&#xA;&#xD;&#xA;Example:&#xD;&#xA;&#xD;&#xA;&lt;required-config-property>Destination&lt;/required-config-property>"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="descriptions" upperBound="-1"
        eType="ecore:EClass common.ecore#//Description" containment="true"/>
  </eClassifiers>
</ecore:EPackage>
