<?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/test-resources/InvalidDeployment/services/"/>

    <path id="axis.test.classpath">
        <path refid="maven.dependency.classpath"></path>
        <pathelement location="../../../target/classes"/>
        <pathelement location="../../../target/test-classes"/>
    </path>

    <target name="compile" depends="init" unless="jars.uptodate">
        <mkdir dir="${build.classes}"/>
        <mkdir dir="${build.lib}"/>
        <javac 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}/invalidService.jar" basedir="${build.classes}">
            <include name="**"/>
        </jar>
        <delete dir="${build}"/>
    </target>

    <target name="init">
        <uptodate property="jars.uptodate" targetfile="${jar.dir}/invalidService.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>
