<?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="downloads" default="main" basedir=".">

	<!-- properties -->
	<property file="${basedir}/build.properties"/>


    <!-- 
       To clean these you must call thirdparty-clean or super-clean to clean everything.  
       clean does not remove these since they don't change often and the downloads take time.
    -->
    <target name="main" 
        depends="servlet-download,activemq-download,codec-download,collections-download,httpclient-download,logging-download,log4j-download,spring-download,xalan-download,doclet-download,cat-download,cat7-download,cat4-download"
        description="Copies third-party software into place for build">
        <echo message="Use thirdparty-clean or super-clean to remove these."/> 
    </target>
    
    <target name="clean"
        description="Cleans thirdparty downloaded files."
        depends="check-if-maven" unless="no.clean">
        <delete failonerror="false">
            <fileset dir="${lib.dir}">
                <include name="**/**"/>
            </fileset>
        </delete>
        <delete failonerror="false" file="${modules.core.dir}/src/ExcludeDoclet.java" />
        <echo>downloads cleaned</echo>
     </target>
    
    <target name="check-if-maven" >
        <condition property="no.clean">
            <contains string="${lib.dir}" substring="repository" />
        </condition>
    </target>
    
	<!--
        servlet-api 2.5
    -->
    <target name="servlet-check" description="Checks if the Tomcat server has been downloaded.">
        <available file="${servlet.dir}/servlet-api-${servlet.version}.jar" property="servlet.present"/>
    </target>
   
    <target name="servlet-download" depends="servlet-check" unless="servlet.present">
        <antcall target="download-servlet-zip" />
    </target>

    <target name="download-servlet-zip" unless="servlet.zip.exists">
        <mkdir dir="${servlet.dir}"/>
        <get src="https://repo1.maven.org/maven2/javax/servlet/servlet-api/${servlet.version}/servlet-api-${servlet.version}.jar"
            dest="${servlet.dir}/servlet-api-${servlet.version}.jar"
            verbose="false"/>
    </target>
    
	<!--
        activemq-5.3.1.zip 
    -->
    <target name="activemq-check" description="Checks if the ActiveMQ jars have been downloaded.">
        <available file="${activemq.dir}/activemq-core/${activemq.version}/activemq-core-${activemq.version}.jar" property="activemq.present"/>
    </target>
   
    <target name="activemq-download" depends="activemq-check" unless="activemq.present">
        <available file="${activemq.zip.file}" type="file" property="activemq.zip.exists"/>
        <antcall target="download-activemq-zip" />
        
        <unzip src="${activemq.zip.file}" dest="${download.dir}/activemq">
            <patternset>
                <include name="**/*"/>
            </patternset>
        </unzip>
        <mkdir dir="${activemq.dir}/activemq-core/${activemq.version}" />
        <copy toDir="${activemq.dir}/activemq-core/${activemq.version}"
            file="${download.dir}/activemq/apache-activemq-${activemq.version}/lib/activemq-core-${activemq.version}.jar" />
        <mkdir dir="${jms.dir}" />
        <copy toDir="${jms.dir}"
            file="${download.dir}/activemq/apache-activemq-${activemq.version}/lib/${jms.jar}" />
    </target>

    <target name="download-activemq-zip" unless="activemq.zip.exists">
        <mkdir dir="${download.dir}"/>
        <get src="http://archive.apache.org/dist/activemq/apache-activemq/${activemq.version}/apache-activemq-${activemq.version}-bin.zip"
            dest="${activemq.zip.file}" 
            verbose="false"/>
    </target>

	<!--
        commons-codec-1.5.jar 
    -->
    <target name="codec-check" description="Checks if the commons-codec jar have been downloaded.">
        <available file="${codec.dir}/commons-codec-${codec.version}.jar" property="codec.present"/>
    </target>
   
    <target name="codec-download" depends="codec-check" unless="codec.present">
        <available file="${codec.zip.file}" type="file" property="codec.zip.exists"/>
        <antcall target="download-codec-zip" />
        
        <unzip src="${codec.zip.file}" dest="${download.dir}/commons-codec">
            <patternset>
                <include name="**/*"/>
            </patternset>
        </unzip>
        <copy toDir="${codec.dir}"
            file="${download.dir}/commons-codec/commons-codec-${codec.version}/commons-codec-${codec.version}.jar" />
    </target>

    <target name="download-codec-zip" unless="codec.zip.exists">
        <mkdir dir="${download.dir}"/>
        <get src="http://archive.apache.org/dist/commons/codec/binaries/commons-codec-${codec.version}-bin.zip"
            dest="${codec.zip.file}" 
            verbose="false"/>
    </target>
    
	<!--
        commons-collection-3.1.jar 
    -->
    <target name="collections-check" description="Checks if the commons-collections jar have been downloaded.">
        <available file="${collections.dir}/commons-collections-${collections.version}.jar" property="collections.present"/>
    </target>
   
    <target name="collections-download" depends="collections-check" unless="collections.present">
        <available file="${collections.zip.file}" type="file" property="collections.zip.exists"/>
        <antcall target="download-collections-zip" />
        
        <unzip src="${collections.zip.file}" dest="${download.dir}/commons-collections">
            <patternset>
                <include name="**/*"/>
            </patternset>
        </unzip>
        <copy toDir="${collections.dir}"
            file="${download.dir}/commons-collections/commons-collections-${collections.version}/commons-collections-${collections.version}.jar" />
    </target>

    <target name="download-collections-zip" unless="collections.zip.exists">
        <mkdir dir="${download.dir}"/>
        <get src="http://archive.apache.org/dist/commons/collections/binaries/commons-collections-${collections.version}-bin.zip"
            dest="${collections.zip.file}"
            verbose="false"/>
    </target>
    
	<!--
        commons-fileupload-1.1.jar 
    <target name="fileupload-check" description="Checks if the commons-fileupload jar have been downloaded.">
        <available file="${lib.dir}/commons-fileupload-1.1.jar" property="fileupload.present"/>
    </target>
   
    <target name="fileupload-download" depends="fileupload-check" unless="fileupload.present">
        <available file="${fileupload.zip.file}" type="file" property="fileupload.zip.exists"/>
        <antcall target="download-fileupload-zip" />
        
        <unzip src="${fileupload.zip.file}" dest="${download.dir}/commons-fileupload">
            <patternset>
                <include name="**/*"/>
            </patternset>
        </unzip>
        <copy toDir="${lib.dir}"
            file="${download.dir}/commons-fileupload/commons-fileupload-1.1/commons-fileupload-1.1.jar" />
    </target>

    <target name="download-fileupload-zip" unless="fileupload.zip.exists">
        <mkdir dir="${download.dir}"/>
        <get src="http://archive.apache.org/dist/commons/fileupload/binaries/commons-fileupload-1.1.zip" 
            dest="${fileupload.zip.file}" 
            verbose="false"/>
    </target>
     -->
    
	<!--
        commons-httpclient-3.1.jar 
    -->
    <target name="httpclient-check" description="Checks if the commons-httpclient jar have been downloaded.">
        <available file="${httpclient.dir}/commons-httpclient-${httpclient.version}.jar" property="httpclient.present"/>
    </target>
   
    <target name="httpclient-download" depends="httpclient-check" unless="httpclient.present">
        <available file="${httpclient.zip.file}" type="file" property="httpclient.zip.exists"/>
        <antcall target="download-httpclient-zip" />
        
        <unzip src="${httpclient.zip.file}" dest="${download.dir}/commons-httpclient">
            <patternset>
                <include name="**/*"/>
            </patternset>
        </unzip>
        <copy toDir="${httpclient.dir}"
            file="${download.dir}/commons-httpclient/commons-httpclient-${httpclient.version}/commons-httpclient-${httpclient.version}.jar" />
    </target>

    <target name="download-httpclient-zip" unless="httpclient.zip.exists">
        <mkdir dir="${download.dir}"/>
        <get src="http://archive.apache.org/dist/httpcomponents/commons-httpclient/3.0/binary/commons-httpclient-${httpclient.version}.zip"
            dest="${httpclient.zip.file}" 
            verbose="false"/>
    </target>
    
	<!--
        commons-logging-1.1.1.jar 
    -->
    <target name="logging-check" description="Checks if the commons-logging jar have been downloaded.">
        <available file="${logging.dir}/commons-logging-${logging.version}.jar" property="logging.present"/>
    </target>
   
    <target name="logging-download" depends="logging-check" unless="logging.present">
        <available file="${logging.zip.file}" type="file" property="logging.zip.exists"/>
        <antcall target="download-logging-zip" />
        
        <unzip src="${logging.zip.file}" dest="${download.dir}/commons-logging">
            <patternset>
                <include name="**/*"/>
            </patternset>
        </unzip>
        <copy toDir="${logging.dir}"
            file="${download.dir}/commons-logging/commons-logging-${logging.version}/commons-logging-${logging.version}.jar" />
    </target>

    <target name="download-logging-zip" unless="logging.zip.exists">
        <mkdir dir="${download.dir}"/>
        <get src="http://archive.apache.org/dist/commons/logging/binaries/commons-logging-${logging.version}-bin.zip"
            dest="${logging.zip.file}" 
            verbose="false"/>
    </target>
    
	<!--
        hsqldb.jar 
    <target name="hsqldb-check" description="Checks if the hsqldb jar have been downloaded.">
        <available file="${lib.dir}/hsqldb/hsqldb.jar" property="hsqldb.present"/>
    </target>
   
    <target name="hsqldb-download" depends="hsqldb-check" unless="hsqldb.present">
        <available file="${hsqldb.zip.file}" type="file" property="hsqldb.zip.exists"/>
        <antcall target="download-hsqldb-zip" />
        
        <unzip src="${hsqldb.zip.file}" dest="${download.dir}/hsqldb">
            <patternset>
                <include name="**/*"/>
            </patternset>
        </unzip>
        <copy toDir="${lib.dir}/hsqldb">
            <fileset dir="${download.dir}/hsqldb/hsqldb/lib" includes="hsqldb.jar"/>
        </copy>
        <copy toDir="${lib.dir}/hsqldb">
            <fileset dir="${download.dir}/hsqldb/hsqldb/doc" includes="hsqldb_lic.txt"/>
        </copy>
    </target>

    <target name="download-hsqldb-zip" unless="hsqldb.zip.exists">
        <mkdir dir="${download.dir}"/>
        <get src="http://downloads.sourceforge.net/project/hsqldb/hsqldb/hsqldb_1_8_0/hsqldb_1_8_0_10.zip?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fhsqldb%2Ffiles%2Fhsqldb%2Fhsqldb_1_8_0%2F&amp;ts=1378509998&amp;use_mirror=softlayer-dal" 
            dest="${hsqldb.zip.file}" 
            verbose="false"/>
    </target>
     -->
    
	<!--
        jms.jar 
    <target name="jms-check" description="Checks if the jms jar have been downloaded.">
        <available file="${lib.dir}/jms.jar" property="jms.present"/>
    </target>
   
    <target name="jms-download" depends="jms-check" unless="jms.present">
        <available file="${jms.zip.file}" type="file" property="jms.zip.exists"/>
        <antcall target="download-jms-zip" />
        
        <unzip src="${jms.zip.file}" dest="${download.dir}/jms">
            <patternset>
                <include name="**/*"/>
            </patternset>
        </unzip>
        <copy file="${download.dir}/jms/openjms-0.7.6.1/lib/jms-1.0.2a.jar" toFile="${lib.dir}/jms.jar"/>
        <copy file="${download.dir}/jms/openjms-0.7.6.1/LICENSE.txt" toFile="${lib.dir}/jms-LICENSE.txt"/>
    </target>

    <target name="download-jms-zip" unless="jms.zip.exists">
        <mkdir dir="${download.dir}"/>
        <get src="http://downloads.sourceforge.net/project/openjms/openjms/openjms-0.7.6.1/openjms-0.7.6.1.zip?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fopenjms%2Ffiles%2Fopenjms%2Fopenjms-0.7.6.1%2F&amp;ts=1378512874&amp;use_mirror=hivelocity" 
            dest="${jms.zip.file}" 
            verbose="false"/>
    </target>
     -->
    
	<!--
        log4j.jar 
    -->
    <target name="log4j-check" description="Checks if the log4j jar have been downloaded.">
        <available file="${log4j.dir}/log4j-${log4j.version}.jar" property="log4j.present"/>
    </target>
   
    <target name="log4j-download" depends="log4j-check" unless="log4j.present">
        <available file="${log4j.zip.file}" type="file" property="log4j.zip.exists"/>
        <antcall target="download-log4j-zip" />
        
        <unzip src="${log4j.zip.file}" dest="${download.dir}/log4j">
            <patternset>
                <include name="**/*"/>
            </patternset>
        </unzip>
        <copy file="${download.dir}/log4j/logging-log4j-${log4j.version}/dist/lib/log4j-${log4j.version}.jar" toDir="${log4j.dir}"/>
    </target>

    <target name="download-log4j-zip" unless="log4j.zip.exists">
        <mkdir dir="${download.dir}"/>
        <get src="http://archive.apache.org/dist/logging/log4j/${log4j.version}/logging-log4j-${log4j.version}.zip"
            dest="${log4j.zip.file}" 
            verbose="false"/>
    </target>
    
	<!--
        spring 
    -->
    <target name="spring-check" description="Checks if the spring jars have been downloaded.">
        <available file="${spring.dir}/spring-core-${spring.version}.RELEASE.jar" property="spring.present"/>
    </target>
   
    <target name="spring-download" depends="spring-check" unless="spring.present">
        <available file="${spring.zip.file}" type="file" property="spring.zip.exists"/>
        <antcall target="download-spring-zip" />
        
        <unzip src="${spring.zip.file}" dest="${download.dir}/spring">
            <patternset>
                <include name="**/*"/>
            </patternset>
        </unzip>
        <copy tofile="${spring.dir}/spring-core-${spring.version}.RELEASE.jar"
            file="${download.dir}/spring/spring-framework-${spring.version}.RELEASE/dist/org.springframework.core-${spring.version}.RELEASE.jar" />
    <!--
        <unzip src="${springsecurity.zip.file}" dest="${download.dir}/springsecurity">
            <patternset>
                <include name="**/*"/>
            </patternset>
        </unzip>
        <copy file="${download.dir}/springsecurity/spring-security-3.0.3.RELEASE/dist/spring-security-config-3.0.3.RELEASE.jar" toDir="${lib.dir}/spring"/>
        <copy file="${download.dir}/springsecurity/spring-security-3.0.3.RELEASE/dist/spring-security-core-3.0.3.RELEASE.jar" toDir="${lib.dir}/spring"/>
        <copy file="${download.dir}/springsecurity/spring-security-3.0.3.RELEASE/dist/spring-security-web-3.0.3.RELEASE.jar" toDir="${lib.dir}/spring"/>
        <unzip src="${taglibs.zip.file}" dest="${download.dir}/taglibs">
            <patternset>
                <include name="**/*"/>
            </patternset>
        </unzip>
        <copy file="${download.dir}/taglibs/jakarta-taglibs-standard-1.1.2/lib/jstl.jar" toFile="${lib.dir}/spring/jstl-1.1.2.jar"/>
        <copy file="${download.dir}/taglibs/jakarta-taglibs-standard-1.1.2/lib/standard.jar" toFile="${lib.dir}/spring/standard-1.1.2.jar"/>
        <unzip src="${aopalliance.zip.file}" dest="${download.dir}/aopalliance">
            <patternset>
                <include name="**/*"/>
            </patternset>
        </unzip>
        <copy file="${download.dir}/aopalliance/aopalliance.jar" toFile="${lib.dir}/spring/aopalliance-1.0.jar"/>
        <unzip src="${backport.zip.file}" dest="${download.dir}/backport">
            <patternset>
                <include name="**/*"/>
            </patternset>
        </unzip>
        <copy file="${download.dir}/backport/backport-util-concurrent-2.2/backport-util-concurrent.jar" toFile="${lib.dir}/spring/backport-util-concurrent-2.2.jar"/>
         -->
    </target>

    <target name="download-spring-zip" unless="spring.zip.exists">
        <mkdir dir="${lib.dir}/spring"/>
        <mkdir dir="${download.dir}"/>
        <get src="http://s3.amazonaws.com/dist.springframework.org/release/SPR/spring-framework-${spring.version}.RELEASE.zip"
            dest="${spring.zip.file}" 
            verbose="false"/>
        <!--
        <get src="http://s3.amazonaws.com/dist.springframework.org/release/SEC/spring-security-3.0.3.RELEASE.zip"
            dest="${springsecurity.zip.file}" 
            verbose="false"/>
        <get src="http://repo1.maven.org/maven2/org/springframework/flex/spring-flex-core/1.5.2.RELEASE/spring-flex-core-1.5.2.RELEASE.jar"
            dest="${springflex.jar.file}" 
            verbose="false"/>
        <get src="http://archive.apache.org/dist/jakarta/taglibs/standard/binaries/jakarta-taglibs-standard-1.1.2.zip" 
            dest="${taglibs.zip.file}" 
            verbose="false"/>
        <get src="http://downloads.sourceforge.net/project/aopalliance/aopalliance/1.0/aopalliance.zip?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Faopalliance%2Ffiles%2Faopalliance%2F1.0%2F&amp;ts=1378515484&amp;use_mirror=softlayer-dal" 
            dest="${aopalliance.zip.file}" 
            verbose="false"/>
        <get src="http://downloads.sourceforge.net/project/backport-jsr166/backport-jsr166/2.2/backport-util-concurrent-2.2.zip?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fbackport-jsr166%2Ffiles%2Fbackport-jsr166%2F2.2%2F&amp;ts=1378515970&amp;use_mirror=heanet" 
            dest="${backport.zip.file}" 
            verbose="false"/>
        <get src="http://downloads.sourceforge.net/project/cglib/cglib2/cglib%202.1_03/cglib-nodep-2.1_3.jar?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fcglib%2Ffiles%2Fcglib2%2Fcglib%25202.1_03%2F&amp;ts=1378516297&amp;use_mirror=hivelocity" 
            dest="${cglib.jar.file}" 
            verbose="false"/>
        <get src="http://repository.codehaus.org/org/codehaus/jackson/jackson-core-asl/1.0.0/jackson-core-asl-1.0.0.jar" 
            dest="${jackson.jar.file}" 
            verbose="false"/>
         -->
    </target>

	<!--
        xalan.jar 
    -->
    <target name="xalan-check" description="Checks if the xalan jar have been downloaded.">
        <available file="${xalan.dir}/xalan-${xalan.version}.jar" property="xalan.present"/>
    </target>
   
    <target name="xalan-download" depends="xalan-check" unless="xalan.present">
        <available file="${xalan.zip.file}" type="file" property="xalan.zip.exists"/>
        <antcall target="download-xalan-zip" />
        
        <unzip src="${xalan.zip.file}" dest="${download.dir}/xalan">
            <patternset>
                <include name="**/*"/>
            </patternset>
        </unzip>
        <copy file="${download.dir}/xalan/xalan-j_2_6_0/bin/xalan.jar" toFile="${xalan.dir}/xalan-${xalan.version}.jar"/>
    </target>
    
    <target name="download-xalan-zip" unless="xalan.zip.exists">
        <mkdir dir="${download.dir}"/>
        <get src="http://archive.apache.org/dist/xml/xalan-j/xalan-j_2_6_0-bin-2jars.zip" 
            dest="${xalan.zip.file}" 
            verbose="false"/>
    </target>
    
	<!--
        ExcludeDoclet.java 
    -->
    <target name="doclet-check" description="Checks if the excludedoclet.java has been downloaded.">
        <available file="${modules.core.dir}/src/ExcludeDoclet.java" property="doclet.present"/>
    </target>
   
    <target name="doclet-download" depends="doclet-check" unless="doclet.present">
        <available file="${doclet.zip.file}" type="file" property="doclet.zip.exists"/>
        <antcall target="download-doclet-java" />
        
    </target>
    
    <target name="download-doclet-java" unless="doclet.zip.exists">
        <get src="https://github.com/couchbase/couchbase-lite-java-core/blob/master/extra/doclet/ExcludeDoclet.java" 
            dest="${modules.core.dir}/src/ExcludeDoclet.java" 
            verbose="false"/>
    </target>
    
	<!--
        mx4j-jmx.jar 
    -->
    <target name="mx4j-check" description="Checks if the mx4j jar has been downloaded.">
        <available file="${lib.dir}/mx4j-jmx.jar" property="mx4j.present"/>
    </target>
   
    <target name="mx4j-download" depends="mx4j-check" unless="mx4j.present">
        <available file="${mx4j.zip.file}" type="file" property="mx4j.zip.exists"/>
        <antcall target="download-mx4j-java" />
        
    </target>
    
    <target name="download-mx4j-java" unless="mx4j.zip.exists">
		<mkdir dir="${lib.dir}"/>
		<get src="http://repo1.maven.org/maven2/mx4j/mx4j-jmx/1.1.1/mx4j-jmx-1.1.1.jar" 
            dest="${lib.dir}/mx4j-jmx.jar"
            verbose="false"/>
    </target>
    
	<!--
        catalina-7xx.jar
    -->
    <target name="cat7-check" description="Checks if the catalina-7xx jar has been downloaded.">
        <available file="${catalina7.dir}/tomcat-catalina-${catalina7.version}.jar" property="cat7.present"/>
    </target>
   
    <target name="cat7-download" depends="cat7-check" unless="cat7.present">
        <antcall target="download-cat7-java" />
        
    </target>
    
    <target name="download-cat7-java" unless="cat7.zip.exists">
		<mkdir dir="${catalina7.dir}"/>
        <get src="http://repo1.maven.org/maven2/org/apache/tomcat/tomcat-catalina/${catalina7.version}/tomcat-catalina-${catalina7.version}.jar"
            dest="${catalina7.dir}/tomcat-catalina-${catalina7.version}.jar"
            verbose="false"/>
    </target>
    
	<!--
        catalina-4.jar
    -->
    <target name="cat4-check" description="Checks if the catalina-4 jar have been downloaded.">
        <available file="${catalina4.dir}/catalina-${catalina4.version}.jar" property="cat4.present"/>
    </target>
   
    <target name="cat4-download" depends="cat4-check" unless="cat4.present">
        <available file="${catalina4.zip.file}" type="file" property="cat4.zip.exists"/>
        <antcall target="download-cat4-zip" />
        
        <unzip src="${catalina4.zip.file}" dest="${download.dir}/catalina4">
            <patternset>
                <include name="**/*"/>
            </patternset>
        </unzip>
		<mkdir dir="${catalina4.dir}"/>
        <copy file="${download.dir}/catalina4/jakarta-tomcat-${catalina4.version}/server/lib/catalina.jar" toFile="${catalina4.dir}/catalina-${catalina4.version}.jar"/>
    </target>
    
    <target name="download-cat4-zip" unless="cat4.zip.exists">
        <mkdir dir="${download.dir}"/>
        <get src="http://archive.apache.org/dist/tomcat/tomcat-4/archive/v${catalina4.version}/bin/jakarta-tomcat-${catalina4.version}.zip"
            dest="${catalina4.zip.file}"
            verbose="false"/>
    </target>
    
	<!--
        catalina.jar 
    -->
    <target name="cat-check" description="Checks if the catalina jar has been downloaded.">
        <available file="${catalina.dir}/catalina-${catalina.version}.jar" property="cat.present"/>
    </target>
   
    <target name="cat-download" depends="cat-check" unless="cat.present">
        <antcall target="download-cat-java" />
        
    </target>
    
    <target name="download-cat-java" unless="cat.zip.exists">
		<mkdir dir="${catalina.dir}"/>
        <get src="http://repo1.maven.org/maven2/org/apache/tomcat/catalina/${catalina.version}/catalina-${catalina.version}.jar"
            dest="${catalina.dir}/catalina-${catalina.version}.jar"
            verbose="false"/>
    </target>
    
	<!--
        axis.jar 
    <target name="axis-check" description="Checks if the axis jar have been downloaded.">
        <available file="${qa.lib.dir}/axis.jar" property="axis.present"/>
    </target>
   
    <target name="axis-download" depends="axis-check" unless="axis.present">
        <available file="${axis.zip.file}" type="file" property="axis.zip.exists"/>
        <antcall target="download-axis-zip" />
        <unzip src="${axis.zip.file}" dest="${download.dir}/axis">
            <patternset>
                <include name="**/*"/>
            </patternset>
        </unzip>
        <copy file="${download.dir}/axis/axis-1_4/lib/axis.jar" toFile="${qa.lib.dir}/axis.jar"/>
        <copy file="${download.dir}/axis/axis-1_4/lib/jaxrpc.jar" toFile="${qa.lib.dir}/jaxrpc.jar"/>
        <copy file="${download.dir}/axis/axis-1_4/lib/saaj.jar" toFile="${qa.lib.dir}/saaj.jar"/>
        <copy file="${download.dir}/axis/axis-1_4/lib/commons-discovery-0.2.jar" toFile="${qa.lib.dir}/commons-discovery-0.2.jar"/>
        <copy file="${download.dir}/axis/axis-1_4/lib/wsdl4j-1.5.1.jar" toFile="${qa.lib.dir}/wsdl4j-1.5.1.jar"/>
    </target>
    
    <target name="download-axis-zip" unless="axis.zip.exists">
        <mkdir dir="${download.dir}"/>
        <get src="http://archive.apache.org/dist/axis/axis/java/1.4/axis-bin-1_4.zip" 
            dest="${axis.zip.file}" 
            verbose="false"/>
    </target>
     -->
    

	<!--
        testng.jar 
    <target name="testng-check" description="Checks if the testng jar has been downloaded.">
        <available file="${qa.lib.dir}/testng-5.8-jdk15.jar" property="testng.present"/>
    </target>
   
    <target name="testng-download" depends="testng-check" unless="testng.present">
        <available file="${testng.zip.file}" type="file" property="testng.zip.exists"/>
        <antcall target="download-testng-java" />
        
    </target>
    
    <target name="download-testng-java" unless="testng.zip.exists">
        <get src="http://mirrors.ibiblio.org/pub/mirrors/maven2/org/testng/testng/5.8/testng-5.8-jdk15.jar" 
            dest="${qa.lib.dir}/testng-5.8-jdk15.jar" 
            verbose="false"/>
    </target>
     -->
    
</project>
