<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE project [
<!--

    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

-->

<!ENTITY commonSetup SYSTEM "../../config/properties.xml">
<!ENTITY commonBuild SYSTEM "../../config/common.xml">
<!ENTITY commonRun SYSTEM "../../config/run.xml">
<!ENTITY reporting SYSTEM "report.xml">
]>

<project name="jms" default="usage" basedir=".">
    &commonSetup;
    &commonBuild;
    &commonRun;
    &reporting;

    <target name="all">
        <antcall target="setup"/>
        <!--<antcall target="ActivationProperties"/>-->
        <antcall target="Annotation"/>
        <antcall target="DefaultConnectionFactory"/>
        <antcall target="Injection"/>
        <antcall target="JMSXDeliveryCount"/>
        <antcall target="MDBDestination"/>
        <antcall target="unsetup"/>
        <antcall target="report"/>
    </target>

    <target name="setup">
        <echo message="Starting app server instance"/>
        <ant target="startDomain"/>
        <ant target="clean-result"/>
    </target>

    <target name="unsetup">
        <echo message="Stopping app server instance"/>
        <ant target="stopDomain"/>
        <record name="jms.output" action="stop" />
    </target>

    <target name="clean-result">

        <delete>
           <fileset dir="${env.APS_HOME}" includes="test_results*"/>
        </delete>
        <delete>
           <fileset dir="." includes="*.output"/>
        </delete>
        <record name="jms.output" action="start" />

    </target>

    <target name="Annotation">
        <record name="Annotation.output" action="start" />
            <ant dir="annotation" target="all"/>
        <record name="Annotation.output" action="stop" />
    </target>

    <target name="Injection">
        <record name="Injection.output" action="start" />
            <ant dir="injection" target="all"/>
        <record name="Injection.output" action="stop" />
    </target>

    <target name="DefaultConnectionFactory">
        <record name="DefaultCF.output" action="start" />
            <ant dir="defaultCF" target="all"/>
        <record name="DefaultCF.output" action="stop" />
    </target>

    <target name="JMSXDeliveryCount">
        <record name="JMSXDeliveryCount.output" action="start" />
            <ant dir="JMSXDeliveryCount" target="all"/>
        <record name="JMSXDeliveryCount.output" action="stop" />
    </target>

    <target name="ActivationProperties">
        <record name="ActivationProperties.output" action="start" />
            <ant dir="activationProperties" target="all"/>
        <record name="ActivationProperties.output" action="stop" />
    </target>

    <target name="MDBDestination">
        <record name="MDBDestination.output" action="start" />
            <ant dir="mdbDest" target="all"/>
        <record name="MDBDestination.output" action="stop" />
    </target>

    <target name="usage">
        <echo>
                Usage:
                        ant all (Executes all the jms tests)
        </echo>
    </target>
</project>
