type MacroCommand
source code
object --+
|
interfaces.INotifier --+
|
observer.Notifier --+
|
interfaces.ICommand --+
|
interfaces.INotifier --+
|
MacroCommand
A base ICommand
implementation that executes other
ICommand
s.
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.
MacroCommand Constructor
You should not need to define a constructor, instead, override the
initializeMacroCommand method.
- Overrides:
observer.Notifier.__init__
|
Initialize the MacroCommand .
In your subclass, override this method to initialize the
MacroCommand 's SubCommand list with
ICommand class references like this:
Note that SubCommands may be any ICommand
implementor, MacroCommand s or SimpleCommands
are both acceptable.
|
Add a SubCommand.
The SubCommands will be called in First In/First Out (FIFO)
order.
- Parameters:
commandClassRef - a reference to the Class of the
ICommand .
|
Execute this MacroCommand 's SubCommands.
The SubCommands will be called in First In/First Out (FIFO)
order.
- Parameters:
notification - the INotification object to be passsed to each
SubCommand.
- Overrides:
interfaces.ICommand.execute
|