| Package | org.puremvc.as3.patterns.command |
| Class | public class MacroCommand |
| Inheritance | MacroCommand Notifier |
| Implements | ICommand, INotifier |
ICommand implementation that executes other ICommands.
A MacroCommand maintains an list of
ICommand Class references called SubCommands.
When execute is called, the MacroCommand
instantiates and calls execute on each of its SubCommands turn.
Each SubCommand will be passed a reference to the original
INotification that was passed to the MacroCommand's
execute method.
Unlike SimpleCommand, your subclass
should not override execute, but instead, should
override the initializeMacroCommand method,
calling addSubCommand once for each SubCommand
to be executed.
See also
| Method | Defined by | ||
|---|---|---|---|
|
Constructor.
| MacroCommand | ||
|
execute(notification:INotification):void
Execute this
MacroCommand's SubCommands. | MacroCommand | ||
![]() |
sendNotification(notificationName:String, body:Object = null, type:String = null):void
Create and send an
INotification. | Notifier | |
| Method | Defined by | ||
|---|---|---|---|
|
addSubCommand(commandClassRef:Class):void
Add a SubCommand.
| MacroCommand | ||
|
initializeMacroCommand():void
Initialize the
MacroCommand. | MacroCommand | ||
| MacroCommand | () | constructor |
public function MacroCommand()Constructor.
You should not need to define a constructor,
instead, override the initializeMacroCommand
method.
If your subclass does define a constructor, be
sure to call super().
| addSubCommand | () | method |
protected function addSubCommand(commandClassRef:Class):voidAdd a SubCommand.
The SubCommands will be called in First In/First Out (FIFO) order.
ParameterscommandClassRef:Class — a reference to the Class of the ICommand.
|
| execute | () | method |
public final function execute(notification:INotification):void
Execute this MacroCommand's SubCommands.
The SubCommands will be called in First In/First Out (FIFO) order.
Parametersnotification:INotification — the INotification object to be passsed to each SubCommand.
|
| initializeMacroCommand | () | method |
protected function initializeMacroCommand():void
Initialize the MacroCommand.
In your subclass, override this method to
initialize the MacroCommand's SubCommand
list with ICommand class references like
this:
// Initialize MyMacroCommand
override protected function initializeMacroCommand( ) : void
{
addSubCommand( com.me.myapp.controller.FirstCommand );
addSubCommand( com.me.myapp.controller.SecondCommand );
addSubCommand( com.me.myapp.controller.ThirdCommand );
}
Note that SubCommands may be any ICommand implementor,
MacroCommands or SimpleCommands are both acceptable.