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

    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

-->

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

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

    &commonSetup;
    &commonBuild;
    &testproperties;

    <target name="all" depends="clean,build,create-resources,deploy,run,undeploy,delete-resources,clean"/>

    <target name="clean" depends="init-common">
      <antcall  target="clean-common"/>
      <delete dir="${basedir}/docroot" />
      <delete dir="${basedir}/lib" />
    </target>

    <target name="compile" depends="clean">
        <antcall target="compile-common">
            <param name="src" value="ejb"/>
        </antcall>
        <antcall target="compile-common">
            <param name="src" value="client"/>
        </antcall>
        <antcall target="compile-common">
            <param name="src" value="servlet"/>
        </antcall>
     </target>

    <!-- ================================================================ -->
    <!-- Target to create the ejb application jar file -->
    <!-- ================================================================ -->

     <target name="package-ejb-jar" >

        <antcall target="package-ejbjar-common">

          <param name="ejbjar.classes"
              value="**/ProductEJB.class,**/Product.class, **/ProductHome.class,productSchema.dbschema,**/ProductEJB_JDOState.mapping" />

          <param name="ejb-jar.xml" value="${ejb-jar.xml}" />
          <param name="sun-ejb-jar.xml" value="${sun-ejb-jar.xml}" />
          <param name="ejbjar.files" value="${build.classes.dir}" />
          <param name="ejb.jar" value="${assemble.dir}/j2eeguide_productEjb.jar"/>
        </antcall>
    </target>

    <target name="package-webclient-war" >
        <antcall target="webclient-war-common">
            <param name="hasWebclient" value="true"/>
            <param name="war.classes"
              value="**/Servlet.class" />
            <param name="war.file" value="${assemble.dir}/productWebStuff.war"/>
        </antcall>

    </target>

    <target name="package-appclient" >
      <mkdir dir="${assemble.dir}"/>

        <antcall target="package-appclientjar-common">
            <param name="appclientjar.classes"
              value="**/ProductClient.class, **/ProductHome.class,**/Product.class" />
            <param name="application-client.xml"
              value="${application-client.xml}" />
            <param name="sun-application-client.xml"
              value="${sun-application-client.xml}" />
            <param name="appclient.jar" value="${assemble.dir}/${appname}AppClient.jar"/>
            <param name="appclientjar.files" value="${build.classes.dir}" />

        </antcall>
    </target>

     <target name="package-ear">

      <delete file="${assemble.dir}/${appname}.ear"/>
      <mkdir dir="${assemble.dir}"/>
      <mkdir dir="${build.classes.dir}/META-INF"/>

      <property name="TEMPDIR" value="${assemble.dir}/TEMPDIR" />
      <mkdir dir="${TEMPDIR}" />
      <copy file="${j2eeguide_productEjb.xml}" todir="${TEMPDIR}" failonerror="false"/>
      <copy file="${productWebStuff.xml}" todir="${TEMPDIR}" failonerror="false"/>
      <copy file="${sun-j2eeguide_productEjb.xml}" todir="${TEMPDIR}" failonerror="false"/>
      <copy file="${sun-productWebStuff.xml}" todir="${TEMPDIR}" failonerror="false"/>


      <ear earfile="${assemble.dir}/${appname}App.ear" appxml="${application.xml}">
        <fileset dir="${assemble.dir}">
          <include name="*.jar"/>
          <include name="*.war"/>
        </fileset>
        <fileset dir="${TEMPDIR}" />

        <fileset dir="${env.APS_HOME}/lib" includes="reporter.jar"/>
      </ear>
    </target>






    <target name="build" depends="compile">

        <mkdir dir="${assemble.dir}"/>
        <mkdir dir="${basedir}/docroot" />
        <mkdir dir="${build.classes.dir}/j2eeguide/product" />
        <copy file="${basedir}/descriptor/index.html" todir="${basedir}/docroot" />
        <copy file="${basedir}/ejb/ProductEJB_JDOState.mapping" todir="${build.classes.dir}/j2eeguide/product" />

        <antcall target="package-ejb-jar" />
        <antcall target="package-webclient-war" />
        <antcall target="package-appclient" />
        <antcall target="package-ear" />

    </target>

    <target name="deploy"
            depends="init-common">
        <antcall target="execute-ejb-sql-common">
            <param name="sql.file" value="sql/j2eeguide_product_derby.sql"/>
        </antcall>
        <antcall target="deploy-common"/>
    </target>

   <target name="create-resources" depends="init-common">
        <antcall target="asadmin-batch-common">
          <param name="asadmin.file" value="${basedir}/../common/create_resources.asadmin"/>
        </antcall>
    </target>

    <target name="delete-resources" depends="init-common">
        <antcall target="asadmin-batch-common">
          <param name="asadmin.file" value="${basedir}/../common/delete_resources.asadmin"/>
        </antcall>
    </target>


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

    <target name="undeploy" depends="init-common">
        <antcall target="undeploy-common"/>
           <antcall target="execute-ejb-sql-common">
            <param name="sql.file" value="sql/drop_j2eeguide_product_derby.sql"/>
        </antcall>
    </target>



<!--
    <target name="deleteRows" depends="init-common">
        <antcall target="execute-ejb-sql-common">
           <param name="sql.file" value="sql/delete_tables.sql"/>
        </antcall>
    </target>
-->

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