<?xml version="1.0"?>

<!--
  ~ Licensed to the Apache Software Foundation (ASF) under one
  ~ or more contributor license agreements. See the NOTICE file
  ~ distributed with this work for additional information
  ~ regarding copyright ownership. The ASF licenses this file
  ~ to you under the Apache License, Version 2.0 (the
  ~ "License"); you may not use this file except in compliance
  ~ with the License. You may obtain a copy of the License at
  ~
  ~ http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing,
  ~ software distributed under the License is distributed on an
  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  ~ KIND, either express or implied. See the License for the
  ~ specific language governing permissions and limitations
  ~ under the License.
  -->

<project basedir="." default="jar">
    <property name="src" location="."/>
    <property name="build" location="build"/>
    <property name="build.classes" location="${build}/classes"/>
    <property name="build.lib" location="${build}/lib"/>
    <property name="lib" location="lib"/>
    <property name="root" location="../../../"/>
    <property name="jar.dir" location="${root}/target/Repository/modules/"/>

    <path id="axis.test.classpath">
        <pathelement path="${java.class.path}"/>
        <pathelement path="${maven.class.path}"/>
        <pathelement location="../../../target/classes"/>
    </path>

    <target name="compile" depends="init" unless="jars.uptodate">
        <mkdir dir="${build.classes}"/>
        <mkdir dir="${build.lib}"/>
        <javac fork="true" destdir="${build.classes}" debug="on">
            <classpath refid="axis.test.classpath"/>
            <src path="${src}"/>
        </javac>
    </target>

    <target name="jar" depends="compile" unless="jars.uptodate">
        <copy todir="${build.classes}/META-INF">
            <fileset dir="${basedir}/META-INF/">
                <include name="**/*.xml"/>
                <exclude name="build.xml"/>
            </fileset>
        </copy>

        <mkdir dir="${jar.dir}"/>
        <jar jarfile="${jar.dir}/SOAP12TestModuleC.jar" basedir="${build.classes}">
            <include name="**"/>
        </jar>
        <delete dir="${build}"/>
    </target>

    <target name="init">
        <uptodate property="jars.uptodate" targetfile="${jar.dir}/SOAP12TestModuleC.jar">
            <srcfiles dir="${src}">
                <include name="**/*.java"/>
                <include name="**/*.xml"/>
                <include name="**/*.wsdl"/>
                <exclude name="${build}/**"/>
            </srcfiles>
        </uptodate>
        <echo message="the files are up to date = ${jars.uptodate}"></echo>
    </target>

</project>
