Hi Jason,
My version of the api is : Public Alpha 3.0.5.3 - "Gigan"
I've seen the data xml autoload option in config file but in my case, i call a class that load many other xml. So i can't use this option.
If that can help, this is the class i call in entryPoint method :
**************************************************************
package com.denis.model
{
import flash.events.EventDispatcher;
import flash.events.Event;
import sekati.log.Logger;
/**
* ...
* @author Fred DUFAU
*/
public class ProxyLoader extends EventDispatcher
{
private static var _instance:ProxyLoader;
public function ProxyLoader(pEnforcer:SingletonEnforcer)
{
}
public static function get instance():ProxyLoader
{
if ( _instance == null )
{
_instance = new ProxyLoader( new SingletonEnforcer() );
}
return _instance;
}
public function init():void
{
HomeXMLDataProxy.instance.addEventListener( Event.COMPLETE, onDataLoaded);
HomeXMLDataProxy.instance.loadData();
EntrepriseXMLDataProxy.instance.addEventListener( Event.COMPLETE, onDataLoaded);
EntrepriseXMLDataProxy.instance.loadData();
MateriauxXMLDataProxy.instance.addEventListener( Event.COMPLETE, onDataLoaded);
MateriauxXMLDataProxy.instance.loadData();
RealisationsXMLDataProxy.instance.addEventListener( Event.COMPLETE, onDataLoaded);
RealisationsXMLDataProxy.instance.loadData();
GlobalXMLDataProxy.instance.addEventListener( Event.COMPLETE, onDataLoaded);
GlobalXMLDataProxy.instance.loadData();
}
private function onDataLoaded(pEvt:Event):void
{
if ( HomeXMLDataProxy.instance.dataLoaded
&& EntrepriseXMLDataProxy.instance.dataLoaded
&& MateriauxXMLDataProxy.instance.dataLoaded
&& RealisationsXMLDataProxy.instance.dataLoaded
&& GlobalXMLDataProxy.instance.dataLoaded )
{
Logger.$.notice(_instance, " => onDataLoaded");
dispatchEvent( new Event( Event.COMPLETE ) );
}
}
}
}
class SingletonEnforcer {};
*********************************************************************
the bug appear in the call of HomeXMLDataProxy, this is the code for this class :
package com.denis.model
{
import flash.events.EventDispatcher;
import flash.events.Event;
import sekati.log.Logger;
import sekati.load.XMLLoader;
/**
* .DYNAMIC CLASS
* @author Fred DUFAU
*/
dynamic public class HomeXMLDataProxy extends EventDispatcher
{
private static var _instance:HomeXMLDataProxy;
private var _xmlLoader : XMLLoader;
private var _dataLoaded : Boolean = false;
private var _data : XML;
public function HomeXMLDataProxy(pEnforcer:SingletonEnforcer)
{
}
public static function get instance():HomeXMLDataProxy
{
if ( _instance == null )
{
_instance = new HomeXMLDataProxy( new SingletonEnforcer() );
}
return _instance;
}
public function loadData():void
{
_xmlLoader = new XMLLoader( "xml/home.xml" );
_xmlLoader.addEventListener( Event.INIT, onLoadXML );
_xmlLoader.load();
}
/**
* dynamic class here
* @param pEvt
*/
private function onLoadXML( pEvt:Event ):void
{
Logger.$.info(instance, " :: onLoadXML");
_data = _xmlLoader.content;
for each( var elem:XML in _data.elements() )
{
this[ elem.localName() ] = elem.toString();
}
_dataLoaded = true;
dispatchEvent( new Event (Event.COMPLETE) );
}
public function get dataLoaded():Boolean
{
return _dataLoaded;
}
}
}
class SingletonEnforcer {};
*********************************************
thanks