Packageorg.pranaframework.puremvc.patterns.facade
Classpublic class IocFacade
InheritanceIocFacade Inheritance org.puremvc.as3.patterns.facade.Facade
Implementsflash.events.IEventDispatcher, IIocFacade

IoC capable PureMVC facade which integrates functionalities of Prana and PureMVC frameworks.

Author: Damir Murat
Version: $Revision: 773 $, $Date: 2008-06-15 00:05:58 +0200 (Sun, 15 Jun 2008) $, $Author: dmurat1 $
Since: 0.4



Public Properties
 PropertyDefined by
  container : IConfigurableApplicationContext
[read-only]
IocFacade
Protected Properties
 PropertyDefined by
  m_applicationContext : XMLApplicationContext
IocFacade
  m_dispatcher : EventDispatcher
IocFacade
  m_mediatorNamesMap : Dictionary
IocFacade
  m_proxyNamesMap : Dictionary
IocFacade
Public Methods
 MethodDefined by
  
IocFacade(p_configSource:* = null)
Constructor.
IocFacade
  
addEventListener(p_type:String, p_listener:Function, p_useCapture:Boolean = false, p_priority:int = 0, p_useWeakReference:Boolean = false):void
IocFacade
  
dispatchEvent(p_event:Event):Boolean
IocFacade
  
hasEventListener(p_type:String):Boolean
IocFacade
  
initializeIocContainer(p_configSource:*):void
One time initialization of internal IoC container.
IocFacade
  
registerCommandByConfigName(p_noteName:String, p_configName:String):void
IocFacade
  
registerMediatorByConfigName(p_mediatorName:String, p_viewComponent:Object = null):void
IocFacade
  
registerProxyByConfigName(p_proxyName:String):void
IocFacade
  
removeEventListener(p_type:String, p_listener:Function, p_useCapture:Boolean = false):void
IocFacade
  
removeMediator(p_mediatorName:String):IMediator
IocFacade
  
removeProxy(p_proxyName:String):IProxy
IocFacade
  
willTrigger(p_type:String):Boolean
IocFacade
Protected Methods
 MethodDefined by
  
Enables adding object postprocessors in internal prana container.
IocFacade
  
IocFacade
  
This prevents super constructor from trying to initialize facade to early.
IocFacade
  
IocFacade
  
onObjectFactoryListenerComplete(p_event:Event):void
IocFacade
Property detail
containerproperty
container:IConfigurableApplicationContext  [read-only]Implementation
    public function get container():IConfigurableApplicationContext
m_applicationContextproperty 
protected var m_applicationContext:XMLApplicationContext
m_dispatcherproperty 
protected var m_dispatcher:EventDispatcher
m_mediatorNamesMapproperty 
protected var m_mediatorNamesMap:Dictionary
m_proxyNamesMapproperty 
protected var m_proxyNamesMap:Dictionary
Constructor detail
IocFacade()constructor
public function IocFacade(p_configSource:* = null)

Constructor. IocFacade instance can be constructed with or without p_configSource parameter. If parameter is supplied, instance represents IoC capable facade. Otherwise, it can be used only as ordinary PureMVC facade. This means that all IoC specific methods will throw error.

If p_configSource parameter is not used with constructor, one can enable IoC specific functionalities by invoking "one-time" initializeIocContainer() method. This can be useful in scenarios when is needed to establish control over GUI before IoC container can be initialized, for example during startup.

Parameters
p_configSource:* (default = null) — Optional path to the xml configuration file as a String or as an Array.

Throws
— Error Thrown if singleton instance has already been constructed.

See also

Method detail
addEventListener()method
public function addEventListener(p_type:String, p_listener:Function, p_useCapture:Boolean = false, p_priority:int = 0, p_useWeakReference:Boolean = false):voidParameters
p_type:String
 
p_listener:Function
 
p_useCapture:Boolean (default = false)
 
p_priority:int (default = 0)
 
p_useWeakReference:Boolean (default = false)
dispatchEvent()method 
public function dispatchEvent(p_event:Event):BooleanParameters
p_event:Event

Returns
Boolean
getObjectPostProcessors()method 
protected function getObjectPostProcessors():Array

Enables adding object postprocessors in internal prana container. This implementation adds just IocConfigNameAwarePostProcessor. If this is not desired, one override this method in a subclass.

Returns
Array — Array containing all configured object postprocessors for internal prana container.

See also

hasEventListener()method 
public function hasEventListener(p_type:String):BooleanParameters
p_type:String

Returns
Boolean
initializeController()method 
protected override function initializeController():void
initializeFacade()method 
protected override function initializeFacade():void

This prevents super constructor from trying to initialize facade to early.

initializeIocContainer()method 
public function initializeIocContainer(p_configSource:*):void

One time initialization of internal IoC container. This method can be used only once. Otherwise, it will throw an error. When facade is instantiated with the constructor without parameter, this method should be used for initialization of internal IoC container. If facade is instantiated with constructor and non null parameter, this method will throw an error.

Parameters
p_configSource:* — Optional path to the xml configuration file as a String or as an Array.

Throws
IllegalStateError — Thrown if IoC conatiner is already initialized.
 
IllegalArgumentError — Thrown if parameter p_configSource is null.

See also

initializeIocFacade()method 
protected function initializeIocFacade():void
onObjectFactoryListenerComplete()method 
protected function onObjectFactoryListenerComplete(p_event:Event):voidParameters
p_event:Event
registerCommandByConfigName()method 
public function registerCommandByConfigName(p_noteName:String, p_configName:String):voidParameters
p_noteName:String
 
p_configName:String
registerMediatorByConfigName()method 
public function registerMediatorByConfigName(p_mediatorName:String, p_viewComponent:Object = null):voidParameters
p_mediatorName:String
 
p_viewComponent:Object (default = null)
registerProxyByConfigName()method 
public function registerProxyByConfigName(p_proxyName:String):voidParameters
p_proxyName:String
removeEventListener()method 
public function removeEventListener(p_type:String, p_listener:Function, p_useCapture:Boolean = false):voidParameters
p_type:String
 
p_listener:Function
 
p_useCapture:Boolean (default = false)
removeMediator()method 
public override function removeMediator(p_mediatorName:String):IMediatorParameters
p_mediatorName:String

Returns
IMediator
removeProxy()method 
public override function removeProxy(p_proxyName:String):IProxyParameters
p_proxyName:String

Returns
IProxy
willTrigger()method 
public function willTrigger(p_type:String):BooleanParameters
p_type:String

Returns
Boolean