switch installer to new xml format that ant_on_air can read
Project: http://git-wip-us.apache.org/repos/asf/flex-utilities/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-utilities/commit/886ca1d6 Tree: http://git-wip-us.apache.org/repos/asf/flex-utilities/tree/886ca1d6 Diff: http://git-wip-us.apache.org/repos/asf/flex-utilities/diff/886ca1d6 Branch: refs/heads/develop Commit: 886ca1d68952163bd679c39b5b40693f82950774 Parents: 22a6082 Author: Alex Harui <[email protected]> Authored: Fri Jan 10 12:38:58 2014 -0800 Committer: Alex Harui <[email protected]> Committed: Tue Jan 14 15:06:33 2014 -0800 ---------------------------------------------------------------------- .../apache/flex/utilities/common/Constants.as | 2 +- installer/src/InstallApacheFlex.mxml | 140 +++++++++---------- .../src/installer/sdk-installer-config-4.0.xml | 12 +- 3 files changed, 77 insertions(+), 77 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/886ca1d6/common/src/org/apache/flex/utilities/common/Constants.as ---------------------------------------------------------------------- diff --git a/common/src/org/apache/flex/utilities/common/Constants.as b/common/src/org/apache/flex/utilities/common/Constants.as index 59c38ae..524c840 100644 --- a/common/src/org/apache/flex/utilities/common/Constants.as +++ b/common/src/org/apache/flex/utilities/common/Constants.as @@ -38,7 +38,7 @@ public class Constants public static const APPLICATION_EXTENSION_WIN:String = ".exe"; public static const APPLICATION_EXTENSION_LINUX:String = ".deb"; - public static const CONFIG_XML_NAME:String = "installer/sdk-installer-config-3.1.xml"; + public static const CONFIG_XML_NAME:String = "installer/sdk-installer-config-4.0.xml"; public static const DISCLAIMER_PATH:String = "about-binaries.html"; public static const INSTALLER_TRACK_SUCCESS:String = "track-installer.html"; http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/886ca1d6/installer/src/InstallApacheFlex.mxml ---------------------------------------------------------------------- diff --git a/installer/src/InstallApacheFlex.mxml b/installer/src/InstallApacheFlex.mxml index 7af0aba..7f441f9 100644 --- a/installer/src/InstallApacheFlex.mxml +++ b/installer/src/InstallApacheFlex.mxml @@ -363,46 +363,54 @@ variables are not required because the locations of these pieces are known. protected function setXMLVariables():Boolean { var data:XML = XML(_loader.data); - var version:Number = Number(data.version.toString()); - var files:XMLList = data.files.file; var keepGoing:Boolean = true; _latestVersion = data.version.latest.toString(); - installerAppPath = files.(@name == 'SDKInstallerApp')[email protected](); - installerAppFileName = files.(@name == 'SDKInstallerApp')[email protected](); + installerAppPath = data.installer.(@name == 'SDKInstallerApp')[email protected](); + installerAppFileName = data.installer.(@name == 'SDKInstallerApp')[email protected](); - _mirrorURLCGI = files.(@name == 'MirrorURLCGI')[email protected](); + _mirrorURLCGI = data.mirror.(@name == 'MirrorURLCGI')[email protected](); - var airVersions:Array = files.(@name == 'Versions')[email protected]().split(","); - var selected:String = files.(@name == 'Versions')[email protected](); - for each (var airVersion:String in airVersions) { - if (!_os.isLinux()|| Number(airVersion) <= 2.6) { - AIR_VERSIONS.addItem({label:"AIR " + airVersion, version:airVersion}); - } - } - - if (_os.isLinux()) { - AIR_VERSION = "2.6"; + var name:String; + var versionString:String; + + var airData:XMLList = data.airsdk[_os.os].versions; + var airVersionList:XMLList = airData[0].children(); + var airVersions:Array = []; + var selected:String = airData[0]["@default"].toString(); + for each (var airVersion:XML in airVersionList) { + name = airVersion.name().toString(); + versionString = name.substr(7); + airVersions.push(versionString); + AIR_VERSIONS.addItem({label:"AIR " + versionString, version: versionString}); } if (this.airVersion.selectedIndex == -1) { this.airVersion.selectedIndex = airVersions.indexOf(selected); } - var flexVersions:Array = files.(@name == 'FlexVersions')[email protected]().split(","); - for each (var flexVersion:String in flexVersions) { - var shortName:String = files.(@name == flexVersion)[email protected](); - var fileName:String = shortName + (_os.isWindows() ? Constants.ARCHIVE_EXTENSION_WIN : Constants.ARCHIVE_EXTENSION_MAC); - var label:String = "Flex SDK " + flexVersion; - var ver:String = fileName.substr(Constants.SDK_BINARY_FILE_NAME_PREFIX.length).split("-")[0]; - var path:String = files.(@name == flexVersion)[email protected](); - FLEX_VERSIONS.addItem({shortName: shortName, fileName:fileName,label:label, version:ver, path:path}); - } - var selectedFlexVersion:String = files.(@name == 'FlexVersions')[email protected](); + var flexData:XMLList = data.products.children(); + var selectedFlexVersion:int; + for each (var productData:XML in flexData) + { + var productName:String = [email protected](); + var productPrefix:String = [email protected](); + var productVersionList:XMLList = productData.versions.children(); + for each (var productVersion:XML in productVersionList) { + var shortName:String = [email protected](); + var fileName:String = shortName + (_os.isWindows() ? Constants.ARCHIVE_EXTENSION_WIN : Constants.ARCHIVE_EXTENSION_MAC); + var label:String = productName + " " + productVersion.name().toString(); + var ver:String = fileName.substr(productPrefix.length).split("-")[0]; + var path:String = [email protected](); + if (productVersion["@default"].length() == 1) + selectedFlexVersion = FLEX_VERSIONS.length; + FLEX_VERSIONS.addItem({shortName: shortName, fileName:fileName,label:label, version:ver, path:path}); + } + } if (this.flexVersion.selectedIndex == -1) { - this.flexVersion.selectedIndex = getIndexOfFlexVersion(selectedFlexVersion); + this.flexVersion.selectedIndex = selectedFlexVersion; } var selectedFlexVersionObject:Object = this.flexVersion.selectedItem; @@ -413,12 +421,17 @@ variables are not required because the locations of these pieces are known. keepGoing = false; } - var flashPlayerVersions:Array = files.(@name == 'Versions')[email protected]().split(","); - selected = files.(@name == 'Versions')[email protected](); - for each (var flashPlayerVersion:String in flashPlayerVersions) { - if (!_os.isLinux() || Number(flashPlayerVersion) <= 11.2) { - var swfVersion:String = files.(@name == 'FlashPlayer' + FLASH_PLAYER_VERSION)[email protected](); - FLASH_PLAYER_VERSIONS.addItem({label:"Flash Player " + flashPlayerVersion, version:flashPlayerVersion, swfVersion:swfVersion}); + var flashData:XMLList = data.flashsdk.versions; + var flashVersionList:XMLList = flashData[0].children(); + var flashPlayerVersions:Array = []; + selected = flashData[0]["@default"].toString(); + for each (var flashVersion:XML in flashVersionList) { + name = flashVersion.name().toString(); + versionString = name.substr(7); + flashPlayerVersions.push(versionString); + if (!_os.isLinux() || Number(versionString) <= 11.2) { + var swfVersion:String = flashVersion.swfversion.toString(); + FLASH_PLAYER_VERSIONS.addItem({label:"Flash Player " + versionString, version:versionString, swfVersion:swfVersion}); } } @@ -426,70 +439,70 @@ variables are not required because the locations of these pieces are known. this.flashPlayerVersion.selectedIndex = flashPlayerVersions.indexOf(selected); } - ADOBE_AIR_SDK_WIN_FILE = files.(@name == 'AdobeAIRSDKWin' + AIR_VERSION)[email protected](); - ADOBE_AIR_SDK_WIN_URL = files.(@name == 'AdobeAIRSDKWin' + AIR_VERSION)[email protected](); + ADOBE_AIR_SDK_WIN_FILE = data.airsdk.windows.versions["version" + AIR_VERSION].file.toString(); + ADOBE_AIR_SDK_WIN_URL = data.airsdk.windows.versions["version" + AIR_VERSION].path.toString(); if (_os.isWindows() && (!ADOBE_AIR_SDK_WIN_FILE || !ADOBE_AIR_SDK_WIN_URL)) { log(_viewResourceConstants.ERROR_INVALID_AIR_SDK_URL_WINDOWS); keepGoing = false; } ADOBE_AIR_SDK_WIN_URL += ADOBE_AIR_SDK_WIN_FILE; - ADOBE_AIR_SDK_MAC_FILE = files.(@name == 'AdobeAIRSDKMac' + AIR_VERSION)[email protected](); - ADOBE_AIR_SDK_MAC_URL = files.(@name == 'AdobeAIRSDKMac' + AIR_VERSION)[email protected](); + ADOBE_AIR_SDK_MAC_FILE = data.airsdk.mac.versions["version" + AIR_VERSION].file.toString(); + ADOBE_AIR_SDK_MAC_URL = data.airsdk.mac.versions["version" + AIR_VERSION].path.toString(); if (_os.isMac() && (!ADOBE_AIR_SDK_MAC_FILE || !ADOBE_AIR_SDK_MAC_URL)) { log(_viewResourceConstants.ERROR_INVALID_AIR_SDK_URL_MAC); keepGoing = false; } ADOBE_AIR_SDK_MAC_URL += ADOBE_AIR_SDK_MAC_FILE; - ADOBE_AIR_SDK_LINUX_FILE = files.(@name == 'AdobeAIRSDKLin' + AIR_VERSION)[email protected](); - ADOBE_AIR_SDK_LINUX_URL = files.(@name == 'AdobeAIRSDKLin' + AIR_VERSION)[email protected](); + ADOBE_AIR_SDK_LINUX_FILE = data.airsdk.linux.versions["version" + AIR_VERSION].file.toString(); + ADOBE_AIR_SDK_LINUX_URL = data.airsdk.linux.versions["version" + AIR_VERSION].path.toString(); if (_os.isLinux() && (!ADOBE_AIR_SDK_LINUX_FILE || !ADOBE_AIR_SDK_LINUX_URL)) { log(_viewResourceConstants.ERROR_INVALID_AIR_SDK_URL_LINUX); keepGoing = false; } ADOBE_AIR_SDK_LINUX_URL += ADOBE_AIR_SDK_LINUX_FILE; - ADOBE_FB_GLOBALPLAYER_SWC_FILE = files.(@name == 'FlashPlayer' + FLASH_PLAYER_VERSION)[email protected](); - ADOBE_FB_GLOBALPLAYER_SWC_URL = files.(@name == 'FlashPlayer' + FLASH_PLAYER_VERSION)[email protected](); - FLASH_PLAYER_SWF_VERSION = files.(@name == 'FlashPlayer' + FLASH_PLAYER_VERSION)[email protected](); + ADOBE_FB_GLOBALPLAYER_SWC_FILE = data.flashsdk.versions["version" + FLASH_PLAYER_VERSION].file.toString(); + ADOBE_FB_GLOBALPLAYER_SWC_URL = data.flashsdk.versions["version" + FLASH_PLAYER_VERSION].path.toString(); + FLASH_PLAYER_SWF_VERSION = data.flashsdk.versions["version" + FLASH_PLAYER_VERSION].swfversion.toString(); if (!ADOBE_FB_GLOBALPLAYER_SWC_FILE || !ADOBE_FB_GLOBALPLAYER_SWC_URL) { log(_viewResourceConstants.ERROR_INVALID_FLASH_PLAYER_SWC_URL); keepGoing = false; } ADOBE_FB_GLOBALPLAYER_SWC_URL += ADOBE_FB_GLOBALPLAYER_SWC_FILE; - SWF_OBJECT_FILE = files.(@name == 'swfobject')[email protected](); - SWF_OBJECT_URL = files.(@name == 'swfobject')[email protected](); + SWF_OBJECT_FILE = [email protected](); + SWF_OBJECT_URL = [email protected](); //Supporting OSMF 2.0 from 4.11 onwards. if(APACHE_FLEX_BIN_DISTRO_VERSION == "4.9.1" || APACHE_FLEX_BIN_DISTRO_VERSION == "4.10.0" ) { - OSMF_SWC_FILE = files.(@name == 'OSMF_SWC')[email protected](); - OSMF_SWC_URL = files.(@name == 'OSMF_SWC')[email protected](); + OSMF_SWC_FILE = [email protected](); + OSMF_SWC_URL = [email protected](); _useOSMF2 = false; } else { - OSMF_SWC_FILE = files.(@name == 'OSMF_SWC_2.0')[email protected](); - OSMF_SWC_URL = files.(@name == 'OSMF_SWC_2.0')[email protected](); + OSMF_SWC_FILE = data["OSMF_SWC_2.0"][email protected](); + OSMF_SWC_URL = data["OSMF_SWC_2.0"][email protected](); _useOSMF2 = true; } - BLAZEDS_FILE = files.(@name == 'BlazeDS')[email protected](); - BLAZEDS_URL = files.(@name == 'BlazeDS')[email protected](); + BLAZEDS_FILE = [email protected](); + BLAZEDS_URL = [email protected](); - AFE_FILE = files.(@name == 'afe')[email protected](); - AFE_URL = files.(@name == 'afe')[email protected](); + AFE_FILE = [email protected](); + AFE_URL = [email protected](); - AGLJ40_FILE = files.(@name == 'aglj40')[email protected](); - AGLJ40_URL = files.(@name == 'aglj40')[email protected](); + AGLJ40_FILE = [email protected](); + AGLJ40_URL = [email protected](); - FLEX_FONTKIT_FILE = files.(@name == 'flex-fontkit')[email protected](); - FLEX_FONTKIT_URL = files.(@name == 'flex-fontkit')[email protected](); + FLEX_FONTKIT_FILE = data.fontswf["flex-fontkit"][email protected](); + FLEX_FONTKIT_URL = data.fontswf["flex-fontkit"][email protected](); - RIDEAU_FILE = files.(@name == 'rideau')[email protected](); - RIDEAU_URL = files.(@name == 'rideau')[email protected](); + RIDEAU_FILE = [email protected](); + RIDEAU_URL = [email protected](); return keepGoing; @@ -514,19 +527,6 @@ variables are not required because the locations of these pieces are known. } } - protected function getIndexOfFlexVersion(ver:String):int - { - for (var i:int=0; i<FLEX_VERSIONS.length; i++) - { - var obj:Object = FLEX_VERSIONS.getItemAt(i); - if(obj.label == "Flex SDK " + ver) - { - return i; - } - } - return -1; - } - private function useMirrorPath(path:String):String { if (_useMirror) { return path; http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/886ca1d6/installer/src/installer/sdk-installer-config-4.0.xml ---------------------------------------------------------------------- diff --git a/installer/src/installer/sdk-installer-config-4.0.xml b/installer/src/installer/sdk-installer-config-4.0.xml index c1bf644..6e78c5b 100644 --- a/installer/src/installer/sdk-installer-config-4.0.xml +++ b/installer/src/installer/sdk-installer-config-4.0.xml @@ -44,17 +44,17 @@ limitations under the License. - path is relative to mirror URL; don't use starting slash - use http based url if you want to use an absolute url instead of mirror - remove the extension from the file name --> - <ApacheFlexSDK name="Apache Flex SDK"> + <ApacheFlexSDK name="Apache Flex SDK" prefix="apache-flex-sdk-"> <versions> - <version4.9.1 id="4.9.1" path="http://archive.apache.org/dist/flex/4.9.1/binaries/" file="apache-flex-sdk-4.9.1-bin" /> - <version4.10.0 id="4.10.0" path="http://archive.apache.org/dist/flex/4.10.0/binaries/" file="apache-flex-sdk-4.10.0-bin" /> - <version4.11.0 id="4.11.0" path="http://archive.apache.org/dist/flex/4.11.0/binaries/" file="apache-flex-sdk-4.11.0-bin" /> + <4.9.1 id="4.9.1" path="http://archive.apache.org/dist/flex/4.9.1/binaries/" file="apache-flex-sdk-4.9.1-bin" /> + <4.10.0 id="4.10.0" path="http://archive.apache.org/dist/flex/4.10.0/binaries/" file="apache-flex-sdk-4.10.0-bin" /> + <4.11.0 id="4.11.0" path="flex/4.11.0/binaries/" file="apache-flex-sdk-4.11.0-bin" default="true"/> <Nightly id="Nightly" path="https://builds.apache.org/job/flex-sdk_release/lastSuccessfulBuild/artifact/out/" file="apache-flex-sdk-4.11.0-bin" /> </versions> </ApacheFlexSDK> - <ApacheFlexJS name="Apache FlexJS" > + <ApacheFlexJS name="Apache FlexJS" prefix="apache-flex-flexjs-"> <versions> - <Nightly id="FlexJSNightly" path="https://builds.apache.org/job/flex-asjs_release/lastSuccessfulBuild/artifact/out/" file="apache-flex-flexjs-0.0.1-bin" /> + <Nightly id="FlexJSNightly" path="https://builds.apache.org/job/flex-asjs_release/lastSuccessfulBuild/artifact/out/" file="apache-flex-flexjs-4.0.1-bin" /> </versions> </ApacheFlexJS> </products>
