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

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

-->

<!DOCTYPE project [
<!ENTITY commonSetup SYSTEM "./../../../../config/properties.xml">
<!ENTITY commonBuild SYSTEM "./../../../../config/common.xml">
<!ENTITY testproperties SYSTEM "./build.properties">
]>

<project name="cdi-full-ear-App" default="usage" basedir=".">

    &commonSetup;
    &commonBuild;
    &testproperties;

    <target name="all" depends="clean,build,deploy,run,undeploy" />

	<target name="clean" depends="init-common">
		<antcall target="clean-common" />
	</target>

	<target name="compile" depends="clean">
		<!-- compile library -->
		<antcall target="compile-common">
			<param name="src" value="lib" />
		</antcall>


		<antcall target="compile-common">
			<param name="src" value="ejb" />
		</antcall>


		<antcall target="compile-common">
			<param name="src" value="war" />
		</antcall>


		<javac classpath="${env.S1AS_HOME}/lib/javaee.jar:${env.S1AS_HOME}/lib/gf-client.jar:${build.classes.dir}:${env.APS_HOME}/lib/reporter.jar" srcdir="client" destdir="${build.classes.dir}" debug="on" failonerror="true">
			<compilerarg line="-endorseddirs ${env.S1AS_HOME}/modules/endorsed" />
		</javac>
	</target>

	<target name="build" depends="compile">
		<mkdir dir="${assemble.dir}" />

		<!-- build library jar -->
		<mkdir dir="${build.classes.dir}/META-INF" />
		<copy file="${persistence.xml}" tofile="${build.classes.dir}/META-INF/persistence.xml" failonerror="false" />
		<copy file="${beans.xml}" tofile="${build.classes.dir}/META-INF/beans.xml" failonerror="false" />
		<mkdir dir="${build.classes.dir}/lib-dir" />
		<jar jarfile="${build.classes.dir}/lib-dir/lib.jar" basedir="${build.classes.dir}" includes="com/acme/util/*.class, com/acme/ejb/api/*.class">
			<metainf dir="${build.classes.dir}/META-INF">
				<include name="persistence.xml" />
				<include name="beans.xml" />
			</metainf>
		</jar>
		<copy file="${env.APS_HOME}/lib/reporter.jar" todir="${build.classes.dir}/lib-dir" />

		<!-- build EJB jar -->
		<antcall target="ejb-jar-common">
			<param name="ejbjar.classes" value="com/acme/ejb/impl/*.class" />
		</antcall>

		<!-- delete EJB impl and lib classes as WAR should not have them -->
		<delete includeEmptyDirs="true">
			<fileset dir="${build.classes.dir}/com/acme/ejb/" />
			<fileset dir="${build.classes.dir}/com/acme/util/" />
		</delete>

		<!-- create WAR -->
		<antcall target="webclient-war-common">
			<param name="hasWebclient" value="true" />
		</antcall>

		<!-- assemble EAR -->
		<delete file="${assemble.dir}/${appname}.ear" />
		<mkdir dir="${assemble.dir}" />
		<mkdir dir="${build.classes.dir}/META-INF" />
		<copy file="${sun-application.xml}" tofile="${build.classes.dir}/META-INF/sun-application.xml" failonerror="false" />
		<copy file="${glassfish-resources-ear.xml}" tofile="${build.classes.dir}/META-INF/glassfish-resources.xml" failonerror="false" filtering="true" />
		<ear earfile="${assemble.dir}/${appname}App.ear" appxml="${application.xml}">
			<fileset dir="${assemble.dir}">
				<include name="*.jar" />
				<include name="*.war" />
			</fileset>
			<fileset dir="${build.classes.dir}">
				<include name="META-INF/sun-application.xml" />
				<include name="META-INF/glassfish-resources.xml" />
			</fileset>
			<fileset dir="${build.classes.dir}" includes="lib-dir/*" />
		</ear>

	</target>

	<target name="deploy" depends="init-common">
		<antcall target="deploy-common" />
	</target>

	<target name="run" depends="init-common">
		<java fork="on" failonerror="true" classpath="${env.S1AS_HOME}/lib/javaee.jar:${env.S1AS_HOME}/lib/gf-client.jar:${build.classes.dir}:${env.APS_HOME}/lib/reporter.jar" classname="${se.client}">
			<arg line="${contextroot}" />
			<arg line="${http.host}" />
			<arg line="${http.port}" />
		</java>
	</target>

	<target name="undeploy" depends="init-common">
		<antcall target="undeploy-common" />
	</target>

	<target name="usage">
		<antcall target="usage-common" />
	</target>
</project>
