Notifier
open class Notifier : INotifier
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: In the MultiCore version of the framework, 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.
@see org.puremvc.swift.multicore.patterns.proxy.Proxy Proxy
@see org.puremvc.swift.multicore.patterns.facade.Facade Facade
@see org.puremvc.swift.multicore.patterns.mediator.Mediator Mediator
@see org.puremvc.swift.multicore.patterns.command.MacroCommand MacroCommand
@see org.puremvc.swift.multicore.patterns.command.SimpleCommand SimpleCommand
-
Message constant
Declaration
Swift
open class var MULTITON_MSG: String { get }
-
Reference to the Facade Multiton
Declaration
Swift
open lazy var facade: IFacade { get set }
-
Constructor
Declaration
Swift
public init()
-
Create and send an
INotification
.Keeps us from having to construct new INotification instances in our implementation code.
Declaration
Swift
open func sendNotification(_ notificationName: String, body: Any, type: String)
Parameters
notificationName
the name of the notification to send
body
the body of the notification (optional)
type
the type of the notification (optional)
-
Create and send an
INotification
.Keeps us from having to construct new INotification instances in our implementation code.
Declaration
Swift
open func sendNotification(_ notificationName: String, body: Any)
Parameters
notificationName
the name of the notification to send
body
the body of the notification (optional)
-
Create and send an
INotification
.Keeps us from having to construct new INotification instances in our implementation code.
Declaration
Swift
open func sendNotification(_ notificationName: String)
Parameters
notificationName
the name of the notification to send
-
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.
Declaration
Swift
open func initializeNotifier(_ key: String)
Parameters
key
the multitonKey for this INotifier to use