Module PluginManager
source code
The basic interface and implementation for a plugin manager.
Also define the basic mechanism to add functionalities to the base
PluginManager. A few principles to follow in this case:
If the new functionalities do not overlap the ones already
implemented, then they must be implemented as a Decorator class of the
base plugin. This should be done by inheriting the
PluginManagerDecorator.
If this previous way is not possible, then the functionalities should
be added as a subclass of PluginManager.
The first method is highly prefered since it makes it possible to have
a more flexible design where one can pick several functionalities and
litterally add them to get an object corresponding to one's precise
needs.
|
PluginInfo
Gather some info about a plugin such as its name, author,
description...
|
|
PluginManager
Manage several plugins by ordering them in several categories.
|
|
PluginManagerDecorator
Make it possible to add several responsibilities to a plugin
manager object in a more flexible way than by mere
subclassing.
|
|
PluginManagerSingleton
Singleton version of the most basic plugin manager.
|
|
PLUGIN_NAME_FORBIDEN_STRING = ' ;; '
|