Plugin system for Twisted.
| Authors | Jp Calderone | |
| Glyph Lefkowitz | ||
| Interface | IPlugin |
Interface that must be implemented by all plugins. |
| Class | CachedPlugin |
Undocumented |
| Class | CachedDropin |
A collection of CachedPlugin instances from a particular module in a plugin package. |
| Function | fromkeys |
Undocumented |
| Function | getCache |
Compute all the possible loadable plugins, while loading as few as possible and hitting the filesystem as little as possible. |
| Function | getPlugins |
Retrieve all plugins implementing the given interface beneath the given module. |
| Function | pluginPackagePaths |
Return a list of additional directories which should be searched for modules to be included as part of the named plugin package. |
| Function | _generateCacheEntry |
Undocumented |
| Function | _pluginsPackage |
Undocumented |
| Variable | _TInterface |
Undocumented |
Compute all the possible loadable plugins, while loading as few as possible and hitting the filesystem as little as possible.
| Parameters | module | a Python module object. This represents a package to search for plugins. |
| Returns | a dictionary mapping module names to CachedDropin instances. | |
Retrieve all plugins implementing the given interface beneath the given module.
| Parameters | interface | An interface class. Only plugins which implement this interface will be returned. (type: Type[_TInterface]) |
| package | A package beneath which plugins are installed. For most uses, the default value is correct. (type: Optional[types.ModuleType]) | |
| Returns | An iterator of plugins. (type: Iterable[_TInterface]) | |
Return a list of additional directories which should be searched for modules to be included as part of the named plugin package.
| Parameters | name | The fully-qualified Python name of a plugin package, eg 'twisted.plugins'. (type: str) |
| Returns | The absolute paths to other directories which may contain plugin modules for the named plugin package. (type: list of str) | |