<?xml version="1.0" encoding="UTF-8"?>
<!--

    Copyright (c) 2017, 2018 Oracle and/or its affiliates. All rights reserved.

    This program and the accompanying materials are made available under the
    terms of the Eclipse Public License v. 2.0, which is available at
    http://www.eclipse.org/legal/epl-2.0.

    This Source Code may also be made available under the following Secondary
    Licenses when the conditions for such availability set forth in the
    Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
    version 2 with the GNU Classpath Exception, which is available at
    https://www.gnu.org/software/classpath/license.html.

    SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0

-->

<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_5.xsd"
           version="1.5">

    <!-- There can be any number of "description" elements including 0 -->
    <!-- This field can be optionally used by the driver vendor to provide a
         description for the resource adapter.
    -->
    <description>Resource adapter wrapping Datasource implementation of driver</description>

    <!-- There can be any number of "display-name" elements including 0 -->
    <!-- The field can be optionally used by the driver vendor to provide a name that
         is intended to be displayed by tools.
    -->
    <display-name>DataSource Resource Adapter</display-name>

    <!-- There can be any number of "icon" elements including 0 -->
    <!-- The following is an example.
        <icon>
            This "small-icon" element can occur atmost once. This should specify the
            absolute or the relative path name of a file containing a small (16 x 16)
            icon - JPEG or GIF image. The following is an example.
            <small-icon>smallicon.jpg</small-icon>

            This "large-icon" element can occur atmost once. This should specify the
            absolute or the relative path name of a file containing a small (32 x 32)
            icon - JPEG or GIF image. The following is an example.
            <large-icon>largeicon.jpg</large-icon>
        </icon>
    -->
    <icon>
        <small-icon></small-icon>
        <large-icon></large-icon>
    </icon>

    <!-- The "vendor-name" element should occur exactly once. -->
    <!-- This should specify the name of the driver vendor. The following is an example.
        <vendor-name>XYZ INC.</vendor-name>
    -->
    <vendor-name>Sun Microsystems</vendor-name>

    <!-- The "eis-type" element should occur exactly once. -->
    <!-- This should specify the database, for example the product name of
         the database independent of any version information. The following
         is an example.
        <eis-type>XYZ</eis-type>
    -->
    <eis-type>Database</eis-type>

    <!-- The "resourceadapter-version" element should occur exactly once. -->
    <!-- This specifies a string based version of the resource adapter from
         the driver vendor. The default is being set as 1.0. The driver
         vendor can change it as required.
    -->
    <resourceadapter-version>1.0</resourceadapter-version>

    <!-- This "license" element can occur atmost once -->
    <!-- This specifies licensing requirements for the resource adapter module.
         The following is an example.
        <license>
            There can be any number of "description" elements including 0.
            <description>
                This field can be optionally used by the driver vendor to
                provide a description for the licensing requirements of the
                resource adapter like duration of license, numberof connection
                restrictions.
            </description>

            This specifies whether a license is required to deploy and use the resource adapter.
            Default is false.
            <license-required>false</license-required>
        </license>
    -->
    <license>
        <license-required>false</license-required>
    </license>

    <resourceadapter>

        <!--
            The "config-property" elements can have zero or more "description"
            elements. The "description" elements are not being included
            in the "config-property" elements below. The driver vendor can
            add them as required.
        -->

        <resourceadapter-class>com.sun.jdbcra.spi.ResourceAdapter</resourceadapter-class>

        <outbound-resourceadapter>

            <connection-definition>

                <managedconnectionfactory-class>com.sun.jdbcra.spi.DSManagedConnectionFactory</managedconnectionfactory-class>

                <!-- There can be any number of these elements including 0 -->
                <config-property>
                    <config-property-name>ServerName</config-property-name>
                    <config-property-type>java.lang.String</config-property-type>
                    <config-property-value>localhost</config-property-value>
                </config-property>
                <config-property>
                    <config-property-name>PortNumber</config-property-name>
                    <config-property-type>java.lang.String</config-property-type>
                    <config-property-value>1527</config-property-value>
                </config-property>
                <config-property>
                    <config-property-name>databaseName</config-property-name>
                    <config-property-type>java.lang.String</config-property-type>
                    <config-property-value>testdb</config-property-value>
                </config-property>

                <config-property>
                    <config-property-name>User</config-property-name>
                    <config-property-type>java.lang.String</config-property-type>
                    <config-property-value>dbuser</config-property-value>
                </config-property>
                <config-property>
                    <config-property-name>UserName</config-property-name>
                    <config-property-type>java.lang.String</config-property-type>
                    <config-property-value>dbuser</config-property-value>
                </config-property>

                <config-property>
                    <config-property-name>Password</config-property-name>
                    <config-property-type>java.lang.String</config-property-type>
                    <config-property-value>dbpassword</config-property-value>
                </config-property>
                <config-property>
                    <config-property-name>URL</config-property-name>
                    <config-property-type>java.lang.String</config-property-type>
                    <config-property-value>jdbc:derby://localhost:1527/testdb;create=true</config-property-value>
                </config-property>
                <!--<config-property>
                    <config-property-name>DataSourceName</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>Description</config-property-name>
                    <config-property-type>java.lang.String</config-property-type>
                    <config-property-value>Oracle thin driver Datasource</config-property-value>
                 </config-property>
<!--
                <config-property>
                    <config-property-name>NetworkProtocol</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>RoleName</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>LoginTimeOut</config-property-name>
                    <config-property-type>java.lang.String</config-property-type>
                    <config-property-value>0</config-property-value>
                </config-property>
                <config-property>
                    <config-property-name>DriverProperties</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>Delimiter</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>ClassName</config-property-name>
                    <config-property-type>java.lang.String</config-property-type>
                    <config-property-value>org.apache.derby.jdbc.ClientDataSource40</config-property-value>
                </config-property>
                <config-property>
                      <config-property-name>ConnectionAttributes</config-property-name>
                      <config-property-type>java.lang.String</config-property-type>
                      <config-property-value>;create=true</config-property-value>
              </config-property>

<!--
                      <config-property>
                        <config-property-name>ConnectionValidationRequired</config-property-name>
                        <config-property-type>java.lang.String</config-property-type>
                        <config-property-value>false</config-property-value>
                </config-property>
                <config-property>
                        <config-property-name>ValidationMethod</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>ValidationTableName</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>TransactionIsolation</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>GuaranteeIsolationLevel</config-property-name>
                        <config-property-type>java.lang.String</config-property-type>
                        <config-property-value></config-property-value>
                </config-property>
-->

                <connectionfactory-interface>javax.sql.DataSource</connectionfactory-interface>

                <connectionfactory-impl-class>com.sun.jdbcra.spi.DataSource</connectionfactory-impl-class>

                <connection-interface>java.sql.Connection</connection-interface>

                <connection-impl-class>com.sun.jdbcra.spi.ConnectionHolder</connection-impl-class>

            </connection-definition>

            <transaction-support>LocalTransaction</transaction-support>

            <authentication-mechanism>
                <!-- There can be any number of "description" elements including 0 -->
                <!-- Not including the "description" element -->

                <authentication-mechanism-type>BasicPassword</authentication-mechanism-type>

                <credential-interface>jakarta.resource.spi.security.PasswordCredential</credential-interface>
            </authentication-mechanism>

            <reauthentication-support>false</reauthentication-support>

        </outbound-resourceadapter>
        <adminobject>
               <adminobject-interface>com.sun.jdbcra.spi.JdbcSetupAdmin</adminobject-interface>
               <adminobject-class>com.sun.jdbcra.spi.JdbcSetupAdminImpl</adminobject-class>
               <config-property>
                   <config-property-name>TableName</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>SchemaName</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>JndiName</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>NoOfRows</config-property-name>
                   <config-property-type>java.lang.Integer</config-property-type>
                   <config-property-value>0</config-property-value>
               </config-property>
        </adminobject>

    </resourceadapter>

</connector>
