Phoenix Logo

phoenix_title wx.lib.pubsub.core

Core package of pubsub, holding the publisher, listener, and topic object modules. Functions defined here are used internally by pubsub so that the right modules can be found later, based on the selected messaging protocol.

Indeed some of the API depends on the messaging protocol used. For instance sendMessage(), defined in publisher.py, has a different signature (and hence implementation) for the kwargs protocol than for the arg1 protocol.

The most convenient way to support this is to put the parts of the package that differ based on protocol in separate folder, and add one of those folders to the package’s __path__ variable (defined automatically by the Python interpreter when __init__.py is executed). For instance, code specific to the kwargs protocol goes in the kwargs folder, and code specific to the arg1 protocol in the arg1 folder. Then when doing “from pubsub.core import listener”, the correct listener.py will be found for the specified protocol. The default protocol is kwargs.

Only one protocol can be used in an application. The default protocol, if none is chosen by user, is kwargs, as selected by the call to _prependModulePath() at end of this file.

copyright:Copyright since 2006 by Oliver Schoenborn, all rights reserved.
license:BSD, see LICENSE_BSD_Simple.txt for details.

module_summary Modules Summary

callables Low level functions and classes related to callables.
datamsg
copyright:Copyright since 2006 by Oliver Schoenborn, all rights reserved.
imp2 The _resolve_name and _import_module were taken from the backport of
itopicdefnprovider  
listener Top-level functionality related to message listeners.
listenerbase
copyright:Copyright since 2006 by Oliver Schoenborn, all rights reserved.
listenerimpl
copyright:Copyright since 2006 by Oliver Schoenborn, all rights reserved.
notificationmgr
copyright:Copyright since 2006 by Oliver Schoenborn, all rights reserved.
publisher
copyright:Copyright since 2006 by Oliver Schoenborn, all rights reserved.
publisherbase
copyright:Copyright since 2006 by Oliver Schoenborn, all rights reserved.
publishermixin
copyright:Copyright since 2006 by Oliver Schoenborn, all rights reserved.
topicargspec Definitions related to message data specification.
topicargspecimpl
copyright:Copyright since 2006 by Oliver Schoenborn, all rights reserved.
topicdefnprovider
copyright:Copyright since 2006 by Oliver Schoenborn, all rights reserved.
topicexc
copyright:Copyright since 2006 by Oliver Schoenborn, all rights reserved.
topicmgr Code related to the concept of topic tree and its management: creating
topicmgrimpl
copyright:Copyright since 2006 by Oliver Schoenborn, all rights reserved.
topicobj Provide the Topic class.
topictreetraverser
copyright:Copyright since 2006 by Oliver Schoenborn, all rights reserved.
topicutils Various utilities used by topic-related modules.
treeconfig
copyright:Copyright since 2006 by Oliver Schoenborn, all rights reserved.
validatedefnargs Some topic definition validation functions.
weakmethod This module provides a basic “weak method” implementation, WeakMethod. It uses