Packageorg.mvcexpress.core
Classpublic class MediatorMap
InheritanceMediatorMap Inheritance Object
Implements IMediatorMap
Subclasses FlexMediatorMap

Handles application mediators.



Protected Properties
 PropertyDefined By
  mediatorClassRegistry : Dictionary
MediatorMap
  mediatorInjectRegistry : Dictionary
MediatorMap
  mediatorRegistry : Dictionary
MediatorMap
  messenger : Messenger
MediatorMap
  proxyMap : ProxyMap
MediatorMap
Public Methods
 MethodDefined By
  
MediatorMap($moduleName:String, $messenger:Messenger, $proxyMap:ProxyMap)
CONSTRUCTOR
MediatorMap
  
isMapped(viewClass:Class, mediatorClass:Class):Boolean
Checks if mediator class is mapped to view class.
MediatorMap
  
isMediated(viewObject:Object):Boolean
Checks if view object is mediated.
MediatorMap
  
listMappings():String
Returns String of all view classes that are mapped to mediator classes.
MediatorMap
  
map(viewClass:Class, mediatorClass:Class, injectClass:Class = null):void
Maps mediator class to view class.
MediatorMap
  
mediate(viewObject:Object):void
Mediates provided viewObject with mapped mediator.
MediatorMap
  
mediateWith(viewObject:Object, mediatorClass:Class, injectClass:Class = null):void
Mediates viewObject with specified mediator class.
MediatorMap
  
unmap(viewClass:Class):void
Unmaps any mediator class to given view class.
MediatorMap
  
unmediate(viewObject:Object):void
Unmediated view object If any mediator is mediating viewObject - it calls onRemove on that mediator, automatically removes all message handlers, all event listeners and disposes it.
MediatorMap
Property Detail
mediatorClassRegistryproperty
protected var mediatorClassRegistry:Dictionary

mediatorInjectRegistryproperty 
protected var mediatorInjectRegistry:Dictionary

mediatorRegistryproperty 
protected var mediatorRegistry:Dictionary

messengerproperty 
protected var messenger:Messenger

proxyMapproperty 
protected var proxyMap:ProxyMap

Constructor Detail
MediatorMap()Constructor
public function MediatorMap($moduleName:String, $messenger:Messenger, $proxyMap:ProxyMap)

CONSTRUCTOR

Parameters
$moduleName:String
 
$messenger:Messenger
 
$proxyMap:ProxyMap
Method Detail
isMapped()method
public function isMapped(viewClass:Class, mediatorClass:Class):Boolean

Checks if mediator class is mapped to view class.

Parameters

viewClass:Class — view class that has to be mediated by mediator class then mediate(viewObject) is called.
 
mediatorClass:Class — Mediator class that will be instantiated then viewClass object is passed to mediate function.

Returns
Boolean — true if view class is already mapped to mediator class.
isMediated()method 
public function isMediated(viewObject:Object):Boolean

Checks if view object is mediated.

Parameters

viewObject:Object — View object to check if it is mediated.

Returns
Boolean
listMappings()method 
public function listMappings():String

Returns String of all view classes that are mapped to mediator classes. (for debugging)

Returns
String — Text with all mapped mediators.
map()method 
public function map(viewClass:Class, mediatorClass:Class, injectClass:Class = null):void

Maps mediator class to view class. Only one mediator class can mediate single instance of view class.

Parameters

viewClass:Class — view class that has to be mediated by mediator class then mediate() is called on the view object.
 
mediatorClass:Class — mediator class that will be instantiated then viewClass object is passed to mediate() function.
 
injectClass:Class (default = null) — inject mediator as this class.

mediate()method 
public function mediate(viewObject:Object):void

Mediates provided viewObject with mapped mediator. Automatically instantiates mediator class(if mapped), handles all injections(including viewObject), and calls onRegister function. Throws error if mediator class is not mapped to viewObject class.

Parameters

viewObject:Object — view object to mediate.

mediateWith()method 
public function mediateWith(viewObject:Object, mediatorClass:Class, injectClass:Class = null):void

Mediates viewObject with specified mediator class. It is usually better practice to use 2 step mediation(map(), mediate()) instead of this function. But sometimes it is not possible.

Parameters

viewObject:Object — view object to mediate.
 
mediatorClass:Class — mediator class that will be instantiated and used to mediate view object
 
injectClass:Class (default = null) — inject mediator as this class.

unmap()method 
public function unmap(viewClass:Class):void

Unmaps any mediator class to given view class. If view is not mediated - it will fail silently.

Parameters

viewClass:Class — view class to remove mapped mediator class from.

unmediate()method 
public function unmediate(viewObject:Object):void

Unmediated view object If any mediator is mediating viewObject - it calls onRemove on that mediator, automatically removes all message handlers, all event listeners and disposes it.

Parameters

viewObject:Object — view object witch mediator will be destroyed.