pluginmanager module¶
|
|
|
|
|
- class RepoPlugin(handle: LP_BNRepoPlugin)[source]¶
Bases:
object
RepoPlugin
is mostly read-only, however you can install/uninstall enable/disable plugins. RepoPlugins are created by parsing the plugins.json in a plugin repository.- Parameters:
handle (LP_BNRepoPlugin) –
- enable(force: bool = False) bool [source]¶
Enable this plugin, optionally trying to force it. Force loading a plugin with ignore platform and api constraints. (e.g. The plugin author says the plugin will only work on Linux-python3 but you’d like to attempt to load it on Macos-python2)
- install_instructions(platform: str) Optional[str] [source]¶
Installation instructions for the given platform
- property delete_pending: bool¶
Boolean status indicating that the plugin will be deleted after the next restart
- property dependencies_being_installed: bool¶
Boolean status indicating that the plugin’s dependencies are currently being installed
- property disable_pending: bool¶
Boolean status indicating that the plugin will be disabled after the next restart
- property plugin_types: List[PluginType]¶
List of PluginType enumeration objects indicating the plugin type(s)
- property subdir: str¶
Optional sub-directory the plugin code lives in as a relative path from the plugin root
- class Repository(handle: LP_BNRepository)[source]¶
Bases:
object
Repository
is a read-only class. Use RepositoryManager to Enable/Disable/Install/Uninstall plugins.- Parameters:
handle (LP_BNRepository) –
- property plugins: List[RepoPlugin]¶
List of RepoPlugin objects contained within this repository
- class RepositoryManager[source]¶
Bases:
object
RepositoryManager
Keeps track of all the repositories and keeps the enabled_plugins.json file coherent with the plugins that are installed/uninstalled enabled/disabled- add_repository(url: Optional[str] = None, repopath: Optional[str] = None) bool [source]¶
add_repository
adds a new plugin repository for the manager to track.There is currently no function to remove a repository. If you want to remove a repository, you must delete the directory and remove the plugin_status.json entries from repositories/ file in the User Folder
- Parameters:
- Returns:
Boolean value True if the repository was successfully added, False otherwise.
- Return type:
Boolean
- Example:
>>> mgr = RepositoryManager() >>> mgr.add_repository("https://raw.githubusercontent.com/Vector35/community-plugins/master/plugins.json", "community") True >>>
- check_for_updates() bool [source]¶
Check for updates for all managed Repository objects
- Return type:
- property default_repository: Repository¶
Gets the default Repository
- property plugins: Dict[str, List[RepoPlugin]]¶
List of all RepoPlugins in each repository
- property repositories: List[Repository]¶
List of Repository objects being managed