mx.modules

# IModuleInfo - AS3 Flex

Package | mx.modules
Interface | public interface IModuleInfo extends IEventDispatcher

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

An interface that acts as a handle for a particular module. From this interface, the module status can be queried, its inner factory can be obtained, and it can be loaded or unloaded.

More examples

Using the ModuleManager class to load modules

Public Properties

| Property | Defined By
--- | --- | ---
|  | data : Object User data that can be associated with the singleton IModuleInfo for a given URL. | IModuleInfo
|  | error : Boolean [read-only] A flag that is true if there was an error during module loading. | IModuleInfo
|  | factory : IFlexModuleFactory [read-only] The IFlexModuleFactory implementation defined in the module. | IModuleInfo
|  | loaded : Boolean [read-only] A flag that is true if the load() method has been called on this module. | IModuleInfo
|  | ready : Boolean [read-only] A flag that is true if the module is sufficiently loaded to get a handle to its associated IFlexModuleFactory implementation and call its create() method. | IModuleInfo
|  | setup : Boolean [read-only] A flag that is true if the module is sufficiently loaded to get a handle to its associated IFlexModuleFactory implementation and call its info() method. | IModuleInfo
|  | url : String [read-only] The URL associated with this module (for example, "MyImageModule.swf" or "http://somedomain.com/modules/MyImageModule.swf". | IModuleInfo

Public Methods
Hide Inherited Public Methods
Show Inherited Public Methods

| Method | Defined By
--- | --- | ---
|  | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void Registers an event listener object with an EventDispatcher object so that the listener receives notification of an event. | IEventDispatcher
|  | dispatchEvent(event:Event):Boolean Dispatches an event into the event flow. | IEventDispatcher
|  | hasEventListener(type:String):Boolean Checks whether the EventDispatcher object has any listeners registered for a specific type of event. | IEventDispatcher
|  | load(applicationDomain:ApplicationDomain = null, securityDomain:SecurityDomain = null, bytes:ByteArray = null, moduleFactory:IFlexModuleFactory = null):void Requests that the module be loaded. | IModuleInfo
|  | publish(factory:IFlexModuleFactory):void Publishes an interface to the ModuleManager. | IModuleInfo
|  | release():void Releases the current reference to the module. | IModuleInfo
|  | removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void Removes a listener from the EventDispatcher object. | IEventDispatcher
|  | unload():void Unloads the module. | IModuleInfo
|  | willTrigger(type:String):Boolean Checks whether an event listener is registered with this EventDispatcher object or any of its ancestors for the specified event type. | IEventDispatcher

Events
Click for more information on events

| Event | Summary | Defined By
--- | --- | --- | ---
|  | error | Dispatched by the backing ModuleInfo if there was an error during module loading. | IModuleInfo
|  | progress | Dispatched by the backing ModuleInfo at regular intervals while the module is being loaded. | IModuleInfo
|  | ready | Dispatched by the backing ModuleInfo once the module is sufficiently loaded to call the IModuleInfo.factory() method and the IFlexModuleFactory.create() method. | IModuleInfo
|  | setup | Dispatched by the backing ModuleInfo once the module is sufficiently loaded to call the IModuleInfo.factory() method and the IFlexModuleFactory.info() method. | IModuleInfo
|  | unload | Dispatched by the backing ModuleInfo when the module data is unloaded. | IModuleInfo

Property Detail

### data

property

`data:Object`

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

User data that can be associated with the singleton IModuleInfo for a given URL.

Implementation
`public function get data():Object`
`public function set data(value:Object):void`

### error

property

`error:Boolean` [read-only]

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

A flag that is `true` if there was an error during module loading.

This flag is `true` when the ModuleManager dispatches the `ModuleEvent.ERROR` event.

Implementation
`public function get error():Boolean`

### factory

property

`factory:IFlexModuleFactory` [read-only]

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

The IFlexModuleFactory implementation defined in the module. This will only be non-`null` after the `ModuleEvent.SETUP` event has been dispatched (or the `IModuleInfo.setup()` method returns `true`). At this point, the `IFlexModuleFactory.info()` method can be called. Once a `ModuleEvent.READY` event is dispatched (or the `IModuleInfo.ready()` method returns `true`), it is possible to call the `IFlexModuleFactory.create()` method.

Implementation
`public function get factory():IFlexModuleFactory`

### loaded

property

`loaded:Boolean` [read-only]

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

A flag that is `true` if the `load()` method has been called on this module.

Implementation
`public function get loaded():Boolean`

### ready

property

`ready:Boolean` [read-only]

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

A flag that is `true` if the module is sufficiently loaded to get a handle to its associated IFlexModuleFactory implementation and call its `create()` method.

This flag is `true` when the ModuleManager dispatches the `ModuleEvent.READY` event.

Implementation
`public function get ready():Boolean`

### setup

property

`setup:Boolean` [read-only]

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

A flag that is `true` if the module is sufficiently loaded to get a handle to its associated IFlexModuleFactory implementation and call its `info()` method.

This flag is `true` when the ModuleManager dispatches the `ModuleEvent.SETUP` event.

Implementation
`public function get setup():Boolean`

### url

property

`url:String` [read-only]

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

The URL associated with this module (for example, "MyImageModule.swf" or "http://somedomain.com/modules/MyImageModule.swf". The URL can be local or remote, but if it is remote, you must establish a trust between the module's domain and the application that loads it.

Implementation
`public function get url():String`
Method Detail

### load

()
method

`public function load(applicationDomain:ApplicationDomain = null, securityDomain:SecurityDomain = null, bytes:ByteArray = null, moduleFactory:IFlexModuleFactory = null):void`

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

Requests that the module be loaded. If the module is already loaded, the call does nothing. Otherwise, the module begins loading and dispatches `progress` events as loading proceeds.

Parameters

| `applicationDomain:ApplicationDomain` (default = `null`)`` — The current application domain in which your code is executing.
| `securityDomain:SecurityDomain` (default = `null`)`` — The current security "sandbox".
| `bytes:ByteArray` (default = `null`)`` — A ByteArray object. The ByteArray is expected to contain the bytes of a SWF file that represents a compiled Module. The ByteArray object can be obtained by using the URLLoader class. If this parameter is specified the module will be loaded from the ByteArray. If this parameter is null the module will be loaded from the url specified in the url property.
| `moduleFactory:IFlexModuleFactory` (default = `null`)`` — The moduleFactory of the caller. One use of the moduleFactory is to determine the parent style manager of the loaded module.

### publish

()
method

`public function publish(factory:IFlexModuleFactory):void`

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

Publishes an interface to the ModuleManager. This allows late (or decoupled) subscriptions to factories with a String handle. Use a URL that starts with `publish://` to reference factories that are published in this manner.

Parameters

| `factory:IFlexModuleFactory` — The class that implements the module's IFlexModuleFactory interface.

Related API Elements

mx.modules.ModuleManager

### release

()
method

`public function release():void`

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

Releases the current reference to the module. This does not unload the module unless there are no other open references to it and the ModuleManager is set up to have only a limited number of loaded modules.

Related API Elements

mx.modules.ModuleManager

### unload

()
method

`public function unload():void`

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

Unloads the module. Flash Player and AIR will not fully unload and garbage collect this module if there are any outstanding references to definitions inside the module.

Event Detail

### error

Event

Event Object Type: `mx.events.ModuleEvent`
property ModuleEvent.type = `mx.events.ModuleEvent.ERROR`

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

Dispatched by the backing ModuleInfo if there was an error during module loading.

Dispatched when there is an error downloading the module. The `ModuleEvent.ERROR` constant defines the value of the `type` property of the event object for an `error` event.

The properties of the event object have the following values:

Property | Value
--- | ---
`bubbles` | false
`bytesLoaded` | Empty
`bytesTotal` | Empty
`cancelable` | false
`currentTarget` | The Object that defines the event listener that handles the event. For example, if you use `myButton.addEventListener()` to register an event listener, myButton is the value of the `currentTarget`.
`errorText` | The error message.
`target` | The Object that dispatched the event; it is not always the Object listening for the event. Use the `currentTarget` property to always access the Object listening for the event.

### progress

Event

Event Object Type: `mx.events.ModuleEvent`
property ModuleEvent.type = `mx.events.ModuleEvent.PROGRESS`

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

Dispatched by the backing ModuleInfo at regular intervals while the module is being loaded.

Dispatched when the module is in the process of downloading. This module is dispatched at regular intervals during the download process. The `ModuleEvent.PROGRESS` constant defines the value of the `type` property of the event object for a `progress` event.

The properties of the event object have the following values:

Property | Value
--- | ---
`bubbles` | false
`bytesLoaded` | The number of bytes loaded.
`bytesTotal` | The total number of bytes to load.
`cancelable` | false
`currentTarget` | The Object that defines the event listener that handles the event. For example, if you use `myButton.addEventListener()` to register an event listener, myButton is the value of the `currentTarget`.
`errorText` | Empty
`target` | The Object that dispatched the event; it is not always the Object listening for the event. Use the `currentTarget` property to always access the Object listening for the event.

### ready

Event

Event Object Type: `mx.events.ModuleEvent`
property ModuleEvent.type = `mx.events.ModuleEvent.READY`

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

Dispatched by the backing ModuleInfo once the module is sufficiently loaded to call the `IModuleInfo.factory()` method and the `IFlexModuleFactory.create()` method.

Dispatched when the module has finished downloading. The `ModuleEvent.READY` constant defines the value of the `type` property of the event object for a `complete` event.

The properties of the event object have the following values:

Property | Value
--- | ---
`bubbles` | false
`bytesLoaded` | The number of bytes loaded.
`bytesTotal` | The total number of bytes to load.
`cancelable` | false
`currentTarget` | The Object that defines the event listener that handles the event. For example, if you use `myButton.addEventListener()` to register an event listener, myButton is the value of the `currentTarget`.
`errorText` | Empty
`target` | The Object that dispatched the event; it is not always the Object listening for the event. Use the `currentTarget` property to always access the Object listening for the event.

### setup

Event

Event Object Type: `mx.events.ModuleEvent`
property ModuleEvent.type = `mx.events.ModuleEvent.SETUP`

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

Dispatched by the backing ModuleInfo once the module is sufficiently loaded to call the `IModuleInfo.factory()` method and the `IFlexModuleFactory.info()` method.

Dispatched when enough of a module has been downloaded that you can get information about the module. You do this by calling the `IFlexModuleFactory.info()` method on the module. The `ModuleEvent.SETUP` constant defines the value of the `type` property of the event object for a `setup` event.

The properties of the event object have the following values:

Property | Value
--- | ---
`bubbles` | false
`bytesLoaded` | Empty
`bytesTotal` | Empty
`cancelable` | false
`currentTarget` | The Object that defines the event listener that handles the event. For example, if you use `myButton.addEventListener()` to register an event listener, myButton is the value of the `currentTarget`.
`errorText` | An error message.
`target` | The Object that dispatched the event; it is not always the Object listening for the event. Use the `currentTarget` property to always access the Object listening for the event.

### unload

Event

Event Object Type: `mx.events.ModuleEvent`
property ModuleEvent.type = `mx.events.ModuleEvent.UNLOAD`

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

Dispatched by the backing ModuleInfo when the module data is unloaded.

Dispatched when the module is unloaded. The `ModuleEvent.UNLOAD` constant defines the value of the `type` property of the event object for an `unload` event.

The properties of the event object have the following values:

Property | Value
--- | ---
`bubbles` | false
`bytesLoaded` | Empty
`bytesTotal` | Empty
`cancelable` | false
`currentTarget` | The Object that defines the event listener that handles the event. For example, if you use `myButton.addEventListener()` to register an event listener, myButton is the value of the `currentTarget`.
`errorText` | An error message.
`target` | The Object that dispatched the event; it is not always the Object listening for the event. Use the `currentTarget` property to always access the Object listening for the event.

© 2015 Adobe Systems Incorporated. All rights reserved.
Mon Apr 10 2017, 12:28 PM -07:00