<?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

-->

<!--   -->

<!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN' 'http://java.sun.com/dtd/ejb-jar_2_0.dtd'>

<ejb-jar>
    <display-name>SimpleBMPJAR</display-name>
    <enterprise-beans>

        <!-- Simple EJB -->
        <entity>
            <display-name>SimpleBMPEJB</display-name>
            <ejb-name>SimpleBMPEJB</ejb-name>
            <home>com.sun.s1asdev.jdbc.maxconnectionusage.ejb.SimpleBMPHome</home>
            <remote>com.sun.s1asdev.jdbc.maxconnectionusage.ejb.SimpleBMP</remote>
            <ejb-class>com.sun.s1asdev.jdbc.maxconnectionusage.ejb.SimpleBMPBean</ejb-class>
            <persistence-type>Bean</persistence-type>
            <prim-key-class>java.lang.String</prim-key-class>
            <reentrant>False</reentrant>
            <security-identity>
                <description></description>
                <use-caller-identity></use-caller-identity>
            </security-identity>
            <resource-ref>
                <res-ref-name>DataSource</res-ref-name>
                <res-type>javax.sql.DataSource</res-type>
                <res-auth>Container</res-auth>
                <res-sharing-scope>Shareable</res-sharing-scope>
            </resource-ref>
            <resource-ref>
                <res-ref-name>XADataSource</res-ref-name>
                <res-type>javax.sql.XADataSource</res-type>
                <res-auth>Container</res-auth>
                <res-sharing-scope>Shareable</res-sharing-scope>
            </resource-ref>

        </entity>
    </enterprise-beans>

    <assembly-descriptor>
        <container-transaction>
            <method>
                <ejb-name>SimpleBMPEJB</ejb-name>
                <method-name>test1</method-name>
            </method>
            <trans-attribute>NotSupported</trans-attribute>
        </container-transaction>

        <container-transaction>
            <method>
                <ejb-name>SimpleBMPEJB</ejb-name>
                <method-name>test2</method-name>
            </method>
            <trans-attribute>Required</trans-attribute>
        </container-transaction>

        <container-transaction>
            <method>
                <ejb-name>SimpleBMPEJB</ejb-name>
                <method-name>test3</method-name>
            </method>
            <trans-attribute>Required</trans-attribute>
        </container-transaction>
    </assembly-descriptor>

</ejb-jar>

