Revision: 23746
Updated Code
at February 13, 2010 20:26 by alvincrespo
Updated Code
package{ //net import flash.net.URLLoader; import flash.net.URLRequest; //events import flash.events.Event; import flash.events.EventDispatcher; public class XMLLoader extends EventDispatcher{ private var _URLLoader:URLLoader; private var _URLRequest:URLRequest; private var _XMLFiles:Array; private var _XML:XML; private var _XMLFilesPointer:int = 0; //private var _XMLPath:String = "xml/vday-music.xml"; //Custom Dispatchers public static var MUSIC_XML_LOADED:String = "music_xml_loaded"; public static var VIDEO_XML_LOADED:String = "video_xml_loaded"; public function XMLLoader():void{ _XMLFiles = new Array('xml/vday-music.xml','xml/vday-video.xml'); _XML = new XML("<playlist></playlist>"); }//end of constructor public function loadXML():void{ _URLLoader = new URLLoader(); _URLRequest = new URLRequest(_XMLFiles[_XMLFilesPointer]); _URLLoader.addEventListener(Event.COMPLETE, xmlLoadComplete); _URLLoader.load(_URLRequest); } //Event Handlers private function xmlLoadComplete(e:Event):void{ _URLLoader.removeEventListener(Event.COMPLETE, xmlLoadComplete); var xml = XML(e.target.data); //distinguish between both xml types if(xml.song != undefined){//if song node exists, then it is music xml _XML.appendChild(xml.song); dispatchEvent(new Event(XMLLoader.MUSIC_XML_LOADED)); } if(xml.video != undefined){//if video node exists, then it is video xml _XML.appendChild(xml.video); dispatchEvent(new Event(XMLLoader.VIDEO_XML_LOADED)); } _XMLFilesPointer++; if(_XMLFilesPointer < _XMLFiles.length) loadXML(); } public function get XMLData():XML { return _XML; } } }
Revision: 23745
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at February 12, 2010 02:34 by alvincrespo
Initial Code
package{ //net import flash.net.URLLoader; import flash.net.URLRequest; //events import flash.events.Event; import flash.events.EventDispatcher; public class XMLLoader extends EventDispatcher{ private var _URLLoader:URLLoader; private var _URLRequest:URLRequest; private var _XMLFiles:Array; private var _XML:XML; private var _XMLPath:String = "xml/vday-music.xml"; //Custom Dispatchers public static var MUSIC_XML_LOADED:String = "music_xml_loaded"; public static var VIDEO_XML_LOADED:String = "video_xml_loaded"; public function XMLLoader():void{ trace("XMLLoader Instantiated"); _XMLFiles = new Array('xml/vday-music.xml','xml/vday-video.xml'); loadXML(); }//end of constructor public function loadXML():void{ for(var i:int=0; i<_XMLFiles.length; i++){ beginLoadingXML(_XMLFiles[i]); } } private function beginLoadingXML(pXMLPath:String):void{ _URLLoader = new URLLoader(); _URLLoader.addEventListener(Event.COMPLETE, xmlLoadComplete); _URLRequest = new URLRequest(pXMLPath); _URLLoader.load(_URLRequest); } //Event Handlers private function xmlLoadComplete(e:Event):void{ _URLLoader.removeEventListener(Event.COMPLETE, xmlLoadComplete); _XML = new XML(e.target.data); //distinguish between both xml types if(_XML.song){//if song node exists, then it is music xml dispatchEvent(new Event(XMLLoader.MUSIC_XML_LOADED)); } if(_XML.video){//if video node exists, then it is video xml dispatchEvent(new Event(XMLLoader.VIDEO_XML_LOADED)); } } public function get XMLDataAsXMLList():XMLList{ return _XML.song; } } }
Initial URL
Initial Description
Initial Title
Load Multiple XML Files
Initial Tags
actionscript, xml, files, load
Initial Language
ActionScript 3