<?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 name="axis2_build" default="install">

    <!-- set the property to indicate that JAVA_HOME is set -->
    <target name="cond_check">
        <property environment="env"/>
        <condition property="JAVA_HOME_SET">
            <isset property="env.JAVA_HOME"/>
        </condition>
    </target>

    <!-- fail if JAVA_HOME isn't set, otherwise we don't execute the body -->
    <target name="check_environment" unless="JAVA_HOME_SET" depends="cond_check">
        <fail message="The environment variable JAVA_HOME is not set. Set this variable to the directory where the JDK is installed."/>
    </target>

    <!-- set the property to indicate that MAVEN_HOME is set -->
    <target name="cond_check2">
        <property environment="env"/>
        <condition property="MAVEN_HOME_SET">
            <isset property="env.MAVEN_HOME"/>
        </condition>
    </target>

    <!-- fail if MAVEN_HOME isn't set, otherwise we don't execute the body -->
    <target name="check_environment2" unless="MAVEN_HOME_SET" depends="cond_check2">
        <fail message="The environment variable MAVEN_HOME is not set. Set this variable to the directory where Maven is installed."/>
    </target>

    <!-- initialize properties -->
    <target name="init" depends="check_environment, check_environment2">
        <!--macro for maven -->
        <condition property="maven.executable" value="cmd.exe">
            <os family="windows"/>
        </condition>

        <condition property="maven.line1" value="/c ${env.MAVEN_HOME}/bin/mvn.bat">
            <os family="windows"/>
        </condition>

        <condition property="maven.line2"
                   value="--offline">
            <istrue value="${offline}"/>
        </condition>

        <condition property="maven.line3"
                   value="-Dtest=false">
            <istrue value="${skip}"/>
        </condition>

        <property name="maven.executable" value="mvn"/>
        <property name="maven.line1" value=""/>
        <property name="maven.line2" value=""/>
        <property name="maven.line3" value=""/>

        <presetdef name="mvn">
            <exec failonerror="true" executable="${maven.executable}">
                <env key="MAVEN_TERMINATE_CMD" value="on"/>
                <arg line="${maven.line1}"/>
                <arg line="${maven.line2}"/>
                <arg line="${maven.line3}"/>
            </exec>
        </presetdef>
    </target>

    <target name="clean" depends="init">
        <mvn>
            <arg value="clean"/>
        </mvn>
    </target>

    <target name="install" depends="init">
        <mvn searchpath="true" dir="${basedir}/modules/tool/axis2-aar-maven-plugin" failonerror="true">
            <arg line="install"/>
        </mvn>
        <mvn searchpath="true" dir="${basedir}/modules/tool/axis2-mar-maven-plugin" failonerror="true">
            <arg line="install"/>
        </mvn>
        <mvn searchpath="true" dir="${basedir}" failonerror="true">
            <arg line="-Drelease install"/>
        </mvn>
    </target>

    <target name="deploy" depends="init">
        <mvn searchpath="true" dir="${basedir}/modules/tool/axis2-aar-maven-plugin" failonerror="true">
            <arg line="deploy"/>
        </mvn>
        <mvn searchpath="true" dir="${basedir}/modules/tool/axis2-mar-maven-plugin" failonerror="true">
            <arg line="deploy"/>
        </mvn>
        <mvn searchpath="true" dir="${basedir}" failonerror="true">
            <arg line="-Drelease deploy"/>
        </mvn>
    </target>
</project>

