Repository: flex-sdk Updated Branches: refs/heads/develop 0dff7f486 -> 522a06d61
use flex download cache if downloads fail Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/522a06d6 Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/522a06d6 Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/522a06d6 Branch: refs/heads/develop Commit: 522a06d61ff477435ea0b44ae17466440bf092cb Parents: 0dff7f4 Author: Alex Harui <[email protected]> Authored: Tue Oct 25 12:47:18 2016 -0700 Committer: Alex Harui <[email protected]> Committed: Tue Oct 25 12:47:46 2016 -0700 ---------------------------------------------------------------------- frameworks/downloads.xml | 113 ++++++++++++++++++++++++++++++++++++++---- modules/downloads.xml | 86 +++++++++++++++++++++++++++++--- 2 files changed, 181 insertions(+), 18 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/522a06d6/frameworks/downloads.xml ---------------------------------------------------------------------- diff --git a/frameworks/downloads.xml b/frameworks/downloads.xml index 5d09c39..86536f1 100644 --- a/frameworks/downloads.xml +++ b/frameworks/downloads.xml @@ -107,7 +107,13 @@ verbose="false"/ --> <get src="http://downloads.sourceforge.net/project/osmf.adobe/OSMF%202.0%20Release%20%28final%20source%2C%20ASDocs%2C%20pdf%20guides%20and%20release%20notes%29/OSMF.swc?r=&ts=1381906346&use_mirror=optimate" dest="${download.dir}/osmf.swc" - verbose="false"/> + verbose="false" ignoreerrors="true"/> + <antcall target="get-from-cache-if-needed" > + <param name="filename" value="osmf.swc" /> + </antcall> + <antcall target="fail-if-not-found" > + <param name="filename" value="osmf.swc" /> + </antcall> </target> <!-- pixelbender files (Version 1.0) --> @@ -126,6 +132,12 @@ <param name="file" value="${pixelbender.bin.zip}" /> <param name="dest" value="${download.dir}/${pixelbender.bin.zip}" /> </antcall> + <antcall target="get-from-cache-if-needed" > + <param name="filename" value="${pixelbender.bin.zip}" /> + </antcall> + <antcall target="fail-if-not-found" > + <param name="filename" value="${pixelbender.bin.zip}" /> + </antcall> <unzip src="${download.dir}/${pixelbender.bin.zip}" dest="${FLEX_HOME}"> <patternset> @@ -151,7 +163,14 @@ <mkdir dir="${download.dir}"/> <get src="https://codeload.github.com/swfobject/swfobject/zip/2.2" dest="${download.dir}/swfobject_2_2.zip" - verbose="false"/> + verbose="false" ignoreerrors="true"/> + + <antcall target="get-from-cache-if-needed" > + <param name="filename" value="swfobject_2_2.zip" /> + </antcall> + <antcall target="fail-if-not-found" > + <param name="filename" value="swfobject_2_2.zip" /> + </antcall> <unzip src="${download.dir}/swfobject_2_2.zip" dest="${FLEX_HOME}/templates/swfobject"> <patternset> @@ -160,6 +179,7 @@ </patternset> <flattenmapper /> </unzip> + <antcall target="swfobject-double-check" /> </target> <target name="swfobject-clean" description="Deletes templates swfobject code."> @@ -172,6 +192,24 @@ </delete> </target> + <target name="have-swfobject" > + <condition property="still-no-swfobject"> + <not> + <available file="${FLEX_HOME}/templates/swfobject/swfobject.js" /> + </not> + </condition> + </target> + + <target name="swfobject-double-check" depends="have-swfobject" if="still-no-swfobject" description="some SWFObject zips have a different folder structure so if the first unzip doesn't work, try this one"> + <unzip src="${download.dir}/swfobject_2_2.zip" dest="${FLEX_HOME}/templates/swfobject"> + <patternset> + <include name="swfobject/expressInstall.swf"/> + <include name="swfobject/swfobject.js"/> + </patternset> + <flattenmapper /> + </unzip> + </target> + <!-- the copy of swfobject.js that is in javascript/fabridge --> <target name="swfobject-fabridge-download" depends="swfobject-download" description="Copies swfobject.js from code.google.com to fabridge"> @@ -275,25 +313,49 @@ <target name="download-afe" unless="adobe.afe.download.exists" > <mkdir dir="${download.dir}"/> <get src="http://sourceforge.net/adobe/flexsdk/code/HEAD/tree/trunk/lib/afe.jar?format=raw" - dest="${download.dir}/${adobe.afe.file}"/> + dest="${download.dir}/${adobe.afe.file}" ignoreerrors="true"/> + <antcall target="get-from-cache-if-needed" > + <param name="filename" value="${adobe.afe.file}" /> + </antcall> + <antcall target="fail-if-not-found" > + <param name="filename" value="${adobe.afe.file}" /> + </antcall> </target> <target name="download-aglj40" unless="adobe.aglj40.download.exists" > <mkdir dir="${download.dir}"/> <get src="http://sourceforge.net/adobe/flexsdk/code/HEAD/tree/trunk/lib/aglj40.jar?format=raw" - dest="${download.dir}/${adobe.aglj40.file}"/> + dest="${download.dir}/${adobe.aglj40.file}" ignoreerrors="true"/> + <antcall target="get-from-cache-if-needed" > + <param name="filename" value="${adobe.aglj40.file}" /> + </antcall> + <antcall target="fail-if-not-found" > + <param name="filename" value="${adobe.aglj40.file}" /> + </antcall> </target> <target name="download-rideau" unless="adobe.rideau.download.exists" > <mkdir dir="${download.dir}"/> <get src="http://sourceforge.net/adobe/flexsdk/code/HEAD/tree/trunk/lib/rideau.jar?format=raw" - dest="${download.dir}/${adobe.rideau.file}"/> + dest="${download.dir}/${adobe.rideau.file}" ignoreerrors="true"/> + <antcall target="get-from-cache-if-needed" > + <param name="filename" value="${adobe.rideau.file}" /> + </antcall> + <antcall target="fail-if-not-found" > + <param name="filename" value="${adobe.rideau.file}" /> + </antcall> </target> <target name="download-flex-fontkit" unless="adobe.flex-fontkit.download.exists" > <mkdir dir="${download.dir}"/> <get src="http://sourceforge.net/adobe/flexsdk/code/HEAD/tree/trunk/lib/flex-fontkit.jar?format=raw" - dest="${download.dir}/${adobe.flex-fontkit.file}"/> + dest="${download.dir}/${adobe.flex-fontkit.file}" ignoreerrors="true"/> + <antcall target="get-from-cache-if-needed" > + <param name="filename" value="${adobe.flex-fontkit.file}" /> + </antcall> + <antcall target="fail-if-not-found" > + <param name="filename" value="${adobe.flex-fontkit.file}" /> + </antcall> </target> <target name="clean-adobe-flex-sdk"> @@ -301,9 +363,13 @@ </target> <target name="get_from_mirror"> - <condition property="usingmirror" value="true"> + <condition property="mirrorurl" value="true"> <contains string="${server}" substring="mirrors.cgi" /> </condition> + <antcall target="get_mirror_data" /> + <condition property="usingmirror"> + <available file="${basedir}/mirror.json" /> + </condition> <antcall target="download_using_mirror"> <param name="server" value="${server}" /> <param name="folder" value="${folder}" /> @@ -318,8 +384,11 @@ </antcall> </target> + <target name="get_mirror_data" if="mirrorurl"> + <get src="${server}/${folder}/${file}?asjson=true" verbose="true" dest="${basedir}/mirror.json" ignoreerrors="true"/> + </target> + <target name="download_using_mirror" if="usingmirror"> - <get src="${server}/${folder}/${file}?asjson=true" verbose="true" dest="${basedir}/mirror.json" /> <replace file="${basedir}/mirror.json"> <replacefilter token="{" value="" /> @@ -339,11 +408,35 @@ <property file="${basedir}/mirror.json" /> <delete file="${basedir}/mirror.json" /> <echo>Using mirror: ${preferred}</echo> - <get src="${preferred}${folder}/${file}" dest="${dest}" /> + <get src="${preferred}${folder}/${file}" dest="${dest}" ignoreerrors="true" /> </target> <target name="download_using_get" unless="usingmirror"> - <get src="${server}/${folder}/${file}" dest="${dest}" /> + <get src="${server}/${folder}/${file}" dest="${dest}" ignoreerrors="true"/> </target> + <target name="fail-if-not-found"> + <fail message="${filename} could not be downloaded or found in cache"> + <condition> + <not> + <available file="${download.dir}/${filename}" /> + </not> + </condition> + </fail> + </target> + + <target name="double-check-file" > + <condition property="still-no-file" value="true"> + <and> + <not> + <available file="${download.dir}/${filename}" /> + </not> + <isset property="env.FLEX_DOWNLOAD_CACHE" /> + </and> + </condition> + <echo>Need file: ${still_no_file}</echo> + </target> + <target name="get-from-cache-if-needed" depends="double-check-file" if="still-no-file"> + <copy file="${env.FLEX_DOWNLOAD_CACHE}/${filename}" tofile="${download.dir}/${filename}" /> + </target> </project> http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/522a06d6/modules/downloads.xml ---------------------------------------------------------------------- diff --git a/modules/downloads.xml b/modules/downloads.xml index dba18fe..a827ce5 100644 --- a/modules/downloads.xml +++ b/modules/downloads.xml @@ -165,8 +165,16 @@ </target> <target name="get-zip" unless="zip.exists" description="Get zip and verify checksum."> - <get src="${srcUrl}/${zipFile}" dest="${download.dir}/${zipFile}"/> - + <get src="${srcUrl}/${zipFile}" dest="${download.dir}/${zipFile}" ignoreerrors="true"/> + <antcall target="get-from-cache-if-needed" > + <param name="filename" value="${zipFile}" /> + <param name="destDir" value="${download.dir}" /> + </antcall> + <antcall target="fail-if-not-found" > + <param name="filename" value="${zipFile}" /> + <param name="destDir" value="${download.dir}" /> + </antcall> + <antcall target="check-sum"> <param name="message" value="Checksum mismatch for ${download.dir}/${zipFile}"/> </antcall> @@ -185,7 +193,16 @@ <target name="download-jar" description="Downloads jar, and optionally verifies checksum."> - <get src="${srcUrl}/${srcJarFile}" dest="${destJarFile}"/> + <get src="${srcUrl}/${srcJarFile}" dest="${destJarDir}/${destJarFile}" ignoreerrors="true"/> + <antcall target="get-from-cache-if-needed" > + <param name="filename" value="${destJarFile}" /> + <param name="destDir" value="${destJarDir}" /> + </antcall> + <antcall target="fail-if-not-found" > + <param name="filename" value="${destJarFile}" /> + <param name="destDir" value="${destJarDir}" /> + </antcall> + <antcall target="check-sum"> <param name="message" value="Checksum mismatch for ${destJarFile}"/> </antcall> @@ -414,8 +431,10 @@ <antcall target="download-jar"> <param name="srcUrl" value="http://search.maven.org/remotecontent?filepath=net/java/dev/javacc/javacc/5.0"/> <param name="srcJarFile" value="javacc-5.0.jar"/> - <param name="destJarFile" value="${lib.ext.dir}/javacc.jar"/> + <param name="destJarDir" value="${lib.ext.dir}"/> + <param name="destJarFile" value="javacc-5.0.jar"/> </antcall> + <move file="${lib.ext.dir}/javacc-5.0.jar" tofile="${lib.ext.dir}/javacc.jar" failonerror="false" /> </target> <!-- @@ -431,9 +450,18 @@ <get src="http://downloads.sourceforge.net/project/saxon/Saxon-B/9.1.0.8/saxonb9-1-0-8j.zip?r=&ts=1366147457&use_mirror=superb-dca2" dest="${download.dir}/${saxon9.bin.zip}" - verbose="false"/> + verbose="false" ignoreerrors="true"/> - <unzip src="${download.dir}/${saxon9.bin.zip}" + <antcall target="get-from-cache-if-needed" > + <param name="filename" value="${saxon9.bin.zip}" /> + <param name="destDir" value="${download.dir}" /> + </antcall> + <antcall target="fail-if-not-found" > + <param name="filename" value="${saxon9.bin.zip}" /> + <param name="destDir" value="${download.dir}" /> + </antcall> + + <unzip src="${download.dir}/${saxon9.bin.zip}" dest="${download.dir}/${saxon9.jar.dir}"/> <copy file="${download.dir}/${saxon9.jar.dir}/saxon9.jar" toDir="${lib.ext.dir}" verbose="true"/> @@ -597,8 +625,17 @@ <get src="${maven.search.url}org/apache/flex/${flexToolApi.name}/${flexToolApi.version}/${flexToolApi.name}-${flexToolApi.version}.jar" dest="${download.dir}/flex-tool-api.jar" - verbose="false"/> + verbose="false" ignoreerrors="true"/> + <antcall target="get-from-cache-if-needed" > + <param name="filename" value="flex-tool-api.jar" /> + <param name="destDir" value="${download.dir}" /> + </antcall> + <antcall target="fail-if-not-found" > + <param name="filename" value="flex-tool-api.jar" /> + <param name="destDir" value="${download.dir}" /> + </antcall> + <copy file="${download.dir}/flex-tool-api.jar" toDir="${lib.ext.dir}" verbose="true"/> </target> @@ -615,9 +652,42 @@ <get src="${maven.search.url}org/apache/flex/blazeds/${blazeds.name}/${blazeds.version}/${blazeds.name}-${blazeds.version}.jar" dest="${download.dir}/flex-messaging-common.jar" - verbose="false"/> + verbose="false" ignoreerrors="true"/> + + <antcall target="get-from-cache-if-needed" > + <param name="filename" value="flex-messaging-common.jar" /> + <param name="destDir" value="${download.dir}" /> + </antcall> + <antcall target="fail-if-not-found" > + <param name="filename" value="flex-messaging-common.jar" /> + <param name="destDir" value="${download.dir}" /> + </antcall> <copy file="${download.dir}/flex-messaging-common.jar" toDir="${lib.ext.dir}" verbose="true"/> </target> + + <target name="fail-if-not-found"> + <fail message="${filename} could not be downloaded or found in cache"> + <condition> + <not> + <available file="${destDir}/${filename}" /> + </not> + </condition> + </fail> + </target> + + <target name="double-check-file" > + <condition property="still-no-file"> + <and> + <not> + <available file="${destDir}/${filename}" /> + </not> + <isset property="env.FLEX_DOWNLOAD_CACHE" /> + </and> + </condition> + </target> + <target name="get-from-cache-if-needed" depends="double-check-file" if="still-no-file"> + <copy file="${env.FLEX_DOWNLOAD_CACHE}/${filename}" tofile="${destDir}/${filename}" /> + </target> </project>
