A Base INotifier
implementation.
More...
#include <pmvcpp.h>
Public Member Functions | |
void | sendNotification (int notificationName, void *body, int notificationType) |
Create and send an INotification . | |
void | sendNotification (int notificationName, int notificationType) |
Send a INotification . | |
void | sendNotification (int notificationName, void *body) |
Send a INotification . | |
void | sendNotification (int notificationName) |
Send a INotification . | |
void | initializeNotifier (std::string key) |
Initialize this INotifier instance. | |
virtual void | setMultitonKey (std::string key) |
Set multiton key. | |
virtual std::string | getMultitonKey () |
Get multiton key. | |
Protected Member Functions | |
IFacade * | getFacade () |
A Base INotifier
implementation.
MacroCommand, Command, Mediator
and Proxy
all have a need to send Notifications
.
The INotifier
interface provides a common method called sendNotification
that relieves implementation code of the necessity to actually construct Notifications
.
The Notifier
class, which all of the above mentioned classes extend, provides an initialized reference to the Facade
Multiton, which is required for the convienience method for sending Notifications
, but also eases implementation as these classes have frequent Facade
interactions and usually require access to the facade anyway.
NOTE: There is one caveat to notifiers, they cannot send notifications or reach the facade until they have a valid multitonKey.
The multitonKey is set: * on a Command when it is executed by the Controller * on a Mediator is registered with the View * on a Proxy is registered with the Model.
std::string MultitonKeyHeir::getMultitonKey | ( | ) | [virtual, inherited] |
Get multiton key.
Returns the multiton key.
Implements PureMVC::IMultitonKeyHeir.
void Notifier::initializeNotifier | ( | std::string | key | ) | [virtual] |
Initialize this INotifier instance.
This is how a Notifier gets its multitonKey. Calls to sendNotification or to access the facade will fail until after this method has been called.
Mediators, Commands or Proxies may override this method in order to send notifications or access the Multiton Facade instance as soon as possible. They CANNOT access the facade in their constructors, since this method will not yet have been called.
key | the multitonKey for this INotifier to use |
Implements PureMVC::INotifier.
void Notifier::sendNotification | ( | int | notificationName | ) | [virtual] |
Send a INotification
.
Convenience method to prevent having to construct new notification instances in our implementation code.
notificationName | the name of the notification to send |
Implements PureMVC::INotifier.
void Notifier::sendNotification | ( | int | notificationName, | |
void * | body | |||
) | [virtual] |
Send a INotification
.
Convenience method to prevent having to construct new notification instances in our implementation code.
notificationName | the name of the notification to send | |
body | the body of the notification (optional) |
Implements PureMVC::INotifier.
void Notifier::sendNotification | ( | int | notificationName, | |
int | notificationType | |||
) | [virtual] |
Send a INotification
.
Convenience method to prevent having to construct new notification instances in our implementation code.
notificationName | the name of the notification to send | |
type | the type of the notification (optional) |
Implements PureMVC::INotifier.
void Notifier::sendNotification | ( | int | notificationName, | |
void * | body, | |||
int | notificationType | |||
) | [virtual] |
Create and send an INotification
.
Keeps us from having to construct new INotification instances in our implementation code.
notificationName | the name of the notiification to send | |
body | the body of the notification (optional) | |
type | the type of the notification (optional) |
Implements PureMVC::INotifier.
void MultitonKeyHeir::setMultitonKey | ( | std::string | key | ) | [virtual, inherited] |
Set multiton key.
Sets the multiton key.
key | The name of the key |
Implements PureMVC::IMultitonKeyHeir.