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

    Copyright (c) 2019 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

-->

<component xmlns="http://maven.apache.org/ASSEMBLY-COMPONENT/2.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://maven.apache.org/ASSEMBLY-COMPONENT/2.0.0 http://maven.apache.org/xsd/assembly-component-2.0.0.xsd">
    <dependencySets>
        <dependencySet>
            <outputDirectory>.</outputDirectory>
            <includes>
                <include>org.eclipse.persistence:org.eclipse.persistence.jpa.test.framework</include>
            </includes>
            <scope>test</scope>
            <unpack>true</unpack>
            <unpackOptions>
                <includes>
                    <include>org/eclipse/persistence/testing/framework/server/TestRunner?Bean.class</include>
                </includes>
                <excludes>
                    <exclude>org/eclipse/persistence/testing/framework/server/TestRunner6Bean.class</exclude>
                </excludes>
            </unpackOptions>
        </dependencySet>
    </dependencySets>
    <fileSets>
        <fileSet>
            <directory>${project.build.testOutputDirectory}/eclipselink-jpa21-model/server</directory>
            <outputDirectory>META-INF</outputDirectory>
            <filtered>true</filtered>
            <includes>
                <include>*.xml</include>
                <include>*.jdbc</include>
            </includes>
        </fileSet>
        <fileSet>
            <directory>${project.build.testOutputDirectory}/eclipselink-jpa21-model</directory>
            <outputDirectory>META-INF</outputDirectory>
            <filtered>true</filtered>
            <includes>
                <include>*.xml</include>
                <include>*.jdbc</include>
            </includes>
        </fileSet>
        <fileSet>
            <directory>${project.build.testOutputDirectory}</directory>
            <outputDirectory>.</outputDirectory>
            <includes>
                <include>org/eclipse/samples/**</include>
                <include>org/eclipse/persistence/testing/models/jpa/advanced/*.class</include>
                <include>org/eclipse/persistence/testing/models/jpa/inheritance/**</include>
                <include>org/eclipse/persistence/testing/models/jpa/inherited/**</include>
                <include>org/eclipse/persistence/testing/models/jpa21/advanced/**</include>
                <include>org/eclipse/persistence/testing/tests/jpa21/advanced/**</include>
            </includes>
        </fileSet>
    </fileSets>
</component>