<?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="sdk_ide_install" default="install" basedir=".">

    <property name="FLEX_HOME" location="${basedir}"/>
    
	<!-- this script supports the usingDownloadCache property and
     downloadCacheFolder property to cache downloads in the
     folder specified by downloadCacheFolder.  This can make
     a huge difference in future runs although there is some
     risk around caching bad downloads and/or needing to
     clean up the cache -->
    
    <!-- Required for OSX 10.6 / Snow Leopard Performance. -->
    <!-- Java 7 on Mac requires OSX 10.7.3 or higher and is 64-bit only -->
    <!-- local.d32 is set/used in build.properties so this needs to be done first. -->
    <condition property="local.d32" value="-d32">
        <and>
            <os family="windows"/>
            <equals arg1="${sun.arch.data.model}" arg2="64"/>
            <equals arg1="${os.arch}" arg2="x86_64"/>
            <equals arg1="${ant.java.version}" arg2="1.6"/>
        </and>
    </condition>

    <property file="${FLEX_HOME}/env.properties"/>
    <property environment="env"/>
    <property file="${FLEX_HOME}/local.properties"/>
    <property file="${FLEX_HOME}/build.properties"/>
    <property name="bundle" value="en_US" />
	
	<property name="flex.properties.url" value="http://flex.apache.org/installer/properties/sdk/${bundle}.properties" />
	<get src="${flex.properties.url}" dest="${basedir}/${bundle}.properties" ignoreerrors="true" />
    <property file="${basedir}/${bundle}.properties"/>
	
    <property file="${FLEX_HOME}/installer.properties/${bundle}.properties"/>
    <property file="${FLEX_HOME}/installer.properties/en_US.properties"/>
    <property name="download.dir" value="${FLEX_HOME}/in"/>
    
    <property name="swfobject.url.server" value="https://github.com" />
    <property name="swfobject.url.folder" value="swfobject/swfobject/archive" />
    <property name="swfobject.url.file" value="2.2.zip" />
    <property name="swfobject.url.md5" value="4723bc29f2a93e9ad9fbeeac6fe63b9e" />

    <property name="osmf.url.server" value="http://downloads.sourceforge.net" />
    <property name="osmf.url.folder" value="project/osmf.adobe/OSMF%202.0%20Release%20%28final%20source%2C%20ASDocs%2C%20pdf%20guides%20and%20release%20notes%29" />
    <property name="osmf.url.file" value="OSMF.swc" />
    <property name="osmf.url.md5" value="6385228692ab982630e47422403f6890" />

    <property name="afe.url.server" value="https://sourceforge.net" />
    <property name="afe.url.folder" value="adobe/flexsdk/code/HEAD/tree/trunk/lib" />
    <property name="afe.url.file" value="afe.jar?format=raw" />
    <property name="afe.url.cachefile" value="afe.jar" />
    <property name="afe.url.md5" value="d1469e163c4fd4c1ef8be82dd6d0f1ee" />

    <property name="agl.url.server" value="https://sourceforge.net" />
    <property name="agl.url.folder" value="adobe/flexsdk/code/HEAD/tree/trunk/lib" />
    <property name="agl.url.file" value="aglj40.jar?format=raw" />
    <property name="agl.url.cachefile" value="aglj40.jar" />
    <property name="agl.url.md5" value="b9b6b825787489796d9b6bf607a64824" />

    <property name="fontkit.url.server" value="https://sourceforge.net" />
    <property name="fontkit.url.folder" value="adobe/flexsdk/code/HEAD/tree/trunk/lib" />
    <property name="fontkit.url.file" value="flex-fontkit.jar?format=raw" />
    <property name="fontkit.url.cachefile" value="flex-fontkit.jar" />
    <property name="fontkit.url.md5" value="2abb9f580fa40ad6ef80864f94b6e938" />

    <property name="rideau.url.server" value="https://sourceforge.net" />
    <property name="rideau.url.folder" value="adobe/flexsdk/code/HEAD/tree/trunk/lib" />
    <property name="rideau.url.file" value="rideau.jar?format=raw" />
    <property name="rideau.url.cachefile" value="rideau.jar" />
    <property name="rideau.url.md5" value="3b3329c1b3de665dc116121b772c5369" />

    <property name="blazeds.url.server" value="https://sourceforge.net" />
    <property name="blazeds.url.folder" value="adobe/flexsdk/code/HEAD/tree/trunk/lib" />
    <property name="blazeds.url.file" value="flex-messaging-common.jar?format=raw" />
    <property name="blazeds.url.cachefile" value="flex-messaging-common.jar" />
    <property name="blazeds.url.md5" value="f64cdca3ddfe3068b70197ddb914bb5d" />

    <condition property="platform" value="mac">
        <os family="mac" />
    </condition>
    <condition property="platform" value="windows">
        <os family="windows" />
    </condition>
    <condition property="platform" value="linux">
        <os family="unix" />
    </condition>
    <condition property="isMac" value="mac">
        <os family="mac" />
    </condition>
    <condition property="isWindows" value="windows">
        <os family="windows" />
    </condition>
    <condition property="isLinux" value="linux">
        <os family="unix" />
    </condition>
    
    <condition property="AIRDownloadEcho" value="${INFO_DOWNLOADING_AIR_RUNTIME_KIT_WINDOWS}">
        <os family="windows" />
    </condition>
    <property name="AIRDownloadEcho" value="${INFO_DOWNLOADING_AIR_RUNTIME_KIT_MAC}" />
    
    <condition property="air.donot.ask" value="true">
        <isset property="installer" />
    </condition>
    <condition property="flash.donot.ask" value="true">
        <isset property="installer" />
    </condition>
    <condition property="swfobject.donot.ask" value="true">
        <isset property="installer" />
    </condition>
    <condition property="osmf.donot.ask" value="true">
        <isset property="installer" />
    </condition>
    <condition property="fontswf.donot.ask" value="true">
        <isset property="installer" />
    </condition>
    <condition property="blazeds.donot.ask" value="true">
        <isset property="installer" />
    </condition>
    
    <condition property="java.home" value="${env.JAVA_HOME}">
        <and>
            <available file="${env.JAVA_HOME}" type="dir" />
            <not>
                <equals arg1="" arg2="${env.JAVA_HOME}" />
            </not>
        </and>
    </condition>

    <target name="get-md5-data" depends="get-air-md5-data,get-flash-md5-data">
    </target>
    <target name="get-air-md5-data" if="air-has-md5">
        <property name="air.sdk.url.md5" refid="${air.sdk.url.md5.ref}" />
    </target>
    <target name="get-flash-md5-data" if="flash-has-md5">
        <property name="flash.sdk.url.md5" refid="${flash.sdk.url.md5.ref}" />
    </target>

    <target name="get-data">
		<tstamp />
		<property name="ts" value="${DSTAMP}${TSTAMP}" />
		<property name="xml.properties" value="http://flex.apache.org/installer/sdk-installer-config-4.0.xml?ts=${ts}" />
        <get src="${xml.properties}" dest="${basedir}/sdk-installer-config-4.0.xml" />
        <xmlproperty file="${basedir}/sdk-installer-config-4.0.xml" semanticAttributes="true" collapseAttributes="true"/>
        <xmlproperty file="${basedir}/flex-sdk-description.xml" semanticAttributes="true" collapseAttributes="true"/>
        <condition property="air.sdk.version" value="${config.airsdk.linux.versions.default}">
            <equals arg1="${platform}" arg2="linux" />
        </condition>
        <condition property="air.sdk.version" value="${config.airsdk.windows.versions.default}">
            <equals arg1="${platform}" arg2="windows" />
        </condition>
        <condition property="air.sdk.version" value="${config.airsdk.mac.versions.default}">
            <equals arg1="${platform}" arg2="mac" />
        </condition>
        <property name="flash.sdk.version" value="${config.flashsdk.versions.default}"/>
        <condition property="flash.version.changed" value="true">
            <not>
                <equals arg1="${playerglobal.version}" arg2="${flash.sdk.version}" />
            </not>
        </condition>
        <condition property="air.version.changed" value="true">
            <not>
                <equals arg1="${air.version}" arg2="${air.sdk.version}" />
            </not>
        </condition>
        <condition property="air.sdk.version.ref" value="${air.sdk.versionID}" >
            <isset property="air.sdk.versionID" />
        </condition>
        <property name="air.sdk.version.ref" value="${air.sdk.version}" />
        <condition property="flash.sdk.version.ref" value="${flash.sdk.versionID}" >
            <isset property="flash.sdk.versionID" />
        </condition>
        <property name="flash.sdk.version.ref" value="${flash.sdk.version}" />
        
        <property name="air.sdk.url.server.ref" value="air.sdk.server.${platform}.${air.sdk.version.ref}" />
        <property name="air.sdk.url.server" refid="${air.sdk.url.server.ref}" />
        <property name="air.sdk.url.folder.ref" value="air.sdk.folder.${platform}.${air.sdk.version.ref}" />
        <property name="air.sdk.url.folder" refid="${air.sdk.url.folder.ref}" />
        <property name="air.sdk.url.file.ref" value="air.sdk.file.${platform}.${air.sdk.version.ref}" />
        <property name="air.sdk.url.file" refid="${air.sdk.url.file.ref}" />
        <property name="air.sdk.url.md5.ref" value="air.sdk.md5.${platform}.${air.sdk.version.ref}" />
		<condition property="air-has-md5">
			<isreference refid="${air.sdk.url.md5.ref}" />
		</condition>
        <property name="flash.sdk.url.server.ref" value="flash.sdk.server.${flash.sdk.version.ref}" />
        <property name="flash.sdk.url.server" refid="${flash.sdk.url.server.ref}" />
        <property name="flash.sdk.url.folder.ref" value="flash.sdk.folder.${flash.sdk.version.ref}" />
        <property name="flash.sdk.url.folder" refid="${flash.sdk.url.folder.ref}" />
        <property name="flash.sdk.url.file.ref" value="flash.sdk.file.${flash.sdk.version.ref}" />
        <property name="flash.sdk.url.file" refid="${flash.sdk.url.file.ref}" />
        <property name="flash.sdk.url.md5.ref" value="flash.sdk.md5.${flash.sdk.version.ref}" />
		<condition property="flash-has-md5">
			<isreference refid="${flash.sdk.url.md5.ref}" />
		</condition>
        <property name="flash.sdk.swfversion.ref" value="flash.sdk.swfversion.${flash.sdk.version.ref}" />
        <property name="flash.sdk.swfversion" refid="${flash.sdk.swfversion.ref}" />
        <property name="flash.sdk.default.swfversion.ref" value="flash.sdk.swfversion.${playerglobal.version}" />
        <property name="flash.sdk.default.swfversion" refid="${flash.sdk.default.swfversion.ref}" />
        <condition property="flash.swfversion.changed" value="true">
            <not>
                <equals arg1="${flash.sdk.swfversion}" arg2="${flash.sdk.default.swfversion}" />
            </not>
        </condition>
    </target>
    
    <target name="install" depends="get-data,get-md5-data,check-binary,ask-licenses,get-third-party-files,fixup-config-files" description="Converts binary package to IDE compatible folder">
        <delete dir="${download.dir}" />
        <echo>${install.complete.echo}</echo>
    </target>
    
    <target name="check-binary" description="Make sure this is a binary package">
        <fail message="${basedir} is not an Flex binary package">
            <condition>
                <not>
                    <available file="${basedir}/frameworks/libs/framework.swc" />
                </not>
            </condition>
        </fail>
        <fail message="${basedir} is not an Flex binary package and is probably a git repo">
            <condition>
                <available file="$[basedir}/.gitignore" />
            </condition>
        </fail>
    </target>
    
    <target name="ask-licenses" depends="ask-air,ask-flash,ask-swfobject,ask-adobe-osmf,ask-adobe-fontswf,ask-adobe-blazeds" description="Ask about the various licenses">
	</target>
    
    <target name="ask-air" unless="air.donot.ask"
        description="Prompt the user before downloading AIR">
        
        <input
        message="${air.prompt.text}"
        validargs="${yes.no.prompts}"
        defaultvalue="${no}"
        addproperty="input.air.download"/>
        <condition property="do.air.install">
            <equals arg1="${yes}" arg2="${input.air.download}"/>
        </condition>
        <!-- Only ask once per ant run.  -->
        <property name="air.donot.ask" value="set"/>
    </target>

    <target name="ask-flash" unless="flash.donot.ask"
        description="Prompt the user before downloading playerglobal.swc">
        
        <input
        message="${flash.prompt.text}"
        validargs="${yes.no.prompts}"
        defaultvalue="${no}"
        addproperty="input.flash.download"/>
        <condition property="do.flash.install">
            <equals arg1="${yes}" arg2="${input.flash.download}"/>
        </condition>
        <!-- Only ask once per ant run.  -->
        <property name="flash.donot.ask" value="set"/>
    </target>

    <target name="ask-swfobject" unless="swfobject.donot.ask"
        description="Prompt the user before downloading SWFObject">
        
        <input
        message="${swfobject.prompt.text}"
        validargs="${yes.no.prompts}"
        defaultvalue="${no}"
        addproperty="input.swfobject.download"/>
        <condition property="do.swfobject.install">
            <equals arg1="${yes}" arg2="${input.swfobject.download}"/>
        </condition>
        <!-- Only ask once per ant run.  -->
        <property name="swfobject.donot.ask" value="set"/>
    </target>

    <target name="ask-adobe-osmf" unless="osmf.donot.ask"
        description="Prompt the user before downloading OSMF">
        
        <input
        message="${osmf.prompt.text}"
        validargs="${yes.no.prompts}"
        defaultvalue="${no}"
        addproperty="input.osmf.download"/>
        <condition property="do.osmf.install">
            <equals arg1="${yes}" arg2="${input.osmf.download}"/>
        </condition>
        <!-- Only ask once per ant run.  -->
        <property name="osmf.donot.ask" value="set"/>
    </target>

    <target name="ask-adobe-fontswf" unless="fontswf.donot.ask"
        description="Prompt the user before downloading FontSWF">
        
        <input
        message="${fontswf.prompt.text}"
        validargs="${yes.no.prompts}"
        defaultvalue="${no}"
        addproperty="input.fontswf.download"/>
        <condition property="do.fontswf.install">
            <equals arg1="${yes}" arg2="${input.fontswf.download}"/>
        </condition>
        <!-- Only ask once per ant run.  -->
        <property name="fontswf.donot.ask" value="set"/>
    </target>

    <target name="ask-adobe-blazeds" unless="blazeds.donot.ask"
        description="Prompt the user before downloading BlazeDS">
        
        <input
        message="${blazeds.prompt.text}"
        validargs="${yes.no.prompts}"
        defaultvalue="${no}"
        addproperty="input.blazeds.download"/>
        <condition property="do.blazeds.install">
            <equals arg1="${yes}" arg2="${input.blazeds.download}"/>
        </condition>
        <!-- Only ask once per ant run.  -->
        <property name="blazeds.donot.ask" value="set"/>
    </target>

    <target name="get-third-party-files" depends="air-download,flash-download,swfobject-download,osmf-download,fontswf-download,blazeds-download" />
    
    <target name="air-check" description="Checks if AIR SDK has been downloaded.">
        <available file="${FLEX_HOME}/lib/adt.jar" property="skip.air.install"/>
		<condition property="skip.air.install" value="true">
			<not>
				<isset property="do.air.install" />
			</not>
		</condition>
    </target>
    
    <target name="air-download" depends="air-check" unless="skip.air.install"
        description="Downloads AIR SDK and copies to correct locations">
        
        <mkdir dir="${download.dir}"/>
        <antcall target="air-get" />

        <antcall target="air-setup-win" />
        <antcall target="air-setup-mac" />
        
    </target>

    <target name="air-get-check">
        <available file="${download.dir}/${air.sdk.url.file}" property="air.downloaded" />
    </target>
        
    <target name="air-get" depends="air-get-check" unless="air.downloaded">
        <echo>${AIRDownloadEcho} ${air.sdk.url.server}/${air.sdk.url.folder}/${air.sdk.url.file}</echo>
        <antcall target="download_air" >
            <param name="srcDomain" value="${air.sdk.url.server}" />
            <param name="srcFolder" value="${air.sdk.url.folder}" />
            <param name="srcFile" value="${air.sdk.url.file}" />
            <param name="dest" value="${download.dir}/${air.sdk.url.file}" />
            <param name="failmessage" value="AIR SDK download failed" />
        </antcall>
        <antcall target="download_air_with_md5" >
            <param name="srcDomain" value="${air.sdk.url.server}" />
            <param name="srcFolder" value="${air.sdk.url.folder}" />
            <param name="srcFile" value="${air.sdk.url.file}" />
            <param name="dest" value="${download.dir}/${air.sdk.url.file}" />
            <param name="failmessage" value="AIR SDK download failed" />
            <param name="md5" value="${air.sdk.url.md5}" />
        </antcall>
    </target>
    
    <target name="air-setup-win" if="isWindows">
        <unzip src="${download.dir}/${air.sdk.url.file}" dest="${download.dir}/airsdk" />
        <echo>${INFO_FINISHED_UNZIPPING} ${download.dir}/${air.sdk.url.file}</echo>
        <copy todir="${FLEX_HOME}" overwrite="true">
            <fileset dir="${download.dir}/airsdk">
                <include name="AIR SDK license.pdf" />
                <include name="AIR SDK Readme.txt" />
                <include name="airsdk.xml" />
                <include name="bin/adl.exe" />
                <include name="bin/adt.bat" />
                <include name="frameworks/libs/air/**" />
                <include name="frameworks/projects/air/**" />
                <include name="include/**" />
                <include name="install/android/**" />
                <include name="lib/adt.jar" />
                <include name="lib/android/**" />
                <include name="lib/aot/**" />
                <include name="lib/nai/**" />
                <include name="lib/win/**" />
                <include name="runtimes/**" />
                <include name="samples/badge/**" />
                <include name="samples/descriptor-sample.xml" />
                <include name="samples/icons/**" />
                <include name="templates/air/**" />
                <include name="templates/extensions/**" />
                <include name="templates/sdk/**" />
            </fileset>
        </copy>
    </target>
    
    <target name="air-setup-mac" unless="isWindows">
        <!--The tbz2 contains symlinks which Ant does not preserve
        <untar compression="bzip2" src="${download.dir}/${air.sdk.url.file}" dest="${download.dir}/airsdk" />-->
        <mkdir dir="${download.dir}/airsdk" />
        <move file="${download.dir}/${air.sdk.url.file}" todir="${download.dir}/airsdk" />
        <exec executable="bunzip2" dir="${download.dir}/airsdk">
            <arg value="${air.sdk.url.file}" />
        </exec>
        <echo file="${basedir}/airtar.properties">air.tar.name=${air.sdk.url.file}</echo>
        <replace file="${basedir}/airtar.properties" token="tbz2" value="tar" />
        <property file="${basedir}/airtar.properties" />
        <exec executable="tar" dir="${download.dir}/airsdk">
            <arg value="-xvf" />
            <arg value="${air.tar.name}" />
        </exec>
        <echo>${INFO_FINISHED_UNTARING} ${download.dir}/airsdk/${air.tar.name}</echo>
        <delete file="${basedir}/airtar.properties" />
        <antcall target="mac-copy-file">
            <param name="srcdir" value="." />
            <param name="filename" value="AIR SDK license.pdf"/>
            <param name="destdir" value="${FLEX_HOME}" />
        </antcall>
        <antcall target="mac-copy-file">
            <param name="srcdir" value="." />
            <param name="filename" value="AIR SDK Readme.txt"/>
            <param name="destdir" value="${FLEX_HOME}" />
        </antcall>
        <antcall target="mac-copy-file">
            <param name="srcdir" value="." />
            <param name="filename" value="airsdk.xml"/>
            <param name="destdir" value="${FLEX_HOME}" />
        </antcall>
        <antcall target="mac-copy-file">
            <param name="srcdir" value="bin" />
            <param name="filename" value="adl"/>
            <param name="destdir" value="${FLEX_HOME}/bin" />
        </antcall>
        <antcall target="mac-copy-file">
            <param name="srcdir" value="bin" />
            <param name="filename" value="adt"/>
            <param name="destdir" value="${FLEX_HOME}/bin" />
        </antcall>
        <antcall target="mac-copy-file">
            <param name="srcdir" value="lib" />
            <param name="filename" value="adt.jar"/>
            <param name="destdir" value="${FLEX_HOME}/lib" />
        </antcall>
        <antcall target="mac-copy-file">
            <param name="srcdir" value="samples" />
            <param name="filename" value="descriptor-sample.xml"/>
            <param name="destdir" value="${FLEX_HOME}/samples" />
        </antcall>
        <antcall target="mac-copy-dir">
            <param name="srcdir" value="frameworks/libs/air" />
            <param name="destdir" value="${FLEX_HOME}/frameworks/libs" />
        </antcall>
        <antcall target="mac-copy-dir">
            <param name="srcdir" value="frameworks/projects/air" />
            <param name="destdir" value="${FLEX_HOME}/frameworks/projects" />
        </antcall>
        <antcall target="mac-copy-dir">
            <param name="srcdir" value="include" />
            <param name="destdir" value="${FLEX_HOME}" />
        </antcall>
        <antcall target="mac-copy-dir-if-exists">
            <param name="srcdir" value="install/android" />
            <param name="destdir" value="${FLEX_HOME}/install" />
        </antcall>
        <antcall target="mac-copy-dir">
            <param name="srcdir" value="lib/android" />
            <param name="destdir" value="${FLEX_HOME}/lib" />
        </antcall>
        <antcall target="mac-copy-dir">
            <param name="srcdir" value="lib/aot" />
            <param name="destdir" value="${FLEX_HOME}/lib" />
        </antcall>
        <antcall target="mac-copy-dir">
            <param name="srcdir" value="lib/nai" />
            <param name="destdir" value="${FLEX_HOME}/lib" />
        </antcall>
        <antcall target="mac-copy-dir">
            <param name="srcdir" value="runtimes" />
            <param name="destdir" value="${FLEX_HOME}" />
        </antcall>
        <antcall target="mac-copy-dir">
            <param name="srcdir" value="samples/badge" />
            <param name="destdir" value="${FLEX_HOME}/samples" />
        </antcall>
        <antcall target="mac-copy-dir">
            <param name="srcdir" value="samples/icons" />
            <param name="destdir" value="${FLEX_HOME}/samples" />
        </antcall>
        <antcall target="mac-copy-dir">
            <param name="srcdir" value="templates/air" />
            <param name="destdir" value="${FLEX_HOME}/templates" />
        </antcall>
        <antcall target="mac-copy-dir">
            <param name="srcdir" value="templates/extensions" />
            <param name="destdir" value="${FLEX_HOME}/templates" />
        </antcall>
        <antcall target="mac-copy-dir">
            <param name="srcdir" value="templates/sdk" />
            <param name="destdir" value="${FLEX_HOME}/templates" />
        </antcall>
    </target>
    
    <target name="mac-copy-file" description="copies a file">
        <mkdir dir="${destdir}" />
        <exec executable="cp" dir="${FLEX_HOME}">
            <arg value="-p" />
            <arg value="${download.dir}/airsdk/${srcdir}/${filename}"/>
            <arg value="${destdir}" />
        </exec>
    </target>
    
    <target name="mac-copy-dir" description="copies a directory using exec and rsync so that symbolic links are preserved">
        <echo file="${basedir}/maccopy.properties">mac.copy.echo=${mac.copy.echo.pattern}</echo>
        <property file="${basedir}/maccopy.properties" />
        <delete file="${basedir}/maccopy.properties" />
        <echo>${mac.copy.echo}</echo>
        <exec executable="rsync" dir="${FLEX_HOME}">
            <arg value="--archive" />
            <arg value="--ignore-existing" />
            <arg value="--force" />
            <arg value="${download.dir}/airsdk/${srcdir}"/>
            <arg value="${destdir}" />
        </exec>
    </target>

    <target name="mac-copy-dir-if-exists" depends="mac-check-exists" if="${srcdir}.exists" description="copies a directory using exec and rsync so that symbolic links are preserved">
        <echo file="${basedir}/maccopy.properties">mac.copy.echo=${mac.copy.echo.pattern}</echo>
        <property file="${basedir}/maccopy.properties" />
        <echo>${mac.copy.echo}</echo>
        <exec executable="rsync" dir="${FLEX_HOME}">
            <arg value="--archive" />
            <arg value="--ignore-existing" />
            <arg value="--force" />
            <arg value="${download.dir}/airsdk/${srcdir}"/>
            <arg value="${destdir}" />
        </exec>
    </target>
    
    <target name="mac-check-exists">
        <available file="${download.dir}/airsdk/${srcdir}" type="dir" property="${srcdir}.exists" />
    </target>

    <!-- Because this requires a network connection it downloads Flash SDK only if it doesn't already exist. -->
    <target name="flash-check" description="Checks if Flash SDK has been downloaded.">
        <available file="${FLEX_HOME}/frameworks/libs/player/${flash.sdk.version}/playerglobal.swc" property="skip.flash.install"/>
		<condition property="skip.flash.install" value="true">
			<not>
				<isset property="do.flash.install" />
			</not>
		</condition>
    </target>
    
    <target name="flash-download" depends="flash-check" unless="skip.flash.install"
        description="Downloads playerglobal.swc and copies to correct locations">
        
        <mkdir dir="${download.dir}"/>
        <mkdir dir="${FLEX_HOME}/frameworks/libs/player/${flash.sdk.version}"/>
        <echo>${INFO_INSTALLING_PLAYERGLOBAL_SWC} ${flash.sdk.url.server}/${flash.sdk.url.folder}/${flash.sdk.url.file}</echo>
        <antcall target="download_flash" >
            <param name="srcDomain" value="${flash.sdk.url.server}" />
            <param name="srcFolder" value="${flash.sdk.url.folder}" />
            <param name="srcFile" value="${flash.sdk.url.file}" />
            <param name="dest" value="${FLEX_HOME}/frameworks/libs/player/${flash.sdk.version}/playerglobal.swc" />
			<param name="message" value="${INFO_INSTALLING_PLAYERGLOBAL_SWC} ${flash.sdk.url.server}/${flash.sdk.url.folder}/${flash.sdk.url.file}" />
			<param name="failmessage" value="Flash SDK download failed" />
        </antcall>
        <antcall target="download_flash_with_md5" >
            <param name="srcDomain" value="${flash.sdk.url.server}" />
            <param name="srcFolder" value="${flash.sdk.url.folder}" />
            <param name="srcFile" value="${flash.sdk.url.file}" />
            <param name="dest" value="${FLEX_HOME}/frameworks/libs/player/${flash.sdk.version}/playerglobal.swc" />
			<param name="message" value="${INFO_INSTALLING_PLAYERGLOBAL_SWC} ${flash.sdk.url.server}/${flash.sdk.url.folder}/${flash.sdk.url.file}" />
			<param name="failmessage" value="Flash SDK download failed" />
			<param name="md5" value="${flash.sdk.url.md5}" />
        </antcall>
    </target>
    
    <!-- swfobject.js (Version 2.2) -->
    <!-- Because this requires a network connection it downloads SWFObject only if it doesn't already exist. -->
    <target name="swfobject-check" description="Checks if SWFObject has been downloaded.">
        <available file="${basedir}/../templates/swfobject/swfobject.js" property="skip.swfobject.install"/>
		<condition property="skip.swfobject.install" value="true">
			<not>
				<isset property="do.swfobject.install" />
			</not>
		</condition>
    </target>
    
    <target name="swfobject-download" depends="swfobject-check" unless="skip.swfobject.install"
        description="Copies SWFObject from code.google.com">
        
        <echo file="${basedir}/swfobject.properties">swfobject.echo=${INFO_DOWNLOADING_FILE_FROM}</echo>
        <replace file="${basedir}/swfobject.properties" token="{0}" value="${swfobject.url.file}" />
        <replace file="${basedir}/swfobject.properties" token="{1}" value="${swfobject.url.server}/${swfobject.url.folder}" />
        <property file="${basedir}/swfobject.properties" />
        <delete file="${basedir}/swfobject.properties" />
        <echo>${swfobject.echo}</echo>
        
        <mkdir dir="${download.dir}"/>
        <antcall target="download_using_get" >
            <param name="srcDomain" value="${swfobject.url.server}" />
            <param name="srcFolder" value="${swfobject.url.folder}" />
            <param name="srcFile" value="${swfobject.url.file}" />
            <param name="dest" value="${download.dir}/swfobject_2_2.zip" />
			<param name="failmessage" value="SWFObject download failed" />
			<param name="md5" value="${swfobject.url.md5}" />
        </antcall>

        <echo>${INFO_DOWNLOADED}</echo>
        <mkdir dir="${download.dir}/swfobject"/>
        <unzip src="${download.dir}/swfobject_2_2.zip" dest="${download.dir}/swfobject">
            <patternset>
                <include name="swfobject-2.2/swfobject/expressInstall.swf"/>
                <include name="swfobject-2.2/swfobject/swfobject.js"/>
            </patternset>
        </unzip>
        <mkdir dir="${FLEX_HOME}/templates/swfobject"/>
		<copy file="${download.dir}/swfobject/swfobject-2.2/swfobject/expressInstall.swf"
			tofile="${FLEX_HOME}/templates/swfobject/expressInstall.swf" />
		<copy file="${download.dir}/swfobject/swfobject-2.2/swfobject/swfobject.js"
			tofile="${FLEX_HOME}/templates/swfobject/swfobject.js" />
        <mkdir dir="${FLEX_HOME}/frameworks/javascript/fabridge/samples/fabridge/swfobject" />
        <copy file="${FLEX_HOME}/templates/swfobject/swfobject.js" tofile="${FLEX_HOME}/frameworks/javascript/fabridge/samples/fabridge/swfobject/swfobject.js" />
    </target>
    
    <!-- osmf (Version 2.0) -->
    <!-- Because this requires a network connection it downloads OSMF only if it doesn't already exist. -->
    <target name="osmf-check" description="Checks if OSMF has been downloaded.">
        <available file="${basedir}/frameworks/libs/osmf.swc" property="skip.osmf.install"/>
		<condition property="skip.osmf.install" value="true">
			<not>
				<isset property="do.osmf.install" />
			</not>
		</condition>
    </target>
    
    <target name="osmf-download" depends="osmf-check" unless="skip.osmf.install"
        description="Copies OSMF from Open@Adobe">
        
        <echo file="${basedir}/osmf.properties">osmf.echo=${INFO_DOWNLOADING_FILE_FROM}</echo>
        <replace file="${basedir}/osmf.properties" token="{0}" value="${osmf.url.file}" />
        <replace file="${basedir}/osmf.properties" token="{1}" value="${osmf.url.server}/${osmf.url.folder}" />
        <property file="${basedir}/osmf.properties" />
        <delete file="${basedir}/osmf.properties" />
        <echo>${osmf.echo}</echo>

        <mkdir dir="${basedir}/frameworks/libs/"/>
        <antcall target="download_using_get" >
            <param name="srcDomain" value="${osmf.url.server}" />
            <param name="srcFolder" value="${osmf.url.folder}" />
            <param name="srcFile" value="${osmf.url.file}" />
            <param name="dest" value="${basedir}/frameworks/libs/osmf.swc" />
			<param name="failmessage" value="OSMF download failed" />
			<param name="md5" value="${osmf.url.md5}" />
        </antcall>

        <unzip src="${basedir}/frameworks/libs/osmf.swc" dest="${download.dir}">
            <patternset>
                <include name="library.swf"/>
            </patternset>
        </unzip>
        <copy file="${download.dir}/library.swf" tofile="${FLEX_HOME}/frameworks/rsls/osmf_${flex-sdk-description.version}.${flex-sdk-description.build}.swf" />
    </target>

    <!-- fontswf -->
    <!-- Because this requires a network connection it downloads only if it doesn't already exist. -->
    <target name="fontswf-check" description="Checks if fontswf has been downloaded.">
        <condition property="skip.fontswf.install">
            <and>
                <available file="${basedir}/lib/external/optional/afe.jar" />
                <available file="${basedir}/lib/external/optional/aglj40.jar" />
                <available file="${basedir}/lib/external/optional/flex-fontkit.jar" />
                <available file="${basedir}/lib/external/optional/rideau.jar" />
            </and>
        </condition>
		<condition property="skip.fontswf.install" value="true">
			<not>
				<isset property="do.fontswf.install" />
			</not>
		</condition>
    </target>

    <target name="fontswf-download" depends="fontswf-check" unless="skip.fontswf.install"
        description="Copies OSMF from Open@Adobe">
        
        <echo file="${basedir}/afe.properties">afe.echo=${INFO_DOWNLOADING_FILE_FROM}</echo>
        <replace file="${basedir}/afe.properties" token="{0}" value="${afe.url.file}" />
        <replace file="${basedir}/afe.properties" token="{1}" value="${afe.url.server}/${afe.url.folder}" />
        <property file="${basedir}/afe.properties" />
        <delete file="${basedir}/afe.properties" />
        <echo>${afe.echo}</echo>

        <mkdir dir="${basedir}/lib/external/optional"/>
        <antcall target="download_using_get" >
            <param name="srcDomain" value="${afe.url.server}" />
            <param name="srcFolder" value="${afe.url.folder}" />
            <param name="srcFile" value="${afe.url.file}" />
            <param name="cacheFile" value="${afe.url.cachefile}" />
            <param name="dest" value="${basedir}/lib/external/optional/afe.jar" />
			<param name="failmessage" value="afe.jar download failed" />
			<param name="md5" value="${afe.url.md5}" />
        </antcall>

        <echo file="${basedir}/agl.properties">agl.echo=${INFO_DOWNLOADING_FILE_FROM}</echo>
        <replace file="${basedir}/agl.properties" token="{0}" value="${agl.url.file}" />
        <replace file="${basedir}/agl.properties" token="{1}" value="${agl.url.server}/${agl.url.folder}" />
        <property file="${basedir}/agl.properties" />
        <delete file="${basedir}/agl.properties" />
        <echo>${agl.echo}</echo>
        
        <antcall target="download_using_get" >
            <param name="srcDomain" value="${agl.url.server}" />
            <param name="srcFolder" value="${agl.url.folder}" />
            <param name="srcFile" value="${agl.url.file}" />
            <param name="cacheFile" value="${agl.url.cachefile}" />
            <param name="dest" value="${basedir}/lib/external/optional/aglj40.jar" />
			<param name="failmessage" value="aglj40.jar download failed" />
			<param name="md5" value="${agl.url.md5}" />
        </antcall>

        <echo file="${basedir}/fontkit.properties">fontkit.echo=${INFO_DOWNLOADING_FILE_FROM}</echo>
        <replace file="${basedir}/fontkit.properties" token="{0}" value="${fontkit.url.file}" />
        <replace file="${basedir}/fontkit.properties" token="{1}" value="${fontkit.url.server}/${fontkit.url.folder}" />
        <property file="${basedir}/fontkit.properties" />
        <delete file="${basedir}/fontkit.properties" />
        <echo>${fontkit.echo}</echo>
        
        <antcall target="download_using_get" >
            <param name="srcDomain" value="${fontkit.url.server}" />
            <param name="srcFolder" value="${fontkit.url.folder}" />
            <param name="srcFile" value="${fontkit.url.file}" />
            <param name="cacheFile" value="${fontkit.url.cachefile}" />
            <param name="dest" value="${basedir}/lib/external/optional/flex-fontkit.jar" />
			<param name="failmessage" value="flex-fontkit.jar download failed" />
			<param name="md5" value="${fontkit.url.md5}" />
        </antcall>

        <echo file="${basedir}/rideau.properties">rideau.echo=${INFO_DOWNLOADING_FILE_FROM}</echo>
        <replace file="${basedir}/rideau.properties" token="{0}" value="${rideau.url.file}" />
        <replace file="${basedir}/rideau.properties" token="{1}" value="${rideau.url.server}/${rideau.url.folder}" />
        <property file="${basedir}/rideau.properties" />
        <delete file="${basedir}/rideau.properties" />
        <echo>${rideau.echo}</echo>
        
        <antcall target="download_using_get" >
            <param name="srcDomain" value="${rideau.url.server}" />
            <param name="srcFolder" value="${rideau.url.folder}" />
            <param name="srcFile" value="${rideau.url.file}" />
            <param name="cacheFile" value="${rideau.url.cachefile}" />
            <param name="dest" value="${basedir}/lib/external/optional/rideau.jar" />
			<param name="failmessage" value="rideau.jar download failed" />
			<param name="md5" value="${rideau.url.md5}" />
        </antcall>
        
        <!-- fontkit expects swfutils in the same folder -->
        <copy file="${basedir}/lib/swfutils.jar" tofile="${basedir}/lib/external/optional/swfutils.jar" />
    </target>

    <!-- BlazeDS  -->
    <!-- Because this requires a network connection it downloads BlazeDS only if it doesn't already exist. -->
    <target name="blazeds-check" description="Checks if BlazeDS has been downloaded.">
        <available file="${basedir}/external/optional/flex-messaging-common.jar" property="skip.blazeds.install"/>
		<condition property="skip.blazeds.install" value="true">
			<not>
				<isset property="do.blazeds.install" />
			</not>
		</condition>
    </target>

    <target name="blazeds-download" depends="blazeds-check" unless="skip.blazeds.install"
        description="Copies BlazeDS from Open@Adobe">
        
        <echo file="${basedir}/blaze.properties">blaze.echo=${INFO_DOWNLOADING_FILE_FROM}</echo>
        <replace file="${basedir}/blaze.properties" token="{0}" value="${blazeds.url.file}" />
        <replace file="${basedir}/blaze.properties" token="{1}" value="${blazeds.url.server}/${blazeds.url.folder}" />
        <property file="${basedir}/blaze.properties" />
        <delete file="${basedir}/blaze.properties" />
        <echo>${blaze.echo}</echo>
        
        <mkdir dir="${basedir}/lib/external/optional"/>
        <antcall target="download_using_get" >
            <param name="srcDomain" value="${blazeds.url.server}" />
            <param name="srcFolder" value="${blazeds.url.folder}" />
            <param name="srcFile" value="${blazeds.url.file}" />
            <param name="cacheFile" value="${blazeds.url.cachefile}" />
            <param name="dest" value="${basedir}/lib/external/optional/flex-messaging-common.jar" />
			<param name="failmessage" value="flex-messaging-common.jar download failed" />
			<param name="md5" value="${blazeds.url.md5}" />
        </antcall>
    </target>


    <target name="fixup-config-files" depends="flex-sdk-description-flash,flex-sdk-description-air">
        <echo>${INFO_INSTALLING_CONFIG_FILES}</echo>
        <antcall target="fixup-config-files-version" />
        <antcall target="fixup-config-files-swfversion" />
        <replace file="${FLEX_HOME}/frameworks/flex-config.xml">
            <replacefilter token="{playerglobalHome}"
                value="libs/player"/>
        </replace>
        <replace file="${FLEX_HOME}/frameworks/air-config.xml">
            <replacefilter token="{airHome}/frameworks/libs"
            value="libs"/>
        </replace>
        <replace file="${FLEX_HOME}/frameworks/airmobile-config.xml">
            <replacefilter token="{airHome}/frameworks/libs"
            value="libs"/>
        </replace>
        <copy file="${FLEX_HOME}/frameworks/flex-config.xml" tofile="${FLEX_HOME}/ide/flashbuilder/config/flex-config.xml" overwrite="true" />
        <copy file="${FLEX_HOME}/frameworks/air-config.xml" tofile="${FLEX_HOME}/ide/flashbuilder/config/air-config.xml" overwrite="true" />
        <copy file="${FLEX_HOME}/frameworks/airmobile-config.xml" tofile="${FLEX_HOME}/ide/flashbuilder/config/airmobile-config.xml" overwrite="true" />
    </target>
    
    <target name="fixup-config-files-version" if="flash.version.changed">
        <replace file="${FLEX_HOME}/frameworks/flex-config.xml">
            <replacefilter token="&lt;target-player&gt;${playerglobal.version}&lt;/target-player&gt;"
                            value="&lt;target-player&gt;${flash.sdk.version}&lt;/target-player&gt;"/>
        </replace>
        <replace file="${FLEX_HOME}/frameworks/air-config.xml">
            <replacefilter token="&lt;target-player&gt;${playerglobal.version}&lt;/target-player&gt;"
            value="&lt;target-player&gt;${flash.sdk.version}&lt;/target-player&gt;"/>
        </replace>
        <replace file="${FLEX_HOME}/frameworks/airmobile-config.xml">
            <replacefilter token="&lt;target-player&gt;${playerglobal.version}&lt;/target-player&gt;"
            value="&lt;target-player&gt;${flash.sdk.version}&lt;/target-player&gt;"/>
        </replace>
    </target>
    
    <target name="fixup-config-files-swfversion" if="flash.swfversion.changed">
        <replace file="${FLEX_HOME}/frameworks/flex-config.xml">
            <replacefilter token="&lt;swf-version&gt;${flash.sdk.default.swfversion}&lt;/swf-version&gt;"
                            value="&lt;swf-version&gt;${flash.sdk.swfversion}&lt;/swf-version&gt;"/>
        </replace>
        <replace file="${FLEX_HOME}/frameworks/air-config.xml">
            <replacefilter token="&lt;swf-version&gt;${flash.sdk.default.swfversion}&lt;/swf-version&gt;"
            value="&lt;swf-version&gt;${flash.sdk.swfversion}&lt;/swf-version&gt;"/>
        </replace>
        <replace file="${FLEX_HOME}/frameworks/airmobile-config.xml">
            <replacefilter token="&lt;swf-version&gt;${flash.sdk.default.swfversion}&lt;/swf-version&gt;"
            value="&lt;swf-version&gt;${flash.sdk.swfversion}&lt;/swf-version&gt;"/>
        </replace>
    </target>
    
    <target name="flex-sdk-description-flash" if="flash.version.changed">
        <replace file="${FLEX_HOME}/flex-sdk-description.xml">
            <replacefilter token="FP${playerglobal.version}"
                value="FP${flash.sdk.version}"/>
        </replace>
    </target>
    <target name="flex-sdk-description-air" if="air.version.changed">
        <replace file="${FLEX_HOME}/flex-sdk-description.xml">
            <replacefilter token="AIR${air.version}"
                value="AIR${air.sdk.version}"/>
        </replace>
    </target>
        
    <target name="download_air" unless="air-has-md5">
        <antcall target="download_using_get" />
    </target>
    <target name="download_air_with_md5" if="air-has-md5">
        <antcall target="download_using_get" />
    </target>
    <target name="download_flash" unless="flash-has-md5">
        <antcall target="download_using_get" />
    </target>
    <target name="download_flash_with_md5" if="flash-has-md5">
        <antcall target="download_using_get" />
    </target>

    <!--
     Download a file and optionally verify the checksum.
     If the checksum fails, this script fails.  This
     target uses the cache, if desired.
     
     Params are:
     srcDomain
     srcFolder
     srcFile
     dest
     [md5]
     [srcMD5Domain]
     -->
    <target name="download_using_get" depends="check-cache"
        description="Downloads file, and optionally verifies checksum.">
        
        <antcall target="get-if-not-cached">
        </antcall>
        <antcall target="copy-if-cached">
        </antcall>
    </target>
    
    <target name="get-if-not-cached" unless="found-in-cache">
		<antcall target="get-with-no-params" />
		<antcall target="get-with-params" />
		<antcall target="get-local" />
        <antcall target="check-sum" />
        <condition property="skipCache">
            <not>
                <isset property="usingDownloadCache" />
            </not>
        </condition>
        <antcall target="put-in-cache" />
    </target>
    
	<target name="check-params" >
		<condition property="has-params">
			<and>
				<contains string="${srcDomain}/${srcFolder}/${srcFile}" substring="?" />
				<not>
					<contains string="${srcDomain}/${srcFolder}/${srcFile}" substring="file://" />
				</not>
			</and>
		</condition>
		<condition property="is-local">
			<contains string="${srcDomain}/${srcFolder}/${srcFile}" substring="file://" />
		</condition>
		<condition property="not-local-no-params">
			<and>
				<not>
					<contains string="${srcDomain}/${srcFolder}/${srcFile}" substring="file://" />
				</not>
				<not>
					<contains string="${srcDomain}/${srcFolder}/${srcFile}" substring="?" />
				</not>
			</and>
		</condition>
	</target>
	
	<target name="get-local" depends="check-params" if="is-local" >
        <get src="${srcDomain}/${srcFolder}/${srcFile}" dest="${dest}"/>
	</target>
	<target name="get-with-no-params" depends="check-params" if="not-local-no-params" >
        <get src="${srcDomain}/${srcFolder}/${srcFile}?ts=${ts}" dest="${dest}"/>
	</target>
	<target name="get-with-params" depends="check-params" if="has-params" >
        <get src="${srcDomain}/${srcFolder}/${srcFile}&amp;ts=${ts}" dest="${dest}"/>
	</target>
	
    <target name="copy-if-cached" if="found-in-cache">
		<condition property="cacheFile" value="${srcFile}" >
			<not>
				<isset property="cacheFile" />
			</not>
		</condition>
		<echo>${INFO_USING_CACHED_FILE} ${downloadCacheFolder}/${srcFolder}/${cacheFile}</echo>
        <copy file="${downloadCacheFolder}/${srcFolder}/${cacheFile}" tofile="${dest}" overwrite="true" />
    </target>
    
    <target name="check-cache" if="usingDownloadCache">
		<condition property="cacheFile" value="${srcFile}" >
			<not>
				<isset property="cacheFile" />
			</not>
		</condition>
        <available file="${downloadCacheFolder}/${srcFolder}/${cacheFile}" property="found-in-cache" />
    </target>
    
    <target name="put-in-cache" unless="skipCache">
		<condition property="cacheFile" value="${srcFile}" >
			<not>
				<isset property="cacheFile" />
			</not>
		</condition>
        <copy tofile="${downloadCacheFolder}/${srcFolder}/${cacheFile}" file="${dest}" />
    </target>
    
    <target name="check-sum" if="md5"
        description="Verifies MD5 checksum, and fails if checksum doesn't match">
        
        <echo>${INFO_VALIDATING_FILE} ${dest}</echo>
        <checksum file="${dest}" algorithm="MD5" verifyproperty="we.failed" property="${md5}" />
        <fail message="${failmessage}">
            <condition>
                <equals arg1="${we.failed}" arg2="false" />
            </condition>
        </fail>
    </target>
</project>
