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

    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

-->

<entity-mappings xmlns="http://xmlns.jcp.org/xml/ns/persistence/orm"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence/orm orm_2_1.xsd"
    version="2.1">

    <description>Mapping Document containing persistence unit metadata.</description>

    <package>org.eclipse.persistence.testing.models.jpa21.advanced.xml.ddl</package>

    <mapped-superclass class="Athlete">
        <attributes>
            <basic name="age"/>
            <basic name="firstName">
                <column name="F_NAME"/>
            </basic>
            <basic name="lastName">
                <column name="L_NAME"/>
            </basic>
            <element-collection name="accomplishments">
                <map-key-column name="ACCOMPLISHMENT"/>
                <column name="THE_DATE"/>
                <temporal>DATE</temporal>
                <collection-table  name="JPA21_XML_DDL_RUNNER_ACS">
                    <join-column name="ATHLETE_ID"/>
                    <foreign-key name="FK_JPA21_XMLAccomplishments" foreign-key-definition="FOREIGN KEY (ATHLETE_ID) REFERENCES JPA21_XML_DDL_RUNNER (ID)"/>
                </collection-table>
            </element-collection>
            <element-collection name="endorsements">
                <map-key-join-column name="ENDORSER_ID"/>
                <map-key-foreign-key name="FK_JPA21_XMLEndorsements_Key" foreign-key-definition="FOREIGN KEY (ENDORSER_ID) REFERENCES JPA21_XML_DDL_ENDORSER (ID)"/>
                <column name="ENDORSEMENT"/>
                <collection-table name="JPA21_XML_DDL_ENDORSEMENTS">
                    <join-column name="ATHLETE_ID"/>
                    <foreign-key name="FK_JPA21_XMLEndorsements" foreign-key-definition="FOREIGN KEY (ATHLETE_ID) REFERENCES JPA21_XML_DDL_RUNNER (ID)"/>
                </collection-table>
            </element-collection>
        </attributes>
    </mapped-superclass>

    <mapped-superclass class="Utensil">
        <attributes>
            <id name="id">
                <generated-value strategy="TABLE" generator="XML_UTENSIL_ID_GENERATOR"/>
                <table-generator name="XML_UTENSIL_ID_GENERATOR" table="JPA21_XML_PK_SEQ" pk-column-name="XML_SEQ_NAME" value-column-name="XML_SEQ_COUNT"  pk-column-value="XML_UTENSIL_SEQ">
                    <index name="INDEX_JPA21_XML_TABLE_GENERATOR" column-list="XML_SEQ_COUNT,XML_SEQ_NAME"/>
                </table-generator>
            </id>
            <basic name="serialTag">
                <column name="SERIAL_TAG"/>
            </basic>
        </attributes>
    </mapped-superclass>

    <entity name="XMLRunner" class="Runner">
        <table name="JPA21_XML_DDL_RUNNER"/>
        <inheritance strategy="JOINED"/>
        <convert attribute-name="accomplishments.key" converter="org.eclipse.persistence.testing.models.jpa21.advanced.converters.AccomplishmentConverter"/>
        <convert attribute-name="accomplishments" converter="org.eclipse.persistence.testing.models.jpa21.advanced.converters.DateConverter"/>
        <convert attribute-name="age" converter="org.eclipse.persistence.testing.models.jpa21.advanced.converters.AgeConverter"/>
        <attributes>
            <id name="id">
                <generated-value/>
            </id>
            <basic name="gender">
                <convert converter="org.eclipse.persistence.testing.models.jpa21.advanced.converters.GenderConverter"/>
            </basic>
            <one-to-many name="shoes" mapped-by="runner">
                <map-key-join-column name="TAG_ID"/>
                <map-key-foreign-key name="FK_JPA21_XMLRunner_ShoeTag" foreign-key-definition="FOREIGN KEY (TAG_ID) REFERENCES JPA21_XML_DDL_SHOE_TAG (ID)"/>
            </one-to-many>
            <many-to-many name="races">
                <join-table name="JPA21_XML_DDL_RUNNERS_RACES">
                    <join-column name="RUNNER_ID" referenced-column-name="ID"/>
                    <foreign-key name="FK_JPA21_XMLRunners_Races" foreign-key-definition="FOREIGN KEY (RUNNER_ID) REFERENCES JPA21_XML_DDL_RUNNER (ID)"/>
                    <inverse-join-column name="RACE_ID" referenced-column-name="ID"/>
                    <inverse-foreign-key name="FK_JPA21_XMLRunners_Races_Inverse" foreign-key-definition="FOREIGN KEY (RACE_ID) REFERENCES JPA21_XML_DDL_RACE (ID)"/>
                </join-table>
            </many-to-many>
            <!-- Currently a convert can not be specified with a column as a -->
            <!-- result of JPA 2.1 xsd bug. Until it is fixed, this is mapped in annotations -->
            <!-- element-collection name="personalBests">
                <map-key-convert converter="org.eclipse.persistence.testing.models.jpa21.advanced.converters.DistanceConverter"/>
                <map-key-column name="DISTANCE"/>
                <column name="TIME"/>
                <convert converter="org.eclipse.persistence.testing.models.jpa21.advanced.converters.TimeConverter"/>
                <collection-table name="JPA21_XML_DDL_RUNNER_PBS">
                    <join-column name="RUNNER_ID"/>
                    <foreign-key name="FK_JPA21_XML_Runner_PBS" foreign-key-definition="FOREIGN KEY (RUNNER_ID) REFERENCES JPA21_XML_DDL_RUNNER (ID)"/>
                </collection-table>
            </element-collection -->
            <embedded name="info">
                <convert attribute-name="level" converter="org.eclipse.persistence.testing.models.jpa21.advanced.converters.LevelConverter"/>
                <convert attribute-name="health" converter="org.eclipse.persistence.testing.models.jpa21.advanced.converters.HealthConverter"/>
                <convert attribute-name="status.runningStatus" converter="org.eclipse.persistence.testing.models.jpa21.advanced.converters.RunningStatusConverter"/>
            </embedded>
        </attributes>
    </entity>

    <entity name="XMLSprinter" class="Sprinter">
        <table name="JPA21_XML_DDL_SPRINTER"/>
        <primary-key-join-column name="SPRINTER_ID" referenced-column-name="ID"/>
        <primary-key-foreign-key name="FK_JPA21_XML_Sprinter" foreign-key-definition="FOREIGN KEY (SPRINTER_ID) REFERENCES JPA21_XML_DDL_RUNNER (ID)"/>
    </entity>

    <entity name="XMLShoe" class="Shoe">
        <table name="JPA21_XML_DDL_SHOE"/>
        <attributes>
            <id name="id">
                <generated-value/>
            </id>
            <many-to-one name="runner">
                <join-column name="RUNNER_ID"/>
                <foreign-key name="FK_JPA21_XMLShoes_Runner" foreign-key-definition="FOREIGN KEY (RUNNER_ID) REFERENCES JPA21_XML_DDL_RUNNER (ID)"/>
            </many-to-one>
        </attributes>
    </entity>

    <entity name="XMLShoeTag" class="ShoeTag">
        <table name="JPA21_XML_DDL_SHOE_TAG"/>
        <attributes>
            <id name="id">
                <generated-value/>
            </id>
        </attributes>
    </entity>

    <entity name="XMLRace" class="Race">
        <table name="JPA21_XML_DDL_RACE"/>
        <attributes>
            <id name="id">
                <generated-value/>
            </id>
            <basic name="name"/>
            <one-to-many name="organizers" mapped-by="race">
                <map-key-convert attribute-name="uniqueIdentifier" disable-conversion="true"/>
                <map-key-convert attribute-name="description" converter="org.eclipse.persistence.testing.models.jpa21.advanced.converters.ResponsibilityConverter"/>
            </one-to-many>
            <many-to-many name="runners" mapped-by="races"/>
        </attributes>
    </entity>

    <entity name="XMLEndorser" class="Endorser">
        <table name="JPA21_XML_DDL_ENDORSER"/>
        <attributes>
            <id name="id">
                <generated-value/>
            </id>
            <basic name="name"/>
        </attributes>
    </entity>

    <entity name="XMLOrganizer" class="Organizer">
        <table name="JPA21_XML_DDL_ORGANIZER"/>
        <attributes>
            <id name="id">
                <generated-value/>
            </id>
            <basic name="name"/>
            <many-to-one name="race">
                <join-column name="RACE_ID"/>
                <foreign-key name="FK_JPA21_XMLOrganizer_Race" foreign-key-definition="FOREIGN KEY (RACE_ID) REFERENCES JPA21_XML_DDL_RACE (ID)"/>
            </many-to-one>
        </attributes>
    </entity>

    <entity name="XMLFork" class="Fork">
        <table name="JPA21_XML_FORK">
            <!-- default the name to JPA21_XML_FORK_INDEX_STYLE_COLOR -->
            <index column-list="STYLE, COLOR"/>
        </table>
        <secondary-table name="JPA21_XML_FORK_COSTS">
            <index name="INDEX_JPA21_XML_FORK_COSTS" column-list="COST, RENTAL_COST"/>
        </secondary-table>
        <attributes>
            <basic name="price">
                <column name="COST" table="JPA21_XML_FORK_COSTS"/>
            </basic>
            <basic name="rental">
                <column name="RENTAL_COST" table="JPA21_XML_FORK_COSTS"/>
            </basic>
            <many-to-many name="users">
                <join-table name="JPA21_XML_FORK_FORK_USERS">
                    <join-column name="FORK_ID" referenced-column-name="ID"/>
                    <inverse-join-column name="FORK_USER_ID" referenced-column-name="ID"/>
                    <index name="JPA21_XML_FORK_USERS_INDEX" column-list="FORK_USER_ID, FORK_ID"/>
                </join-table>
            </many-to-many>
            <element-collection name="uses">
                <column name="DESCRIP"/>
                <collection-table name="JPA21_XML_FORK_USES">
                    <index name="JPA21_XML_FORK_USES_INDEX" column-list="DESCRIP"/>
                </collection-table>
            </element-collection>
        </attributes>
    </entity>

    <entity name="XMLForkUser" class="ForkUser">
        <table name="JPA21_XML_FORK_USER"/>
        <attributes>
            <id name="id">
                <generated-value/>
            </id>
            <many-to-many name="forks" mapped-by="users"/>
        </attributes>
    </entity>

    <embeddable class="RunnerInfo">
        <attributes>
            <basic name="level">
                <column name="R_LEVEL"/>
            </basic>
            <basic name="health">
                <column name="R_HEALTH"/>
            </basic>
        </attributes>
    </embeddable>

    <embeddable class="RunnerStatus">
        <attributes>
            <basic name="runningStatus">
                <column name="R_STATUS"/>
            </basic>
        </attributes>
    </embeddable>

    <embeddable class="Responsibility">
        <attributes>
            <basic name="uniqueIdentifier"/>
            <basic name="description"/>
        </attributes>
    </embeddable>

    <converter class="org.eclipse.persistence.testing.models.jpa21.advanced.converters.AccomplishmentConverter"/>
    <converter class="org.eclipse.persistence.testing.models.jpa21.advanced.converters.AgeConverter"/>
    <converter class="org.eclipse.persistence.testing.models.jpa21.advanced.converters.DateConverter"/>
    <converter class="org.eclipse.persistence.testing.models.jpa21.advanced.converters.DistanceConverter"/>
    <converter class="org.eclipse.persistence.testing.models.jpa21.advanced.converters.GenderConverter"/>
    <converter class="org.eclipse.persistence.testing.models.jpa21.advanced.converters.HealthConverter"/>
    <converter class="org.eclipse.persistence.testing.models.jpa21.advanced.converters.LevelConverter"/>
    <converter class="org.eclipse.persistence.testing.models.jpa21.advanced.converters.LongToStringConverter" auto-apply="true"/>
    <converter class="org.eclipse.persistence.testing.models.jpa21.advanced.converters.ResponsibilityConverter"/>
    <converter class="org.eclipse.persistence.testing.models.jpa21.advanced.converters.RunningStatusConverter"/>
    <converter class="org.eclipse.persistence.testing.models.jpa21.advanced.converters.TimeConverter"/>

</entity-mappings>
