Puedes ir cargando los xml secuencialmente:
Código ActionScript :
var urls:Array = [ "file0.xml", "file1.xml", "file2.xml", "file3.xml", "file4.xml", "file5.xml" ];
var datas:Array = [];
var counter:uint = 0;
var urlRequest:URLRequest;
var urlLoader:URLLoader;
createLoader(urls[0]);
function createLoader(fileName:String):void
{
if (counter == urls.length)
{
xmlLoadComplete();
return;
}
urlRequest = new URLRequest(fileName);
urlLoader = new URLLoader(urlRequest);
urlLoader.addEventListener(Event.COMPLETE, urlLoaderCompleteHandler);
urlLoader.addEventListener(IOErrorEvent.IO_ERROR, urlLoaderErrorHandler);
}
function xmlLoadComplete():void
{
trace(datas);
}
function urlLoaderCompleteHandler(event:Event):void
{
event.target.removeEventListener(Event.COMPLETE, urlLoaderCompleteHandler);
event.target.removeEventListener(IOErrorEvent.IO_ERROR, urlLoaderErrorHandler);
var urlL:URLLoader = event.target as URLLoader;
datas.push(urlL.data);
createLoader(urls[++counter]);
}
function urlLoaderErrorHandler(event:IOErrorEvent):void
{
event.target.removeEventListener(Event.COMPLETE, urlLoaderCompleteHandler);
event.target.removeEventListener(IOErrorEvent.IO_ERROR, urlLoaderErrorHandler);
createLoader(urls[++counter]);
}
O si prefieres cargar todos los archivos a la vez, e ir contando los que se cargan correctamente y los que no:
Código ActionScript :
var urls:Array = [ "file0.xml", "file1.xml", "file2.xml", "file3.xml", "file4.xml", "file5.xml" ];
var datas:Array = [];
var counter:uint = 0;
for (var i:uint = 0; i < urls.length; i++)
{
var urlRequest:URLRequest = new URLRequest(urls[i]);
var urlLoader:URLLoader = new URLLoader(urlRequest);
urlLoader.addEventListener(Event.COMPLETE, urlLoaderCompleteHandler);
urlLoader.addEventListener(IOErrorEvent.IO_ERROR, urlLoaderErrorHandler);
}
function xmlLoadComplete():void
{
trace(datas);
}
function urlLoaderCompleteHandler(event:Event):void
{
event.target.removeEventListener(Event.COMPLETE, urlLoaderCompleteHandler);
event.target.removeEventListener(IOErrorEvent.IO_ERROR, urlLoaderErrorHandler);
var urlL:URLLoader = event.target as URLLoader;
datas.push(urlL.data);
if (++counter == urls.length) xmlLoadComplete();
}
function urlLoaderErrorHandler(event:IOErrorEvent):void
{
event.target.removeEventListener(Event.COMPLETE, urlLoaderCompleteHandler);
event.target.removeEventListener(IOErrorEvent.IO_ERROR, urlLoaderErrorHandler);
if (++counter == urls.length) xmlLoadComplete();
}