Packageorg.spicefactory.parsley.messaging.tag
Classpublic class MessageDispatcherDecorator
InheritanceMessageDispatcherDecorator Inheritance Object
Implements ObjectDefinitionDecorator

Represents a Metadata, MXML or XML tag that can be used on properties where a message dispatcher function should be injected. This is an alternative to declaring managed events, useful when working with message types which do not extend flash.events.Event.



Public Properties
 PropertyDefined By
  property : String
The name of the property.
MessageDispatcherDecorator
  scope : String
The scope messages should be dispatched through.
MessageDispatcherDecorator
Public Methods
 MethodDefined By
  
Method to be invoked by the container for each configuration tag it encounters for an object that was added to the container.
MessageDispatcherDecorator
Property Detail
propertyproperty
public var property:String

The name of the property.

scopeproperty 
public var scope:String

The scope messages should be dispatched through. If this attribute is omitted the message will be dispatched through all scopes of the corresponding Context.

Method Detail
decorate()method
public function decorate(builder:ObjectDefinitionBuilder):void

Method to be invoked by the container for each configuration tag it encounters for an object that was added to the container. It doesn't matter whether it is a builtin configuration tag or a custom extension tag, or whether it is a metadata tag, an MXML or XML tag. As long as the tag is mapped to a class that implements this interface the container will invoke it for each tag on each object.

The builder parameter getting passed to the decorator can be used to customize the ObjectDefinition that is currently getting processed. In most custom tag implementations you will peform tasks like specifying constructor arguments, property values, message receivers, custom lifecycle processors or instantiators.

A decorator is also allowed to register additional definitions through using builder.newBuilder. Those additional definitions might describe collaborators that the processed definition will need to operate for example. If you want to register collaborators that are globally accessible (or within a certain scope) you may consider adding them to the ScopeExtensionRegistry in the GlobalFactoryRegistry instead.

Parameters

builder:ObjectDefinitionBuilder — the builder that can be used to modify the target definition