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

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

-->

<project name="bmp" default="usage" basedir=".">

    <property name="bmp-target" value="all"/>

    <target name="all">
        <antcall target="enroller">
        <param name="bmp-target" value="all"/>
        </antcall>
    </target>

    <target name="clean">
        <antcall target="enroller">
        <param name="bmp-target" value="clean"/>
        </antcall>
    </target>

    <target name="build">
        <antcall target="enroller">
        <param name="bmp-target" value="build-single-appclientjar"/>
        </antcall>
    </target>

    <target name="setup">
        <antcall target="enroller">
        <param name="bmp-target" value="setup"/>
        </antcall>
    </target>

    <target name="deploy">
        <antcall target="enroller">
        <param name="bmp-target" value="deploy"/>
        </antcall>
    </target>

    <target name="undeploy">
        <antcall target="enroller">
        <param name="bmp-target" value="undeploy"/>
        </antcall>
    </target>

    <target name="unsetup">
        <antcall target="enroller">
        <param name="bmp-target" value="unsetup"/>
        </antcall>
    </target>

    <target name="run">
        <antcall target="enroller">
        <param name="bmp-target" value="run"/>
        </antcall>
    </target>

    <target name="enroller">
        <record name="enroller.output" action="start" />
            <ant dir="enroller" target="${bmp-target}"/>
        <record name="enroller.output" action="stop" />
    </target>

    <target name="usage">
	<echo> Usage:
		ant enroller (Executes the enroller tests)
		ant all (Executes all the ejb bmp tests)
		ant clean (cleans all the ejb bmp tests)
		ant build (builds all the ejb bmp tests)
		ant setup (sets up all resources for bmp tests)
		ant deploy (deploys all the ejb bmp apps)
		ant run (Executes all the ejb bmp tests)
		ant undeploy (undeploys all the bmp apps)
		ant unsetup (unsets all resources for bmp tests)
	</echo>
    </target>
</project>
