wx.lib.pubsub.utils.notification.NotifyByPubsubMessage¶
Handle pubsub notification messages by generating messages of a ‘pubsub.’ subtopic. Also provides an example of how to create a notification handler.
Use it by calling:
import pubsub.utils
pubsub.utils.useNotifyByPubsubMessage()
...
pub.setNotificationFlags(...) # optional
E.g. whenever a listener is unsubscribed, a ‘pubsub.unsubscribe’ message is generated. If you have subscribed a listener of this topic, your listener will be notified of what listener unsubscribed from what topic.
Class Hierarchy¶
Known Superclasses¶
wx.lib.pubsub.core.notificationmgr.INotificationHandler
Methods Summary¶
Initialize self. See help(type(self)) for accurate signature. |
|
Create the notification topics. The root of the topics created |
|
Called when a listener has been garbage collected. |
|
Called whenever a topic is removed from topic tree. |
|
Called whenever a new topic is added to the topic tree. |
|
Stage must be ‘pre’ or ‘post’. Note that any pubsub sendMessage |
|
Called when a listener is subscribed to a topic. |
|
Called when a listener is unsubscribed from given topic. |
Class API¶
- class NotifyByPubsubMessage(INotificationHandler)¶
Handle pubsub notification messages by generating messages of a ‘pubsub.’ subtopic. Also provides an example of how to create a notification handler.
Use it by calling:
import pubsub.utils pubsub.utils.useNotifyByPubsubMessage() ... pub.setNotificationFlags(...) # optional
E.g. whenever a listener is unsubscribed, a ‘pubsub.unsubscribe’ message is generated. If you have subscribed a listener of this topic, your listener will be notified of what listener unsubscribed from what topic.
Methods¶
- __init__(self, topicMgr=None)¶
Initialize self. See help(type(self)) for accurate signature.
- createNotificationTopics(self, topicMgr)¶
Create the notification topics. The root of the topics created is self.topicRoot. The topicMgr is (usually) pub.topicMgr.
- notifyDeadListener(self, pubListener, topicObj)¶
Called when a listener has been garbage collected. :param pubListener: the pubsub.core.Listener that wraps GC’d listener. :param topicObj: the pubsub.core.Topic object it was subscribed to.
- notifyDelTopic(self, topicName)¶
Called whenever a topic is removed from topic tree. :param topicName: name of topic removed.
- notifyNewTopic(self, topicObj, desc, required, argsDocs)¶
Called whenever a new topic is added to the topic tree. :param topicObj: the Topic object for the message. :param description: docstring for the topic. :param required: list of message data names (keys in argsDocs) that are required. :param argsDocs: dictionary of all message data names, with the corresponding docstring.
- notifySend(self, stage, topicObj, pubListener=None)¶
Stage must be ‘pre’ or ‘post’. Note that any pubsub sendMessage operation resulting from this notification (which sends a message; listener could handle by sending another message!) will NOT themselves lead to a send notification.
- notifySubscribe(self, pubListener, topicObj, newSub)¶
Called when a listener is subscribed to a topic. :param pubListener: the pubsub.core.Listener that wraps subscribed listener. :param topicObj: the pubsub.core.Topic object subscribed to. :param newSub: false if pubListener was already subscribed.
- notifyUnsubscribe(self, pubListener, topicObj)¶
Called when a listener is unsubscribed from given topic. :param pubListener: the pubsub.core.Listener that wraps unsubscribed listener. :param topicObj: the pubsub.core.Topic object unsubscribed from.