<?xml version="1.0"?>
<!--

    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

-->

<!DOCTYPE project [
<!ENTITY commonSetup SYSTEM "file:./../../../../config/properties.xml">
<!ENTITY commonBuild SYSTEM "file:./../../../../config/common.xml">
<!ENTITY commonRun SYSTEM "file:./../../../../config/run.xml">
<!ENTITY jaxwsTools SYSTEM "file:./../jaxwstools.xml">
<!ENTITY testproperties SYSTEM "file:./build.properties">
]>

<project name="webservicerefs" default="all" basedir=".">

    &commonSetup;
    &commonBuild;
    &commonRun;
    &testproperties;
    &jaxwsTools;

    <target name="all"
            depends="clean, setup-web, clean, setup-ejb, assemble-client, runclient, undeploy"
    />

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

  <target name="setup-web" depends="assemble-web, deploy-web-app" />
  <target name="setup-ejb" depends="assemble-ejb, deploy-ejb-jar" />

  <target name="assemble-ejb">
    <antcall target="compile-common">
      <param name="src" value="ejb_endpoint" />
    </antcall>
    <antcall target="pkg-ejb-jar">
      <param name="jar.classes" value="ejb_endpoint" />
      <param name="jar.file" value="${assemble.dir}/${appname}-ejb.jar" />
    </antcall>
  </target>

  <target name="assemble-web">
    <antcall target="compile-common">
      <param name="src" value="servlet_endpoint" />
    </antcall>
    <antcall target="pkg-war">
      <param name="war.classes" value="${build.classes.dir}" />
      <param name="war.file" value="${assemble.dir}/${appname}-web.war" />
    </antcall>
  </target>

  <target name="assemble-client" depends="init-common">
    <mkdir dir="${build.classes.dir}/client" />
    <echo message="wsimporting http://${http.host}:${http.port}/${appname}/webservice/ServletHelloService?WSDL"
    />
    <antcall target="wsimport">
      <param name="wsimport.args"
             value="-keep -d ${build.classes.dir}/client http://${http.host}:${http.port}/${appname}/webservice/ServletHelloService?WSDL"
      />
    </antcall>
    <echo message="wsimporting http://${http.host}:${http.port}/WSHelloEJBService/WSHelloEJB?WSDL"
    />
    <antcall target="wsimport">
      <param name="wsimport.args"
             value="-keep -d ${build.classes.dir}/client http://${http.host}:${http.port}/WSHelloEJBService/WSHelloEJB?WSDL"
      />
    </antcall>

    <replace file="client/Client.java" value="${http.host}" token="HTTP_HOST" />
    <replace file="client/Client.java" value="${http.port}" token="HTTP_PORT" />

    <javac srcdir="."
           destdir="${build.classes.dir}/client"
           classpath="${env.APS_HOME}/lib/reporter.jar:${env.S1AS_HOME}/lib/javaee.jar:${env.S1AS_HOME}/modules/webservices-osgi.jar"
           includes="client/**"
    />
  </target>

  <target name="deploy-web-app">
    <antcall target="deploy-war-common">
      <param name="contextroot" value="${appname}" />
    </antcall>
  </target>

  <target name="deploy-ejb-jar">
    <antcall target="deploy-jar-common" />
  </target>

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

  <target name="runclient">
    <antcall target="run-client">
      <param name="client-class" value="client.Client" />
      <param name="other-args" value="webservicerefs-test" />
    </antcall>
    <replace file="client/Client.java" token="${http.host}" value="HTTP_HOST" />
    <replace file="client/Client.java" token="${http.port}" value="HTTP_PORT" />
  </target>
</project>

