<?xml version="1.0" encoding="UTF-8"?>
<project name="dbwg-build-axis2-webservices-from-example-wsdl" default="init">

    <description>
        Axis2
        Run wsdl2java to generate code implementing web service based on examples.wsdl, 
        Modify code to implement an echo service, 
        generate the axis2 service (aar file), 
        Deploy the aar
    </description>

    <target name="init" depends="delete,mkdir,wsdl2java,insertecho,buildserviceaar,deploy"/>
    
    <property name="examplesDir" location="../../../examples/6/09"/> 
    <property name="app" value="databinding_axis2"/>
    <property environment="env"/>
    <property name="axis2_home" value="${env.AXIS2_HOME}"/>
    <property name="java_home" value="${env.JAVA_HOME}"/>
    <property name="tomcat_home" value="${env.CATALINA_HOME}"/>
    <property name="util_jar" location="lib/dbwg-axis2.1.2-util.jar" />
    <property name="webapps" value="C:/jakarta-tomcat-5.0.28/webapps" />
    <path id="class.path">
        <fileset dir="${axis2_home}/lib">
            <include name="**/*.jar"/>
        </fileset>
        <fileset dir="${java_home}/lib">
            <include name="**/*.jar"/>
        </fileset>
    </path>    
    
    <target name="delete">
        <echo>delete old files/directories</echo>
        <delete dir="${app}" quiet="true"/>
        <delete dir="resources" quiet="true"/>
        <delete dir="build" quiet="true"/>
        <delete file="build.xml" quiet="true"/>
    </target>

    <target name="mkdir">
        <echo>make new directories</echo>
        <mkdir dir="${app}/src"/>
    </target>
<!--    
    <target name="wsdl">
        <echo>create examples.wsdl</echo>
        <style  style="${examplesDir}/examples2wsdl.xsl" 
            in="${examplesDir}/examples.xml" 
            out="examples.wsdl">
            <param name="exclude" expression="${exclude}"/>
        </style>
    </target>    
-->
    <target name="wsdl2java">
        <echo>create java code from examples wsdl</echo>
        <java fork="true" classname="org.apache.axis2.wsdl.WSDL2Java" classpathref="class.path">
            <arg line="-uri examples.wsdl -S ${app}/src -p databinding -s -ss -d ${dbengine} -g -sd"/>            
        </java> 
    </target>

    <target name="insertecho">
        <echo>insert echo in generated impl java code</echo>
        <java fork="true" classname="org.w3c.dbwg.wsdl.util.axis2.one.two.ModServiceSkeleton" classpath="${util_jar}">
            <arg line="${app}/src/databinding/ServiceSkeleton.java"/>
        </java> 
    </target>
    
    <target name="buildserviceaar">
        <echo>run ant task to build aar</echo>
        <ant antfile="build.xml"/> 
    </target>
    
    <target name="deploy">
        <echo>copy service aar file to tomcat webapps axis2</echo>
        <delete dir="${webapps}/${app}" quiet="true"/>
        <echo>copy new war file to app server (${example})</echo>
        <copy todir="${webapps}/axis2/WEB-INF/services" file="build/lib/Services.aar"/>
    </target>    
</project>    
