<?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 version="2.0" xmlns="http://java.sun.com/xml/ns/persistence/orm" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence/orm orm_2_0.xsd">
    <description>XML extended composite advanced member_2 Test Model Instance Document</description>
    <package>org.eclipse.persistence.testing.models.jpa.xml.composite.advanced.member_2</package>
    <entity name="XMLEmployee" class="Employee" access="PROPERTY">
        <table name="XML_MBR2_EMPLOYEE"/>
        <secondary-table name="XML_MBR2_SALARY">
            <primary-key-join-column name="E_ID" referenced-column-name="EMP_ID"/>
        </secondary-table>
        <table-generator name="XML_MBR2_EMPLOYEE_TABLE_GENERATOR" table="XML_MBR2_SEQ" pk-column-name="SEQ_NAME" value-column-name="SEQ_COUNT" pk-column-value="EMPLOYEE_SEQ"/>
        <named-query name="findAllXMLEmployeesByFirstName">
            <query>SELECT OBJECT(employee) FROM XMLEmployee employee WHERE employee.firstName = :firstname</query>
        </named-query>
        <exclude-default-listeners/>
        <exclude-superclass-listeners/>
        <entity-listeners>
            <entity-listener class="EmployeeListener">
                <pre-persist method-name="prePersist"/>
                <post-persist method-name="postPersist"/>
                <pre-remove method-name="preRemove"/>
                <post-remove method-name="postRemove"/>
                <pre-update method-name="preUpdate"/>
                <post-update method-name="postUpdate"/>
                <post-load method-name="postLoad"/>
            </entity-listener>
        </entity-listeners>
        <attributes>
            <id name="id">
                <column name="EMP_ID"/>
                <generated-value strategy="TABLE" generator="XML_MBR2_EMPLOYEE_TABLE_GENERATOR"/>
            </id>
            <basic name="firstName" access="FIELD">
                <column name="F_NAME"/>
            </basic>
            <basic name="lastName" access="FIELD">
                <column name="L_NAME"/>
            </basic>
            <basic name="salary">
                <column table="XML_MBR2_SALARY"/>
            </basic>
            <basic name="payScale">
                <!--  Overridden in eclipselink-orm.xml -->
                <column name="INVALID_PAY_SCALE"/>
            </basic>
            <basic name="version">
                <column name="VERSION"/>
            </basic>
            <many-to-one name="address" target-entity="org.eclipse.persistence.testing.models.jpa.xml.composite.advanced.member_1.Address" fetch="LAZY">
                <join-column name="ADDR_ID"/>
                <cascade>
                    <cascade-persist/>
                </cascade>
            </many-to-one>
            <many-to-one name="manager" target-entity="Employee" fetch="LAZY">
                <join-column name="MANAGER_EMP_ID" referenced-column-name="EMP_ID"/>
                <cascade>
                    <cascade-persist/>
                </cascade>
            </many-to-one>
            <one-to-many name="phoneNumbers" target-entity="org.eclipse.persistence.testing.models.jpa.xml.composite.advanced.member_3.PhoneNumber" mapped-by="owner">
                <cascade>
                    <cascade-all/>
                </cascade>
            </one-to-many>
            <one-to-many name="managedEmployees" target-entity="Employee" mapped-by="manager">
                <cascade>
                    <cascade-all/>
                </cascade>
            </one-to-many>
            <one-to-many name="dealers" target-entity="org.eclipse.persistence.testing.models.jpa.xml.composite.advanced.member_3.Dealer">
                <join-column name="FK_EMP_ID"/>
                <cascade>
                    <cascade-persist/>
                    <cascade-merge/>
                </cascade>
            </one-to-many>
            <many-to-many name="projects" target-entity="org.eclipse.persistence.testing.models.jpa.xml.composite.advanced.member_3.Project">
                <order-by>name</order-by>
                <join-table name="XML_MBR3_PROJ_EMP">
                    <join-column name="EMP_ID" referenced-column-name="EMP_ID"/>
                    <inverse-join-column name="PROJ_ID" referenced-column-name="PROJ_ID"/>
                </join-table>
                <cascade>
                    <cascade-persist/>
                </cascade>
            </many-to-many>
            <!-- This mapping is overridden in the eclipselink-orm.xml file -->
            <element-collection name="creditLines" fetch="EAGER">
                <map-key-column name="BANK_INVALID"/>
                <column name="ACCOUNT_INVALID"/>
                <collection-table name="EMP_CREDITLINES_INVALID">
                    <join-column name="EMP_ID_INVALID"/>
                </collection-table>
            </element-collection>
            <embedded name="period">
                <attribute-override name="startDate">
                    <column name="START_DATE" nullable="false"/>
                </attribute-override>
                <attribute-override name="endDate">
                    <column name="END_DATE" nullable="true"/>
                </attribute-override>
            </embedded>
        </attributes>
    </entity>
    <embeddable class="EmploymentPeriod" access="PROPERTY">
        <attributes>
            <basic name="startDate">
                <column name="S_DATE"/>
                <temporal>DATE</temporal>
            </basic>
            <basic name="endDate">
                <column name="E_DATE"/>
                <temporal>DATE</temporal>
            </basic>
        </attributes>
    </embeddable>
</entity-mappings>
