| Trees | Indices | Help |
|
|---|
|
|
The plugin registry is responsible for finding, loading, downloading, enabling plugins and providing facilities to access their contents and properties.
New plugins can be developed outside of Moovida's code to provide new functionalities. Base classes are defined to standardize common functionalities that are likely to be reused.
DOCME more.
| Instance Methods | |||
|
|||
|
|||
|
|||
twisted.internet.defer.Deferred
|
|
||
|
|||
|
|||
twisted.internet.defer.Deferred
|
|
||
twisted.internet.defer.Deferred
|
|
||
twisted.internet.defer.Deferred
|
|
||
generator
|
|
||
generator
|
|
||
generator
|
|
||
| pkg_resources.Distribution |
|
||
|
|||
|
|||
|
|||
bool
|
|
||
| elisa.core.utils.defer.Deferred |
|
||
list
|
|
||
| elisa.core.utils.defer.Deferred |
|
||
| elisa.core.utils.defer.Deferred |
|
||
| elisa.core.utils.defer.Deferred |
|
||
| elisa.core.utils.defer.Deferred |
|
||
| elisa.core.component.Component or a subclass |
|
||
|
Inherited from Inherited from |
|||
| Class Variables | |
config_section_name = 'plugin_registry'
|
|
default_config = {'repository': 'http://plugins.moovida.com/pl
|
|
config_doc = {'repository': 'The plugin repository to query fo
|
|
|
Inherited from |
|
| Properties | |
|
Inherited from |
| Method Details |
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
|
Load plugins from self.plugin_dirs.
Attention: This function should be called as early as possible at startup, before using any plugin. Notes:
|
Load a given plugin in elisa.
|
Unload a given plugin from elisa.
|
Register a callback to be fired upon (de)activation of a plugin. This
callback will be passed the plugin (pkg_resources.Distribution) and the new status
(
|
Unregister a callback that was previously registered to be fired upon (de)activation of a plugin.
|
Enable all the plugins that should be enabled.
Attention: this method can be called only once and should be called upon startup of the application, after load_plugins. |
Enable a plugin.
|
Disable a plugin.
|
Get the list of available plugins. This call returns (plugin_name, status) tuples, where status is
|
Get the list of enabled plugins.
|
Get the names of the installed plugins.
|
Return the plugin matching a given name.
|
Read and populate the metadata of a plugin.
|
|
|
Load the cached information about downloadable plugins.
|
Update the cached information about downloadable plugins. At present only one remote, hardcoded repository is supported.
|
The list of downloadable plugins. Each plugin is represented as a Python dictionary.
|
Download one plugin. A plugin is represented with a dictionary. Some expected keys are listed at http://www.moovida.com/wiki/Specs/PluginsMetadata. Here we just rely on 'egg_name' and 'uri'. If they change, this code will simply break.
|
Install a plugin from a local egg file. If needed, the egg file will be copied over to the local plugins directory and the older version of the plugin will be unloaded. The plugin will then be loaded and enabled.
|
Update an installed plugin for which a newer version is available in the plugin repository. Updating a plugin will disable the current version if needed, unload it, download the new version, load it and enable it.
Attention: this code assumes that the plugin to update is currently installed and that the plugin repository actually provides a newer version. Behaviour outside of these constraints is undefined. |
Download and install all the recommended plugins. This will typically happen when first running Elisa after installation, if the user selected the 'Install Recommended Plugins' option in the installer.
|
Create a component given its path. The path is in module:Component syntax, eg elisa.plugins.my_plugin:MyComponent.
|
| Class Variable Details |
default_config
|
config_doc
|
| Trees | Indices | Help |
|
|---|
| Generated by Epydoc 3.0.1 on Tue Dec 1 10:54:31 2009 | http://epydoc.sourceforge.net |