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

    Copyright (c) 2017, 2018 Oracle and/or its affiliates. All rights reserved.
    Copyright (c) 2022 Contributors to the Eclipse Foundation

    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="https://jakarta.ee/xml/ns/jakartaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="
       https://jakarta.ee/xml/ns/jakartaee/jakartaee_9.xsd
       https://jakarta.ee/xml/ns/jakartaee/connector_2_0.xsd"
    version="2.0"
>
    <display-name>Simple Resource Adapter</display-name>
    <vendor-name>Java Software</vendor-name>
    <eis-type>Generic Type</eis-type>
    <resourceadapter-version>1.0Alpha</resourceadapter-version>
    <resourceadapter>
        <resourceadapter-class>
            connector.SimpleResourceAdapterImpl
        </resourceadapter-class>
        <config-property>
            <config-property-name>
                TestName
            </config-property-name>
            <config-property-type>
                java.lang.String
            </config-property-type>
            <config-property-value>
                ConfigPropertyForRA
            </config-property-value>
            <config-property-ignore>
                true
            </config-property-ignore>
            <config-property-supports-dynamic-updates>
                true
            </config-property-supports-dynamic-updates>
            <config-property-confidential>
               true
            </config-property-confidential>
        </config-property>
        <inbound-resourceadapter>
            <messageadapter>
                <messagelistener>
                    <messagelistener-type>
                        connector.MyMessageListener
                    </messagelistener-type>
                    <activationspec>
                        <activationspec-class>
                            connector.SimpleActivationSpec
                        </activationspec-class>
                    </activationspec>
                </messagelistener>
            </messageadapter>
        </inbound-resourceadapter>
        <adminobject>
          <adminobject-interface>connector.MyAdminObject</adminobject-interface>
          <adminobject-class>connector.MyAdminObject</adminobject-class>
          <config-property>
            <config-property-name>ResetControl</config-property-name>
            <config-property-type>java.lang.String</config-property-type>
            <config-property-value>NORESET</config-property-value>
          </config-property>
          <config-property>
            <config-property-name>ExpectedResults</config-property-name>
            <config-property-type>java.lang.Integer</config-property-type>
            <config-property-value>88</config-property-value>
          </config-property>
          <config-property>
            <config-property-name>AliasTest</config-property-name>
            <config-property-type>java.lang.String</config-property-type>
            <config-property-value>${ALIAS=ALIAS_TEST_PROPERTY}</config-property-value>
            <config-property-confidential>true</config-property-confidential>
          </config-property>
        </adminobject>
    </resourceadapter>
</connector>
