<project name="sample11" default="build">

  <!-- common properties -->
  <property file="../properties.txt" />

  <!-- properties specific to this service -->
  <property name="service" value="SimpleTest" />
  <property name="service_package" value="sample11" />

  <property name="server_classes" value="${output_dir}/WEB-INF/classes" />
 

  <path id="server.class.path">
    <pathelement path="${server_classes}"/>
    <pathelement path="${java.class.path}"/>
  </path>

  <path id="client.class.path">
    <pathelement path="${client_classes}" />
    <pathelement path="${java.class.path}" />
  </path>

  <target name="clean" >
    <delete dir="${output_dir}" />
  </target>

  <target name="init" depends="clean" >
    <mkdir dir="${server_classes}" />
  </target>

  <target name="build" depends="clean,init,gen,compile.server,
      package,compile.client" />

  <target name="package" >
    <jar jarfile="${application_dir}/${service_package}.war" 
      basedir="${output_dir}" />
  </target>

  <target name="compile.server" >
    <javac srcdir="${server_classes}" destdir="${server_classes}" >
      <classpath refid="server.class.path" />
    </javac>

    <javac srcdir="." includes="SimpleTestImpl.java" 
      destdir="${server_classes}" >
      <classpath refid="server.class.path" />
    </javac>
  </target>

  <target name="compile.client" 
      description="compile classes needed on the client side" >

    <javac srcdir="." includes="client/*.java" destdir="${client_classes}" >
      <classpath refid="client.class.path" />
    </javac>
  </target>

  <target name="gen" >
    <autotype
      wsdl="to-implement.wsdl"
      destDir="${server_classes}"
      packageName="tutorial.sample11">
    </autotype>

    <wsdl2service
      wsdl="to-implement.wsdl"
      destDir="${server_classes}"
      typeMappingFile="${server_classes}/types.xml"
      packageName="tutorial.sample11"
      componentName="tutorial.sample11.SimpleTestImpl"
      ddFile="${output_dir}/WEB-INF/web-services.xml" />

    <clientgen wsdl="to-implement.wsdl"
      clientJar="${client_classes}"
      packageName="tutorial.sample11.client"
      typePackageName="tutorial.sample11.client" />

  </target>

  <target name="browse" description="browse test page for this service" >

    <exec executable="${browser}" >
      <arg line="${server_url}/${service_package}/${service}" />
    </exec>
  </target>

  <target name="run" description="run client" >

    <java classname="tutorial.${service_package}.client.Main" >
      <classpath refid="client.class.path" />
      <arg line="${server_url}/${service_package}/${service}?WSDL" />
    </java>
  </target>


</project>

