Packagemx.core
Interfacepublic interface IFlexModuleFactory
Implementors SystemManager

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

The IFlexModuleFactory interface represents the contract expected for bootstrapping Flex applications and dynamically loaded modules.

Calling the info() method is legal immediately after the complete event is dispatched.

A well-behaved module dispatches a ready event when it is safe to call the create() method.



Public Properties
 PropertyDefined By
  allowDomainsInNewRSLs : Boolean
Controls whether the domains allowed by calls to allowDomain() are also allowed by RSLs loaded after the call.
IFlexModuleFactory
  allowInsecureDomainsInNewRSLs : Boolean
Controls whether the domains allowed by calls to allowInsecureDomain() are also allowed by RSLs loaded after the call.
IFlexModuleFactory
  preloadedRSLs : Dictionary
[read-only] The RSLs loaded by this SystemManager or FlexModuleFactory before the application starts.
IFlexModuleFactory
Public Methods
 MethodDefined By
  
addPreloadedRSL(loaderInfo:LoaderInfo, rsl:Vector.<RSLData>):void
Adds an RSL to the preloadedRSLs list.
IFlexModuleFactory
  
allowDomain(... domains):void
Calls the Security.allowDomain() method for the SWF associated with this IFlexModuleFactory plus all the SWFs associated with RSLs preloaded by this IFlexModuleFactory.
IFlexModuleFactory
  
allowInsecureDomain(... domains):void
Calls the Security.allowInsecureDomain() method for the SWF associated with this IFlexModuleFactory plus all the SWFs associated with RSLs preloaded by this IFlexModuleFactory.
IFlexModuleFactory
  
callInContext(fn:Function, thisArg:Object, argArray:Array, returns:Boolean = true):*
A way to call a method in this IFlexModuleFactory's context
IFlexModuleFactory
  
create(... parameters):Object
A factory method that requests an instance of a definition known to the module.
IFlexModuleFactory
  
getImplementation(interfaceName:String):Object
Get the implementation for an interface.
IFlexModuleFactory
  
info():Object
Returns a block of key/value pairs that hold static data known to the module.
IFlexModuleFactory
  
registerImplementation(interfaceName:String, impl:Object):void
Register an implementation for an interface.
IFlexModuleFactory
Property Detail
allowDomainsInNewRSLsproperty
allowDomainsInNewRSLs:Boolean

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10.2, AIR 2.6

Controls whether the domains allowed by calls to allowDomain() are also allowed by RSLs loaded after the call. Additional RSLs may be loaded into this module factory by sub-applications or modules.

The default value is true.


Implementation
    public function get allowDomainsInNewRSLs():Boolean
    public function set allowDomainsInNewRSLs(value:Boolean):void
allowInsecureDomainsInNewRSLsproperty 
allowInsecureDomainsInNewRSLs:Boolean

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10.2, AIR 2.6

Controls whether the domains allowed by calls to allowInsecureDomain() are also allowed by RSLs loaded after the call. Additional RSLs may be added to this module factory by sub-applications or modules.

The default value is true.


Implementation
    public function get allowInsecureDomainsInNewRSLs():Boolean
    public function set allowInsecureDomainsInNewRSLs(value:Boolean):void
preloadedRSLsproperty 
preloadedRSLs:Dictionary  [read-only]

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 10, AIR 1.5

The RSLs loaded by this SystemManager or FlexModuleFactory before the application starts. This dictionary may also include RSLs loaded into this module factory's application domain by other modules or sub-applications. When a new dictionary entry is added by a child module factory an RSLEvent.RSL_ADD_PRELOADED event is dispatched by module factory owning the dictionary. Information about preloadedRSLs is stored in a Dictionary. The key is the RSL's LoaderInfo. The value is the a Vector of RSLData where the first element is the primary RSL and the remaining elements are failover RSLs.


Implementation
    public function get preloadedRSLs():Dictionary
Method Detail
addPreloadedRSL()method
public function addPreloadedRSL(loaderInfo:LoaderInfo, rsl:Vector.<RSLData>):void

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10.2, AIR 2.6

Adds an RSL to the preloadedRSLs list. This method is called by child module factories when they add load an RSL into this module factory's application domain.

You do not call this method directly. This method is called by child module factories when they add load an RSL into this module factory's application domain.

Parameters

loaderInfo:LoaderInfo — The loaderInfo of the loaded RSL.
 
rsl:Vector.<RSLData> — The RSL's configuration information. A Vector of RSLData. The first element in the array is the primary RSL. The remaining elements are failover RSLs.

allowDomain()method 
public function allowDomain(... domains):void

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10.2, AIR 2.6

Calls the Security.allowDomain() method for the SWF associated with this IFlexModuleFactory plus all the SWFs associated with RSLs preloaded by this IFlexModuleFactory. RSLs loaded after this call will, by default, allow the same domains as have been allowed by previous calls to this method. This behavior is controlled by the allowDomainsInNewRSLs property.

Parameters

... domains — One or more strings or URLRequest objects that name the domains from which you want to allow access. You can specify the special domain "*" to allow access from all domains.

See also

flash.system.Security.allowDomain()
allowInsecureDomain()method 
public function allowInsecureDomain(... domains):void

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10.2, AIR 2.6

Calls the Security.allowInsecureDomain() method for the SWF associated with this IFlexModuleFactory plus all the SWFs associated with RSLs preloaded by this IFlexModuleFactory. RSLs loaded after this call will, by default, allow the same domains as have been allowed by previous calls to this method. This behavior is controlled by the allowInsecureDomainsInNewRSLs property.

Parameters

... domains — One or more strings or URLRequest objects that name the domains from which you want to allow access. You can specify the special domain "*" to allow access from all domains.

See also

flash.system.Security.allowInsecureDomain()
callInContext()method 
public function callInContext(fn:Function, thisArg:Object, argArray:Array, returns:Boolean = true):*

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 10, AIR 1.5

A way to call a method in this IFlexModuleFactory's context

Parameters

fn:Function — The function or method to call.
 
thisArg:Object — The this pointer for the function.
 
argArray:Array — The arguments for the function.
 
returns:Boolean (default = true) — If true, the function returns a value.

Returns
* — Whatever the function returns, if anything.

See also

Function.apply
create()method 
public function create(... parameters):Object

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

A factory method that requests an instance of a definition known to the module.

You can provide an optional set of parameters to let building factories change what they create based on the input. Passing null indicates that the default definition is created, if possible.

Parameters

... parameters — An optional list of arguments. You can pass any number of arguments, which are then stored in an Array called parameters.

Returns
Object — An instance of the module, or null.
getImplementation()method 
public function getImplementation(interfaceName:String):Object

Language Version : ActionScript 3.0
Product Version : Flex 4
Runtime Versions : Flash Player 10, AIR 1.5

Get the implementation for an interface. Similar to Singleton.getInstance() method, but per- IFlexModuleFactory.

Parameters

interfaceName:String — The interface.

Returns
Object — The implementation for the interface.
info()method 
public function info():Object

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Returns a block of key/value pairs that hold static data known to the module. This method always succeeds, but can return an empty object.

Returns
Object — An object containing key/value pairs. Typically, this object contains information about the module or modules created by this factory; for example:
      return {"description": "This module returns 42."};
      
Other common values in the returned object include the following:
  • fonts: A list of embedded font faces.
  • rsls: A list of run-time shared libraries.
  • mixins: A list of classes initialized at startup.
registerImplementation()method 
public function registerImplementation(interfaceName:String, impl:Object):void

Language Version : ActionScript 3.0
Product Version : Flex 4
Runtime Versions : Flash Player 10, AIR 1.5

Register an implementation for an interface. Similar to the Singleton.registerClass() method, but per- IFlexModuleFactory, and takes an instance not a class.

Parameters

interfaceName:String — The interface.
 
impl:Object — The implementation.