<!--

    Copyright (c) 2018, 2020 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,
    or the Eclipse Distribution License v. 1.0 which is available at
    http://www.eclipse.org/org/documents/edl-v10.php.

    SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause

-->

<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
    <persistence-unit name="my-app" transaction-type="RESOURCE_LOCAL">
        <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
        <class>org.eclipse.persistence.testing.perf.beanvalidation.Employee</class>
        <class>org.eclipse.persistence.testing.perf.beanvalidation.EmployeeAnnotated</class>
        <properties>
            <property name="jakarta.persistence.jdbc.driver"      value="@driver@"/>
            <property name="jakarta.persistence.jdbc.url"         value="@url@"/>
            <property name="jakarta.persistence.jdbc.user"        value="@user@"/>
            <property name="jakarta.persistence.jdbc.password"    value="@pwd@"/>
        </properties>
    </persistence-unit>
    <persistence-unit name="jpa-performance">
        <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
        <class>org.eclipse.persistence.testing.perf.jpa.model.basic.Address</class>
        <class>org.eclipse.persistence.testing.perf.jpa.model.basic.Degree</class>
        <class>org.eclipse.persistence.testing.perf.jpa.model.basic.EmailAddress</class>
        <class>org.eclipse.persistence.testing.perf.jpa.model.basic.Employee</class>
        <class>org.eclipse.persistence.testing.perf.jpa.model.basic.EmploymentPeriod</class>
        <class>org.eclipse.persistence.testing.perf.jpa.model.basic.Gender</class>
        <class>org.eclipse.persistence.testing.perf.jpa.model.basic.JobTitle</class>
        <class>org.eclipse.persistence.testing.perf.jpa.model.basic.LargeProject</class>
        <class>org.eclipse.persistence.testing.perf.jpa.model.basic.PhoneNumber</class>
        <class>org.eclipse.persistence.testing.perf.jpa.model.basic.Project</class>
        <class>org.eclipse.persistence.testing.perf.jpa.model.basic.SmallProject</class>
        <properties>
            <property name="jakarta.persistence.jdbc.driver"      value="@driver@"/>
            <property name="jakarta.persistence.jdbc.url"         value="@url@"/>
            <property name="jakarta.persistence.jdbc.user"        value="@user@"/>
            <property name="jakarta.persistence.jdbc.password"    value="@pwd@"/>
        </properties>
    </persistence-unit>
</persistence>
