<?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 commonBuild SYSTEM "./../../config/common.xml">
]>

<project name="deployment-javaee8-ear-App" default="all" basedir=".">

    &commonBuild;

    <property name="testName" value="deployment-javaee8"/>
    <property name="archivedir" value="${build}/archives"/>
    <property name="contextroot" value="${testName}"/>

    <target name="prepare" depends="init">
        <mkdir dir="${build}"/>
        <mkdir dir="${archivedir}"/>
        <property name="web.war" value="${archivedir}/${testName}-web.war"/>
        <property name="client.jar" value="${archivedir}/${testName}-client.jar"/>
        <property name="all.ear" value="${archivedir}/${testName}App.ear"/>
    </target>

    <target name="compile" depends="prepare">
        <javac srcdir="web" destdir="${build}" debug="on" failonerror="true">
         <classpath refid="gfv3.classpath"/>
         </javac>
        <javac srcdir="client" destdir="${build}" debug="on" failonerror="true">
        <classpath refid="gfv3.classpath"/>
        </javac>
    </target>

    <target name="assemble" depends="compile">
        <war destfile="${web.war}" needxmlfile="false">
            <classes dir="${build}" excludes="**/*.jar,**/*Client.class"/>
            <fileset dir="web/resources">
            </fileset>
        </war>

        <jar destfile="${client.jar}">
            <metainf dir="client/META-INF" />
            <fileset dir="${build}" excludes="**/*.war,**/*Servlet.class"/>
        </jar>

        <ear destfile="${all.ear}" basedir="${archivedir}"
            appxml="descriptor/application.xml" includes="*.jar, *.war">
        </ear>
    </target>

    <target name="deploy.asadmin" depends="assemble">
        <property name="arg.list" value="deploy ${ASADMIN-ARGS} --retrieve ${archivedir} --name ${testName}-app ${all.ear}"/>
        <echo message="${ASADMIN} ${arg.list}"/>
        <exec executable="${ASADMIN}" resultproperty="return.code" failonerror="false">
           <arg line="${arg.list}"/>
        </exec>
        <condition property="deploy.failed" value="0">
            <equals arg1="0" arg2="${return.code}" />
        </condition>
        <condition property="deploy.failed" value="1">
            <not>
                <equals arg1="0" arg2="${return.code}" />
            </not>
        </condition>
        <antcall target="processResult">
            <param name="result" value="${deploy.failed}"/>
        </antcall>
    </target>

    <target name="undeploy.asadmin" depends="prepare">
        <antcall target="common.undeploy.asadmin">
            <param name="arg.list" value="${testName}-app"/>
            <param name="testName" value="${testName}-app"/>
        </antcall>
    </target>

    <target name="private-all">
        <antcall target="declare-test">
            <param name="description" value="javaee8/ear Test asadmin deploy"/>
        </antcall>
        <antcall target="deploy.asadmin"/>
        <antcall target="undeploy.asadmin"/>
    </target>

</project>
