OpenAssetIO
An abstract API for generalising interactions between a host application and an asset management system
|
A Factory to manage openassetio.pluginSystem.PythonPluginSystemManagerPlugin derived plugins. More...
Public Member Functions | |
def | __init__ (self, logger, paths=None, disableEntryPointsPlugins=None) |
Creates a new factory. More... | |
def | identifiers (self) |
def | instantiate (self, identifier) |
Creates an instance of the openassetio::v1::managerApi::ManagerInterface"ManagerInterface" with the specified identifier. More... | |
Static Public Attributes | |
string | kPluginEnvVar = "OPENASSETIO_PLUGIN_PATH" |
The Environment Variable to read the plug-in search path from. More... | |
string | kDisableEntryPointsEnvVar = "OPENASSETIO_DISABLE_ENTRYPOINTS_PLUGINS" |
The Environment Variable to control the discovery of entry point based plugins. More... | |
string | kPackageEntryPointGroup = "openassetio.manager_plugin" |
The name of the ManagerPlugin entry point for entry point discovered plugins. More... | |
A Factory to manage openassetio.pluginSystem.PythonPluginSystemManagerPlugin derived plugins.
Not usually used directly by a host, which instead uses the ManagerFactory.
The factory loads plugins from entry points registered within the openassetio.manager_plugin
entry point group, as well as additional plugins found under paths specified in the OPENASSETIO_PLUGIN_PATH
env var.
import
statements. Note that this environment variable is also used by the CppPluginSystemManagerImplementationFactory.def __init__ | ( | self, | |
logger, | |||
paths = None , |
|||
disableEntryPointsPlugins = None |
|||
) |
Creates a new factory.
The factory scans for plugins lazily on the first invocation of identifiers or instantiate.
logger | LoggerInterface implementation that will be used to output information about plugin loading. |
paths | str Paths to search for plugins. Defaults to the value of the kPluginEnvVar environment variable. |
disableEntryPointsPlugins | bool Controls whether package entry point based plugin discovery is allowed. Defaults to False unless the kDisableEntryPointsEnvVar environment variable is set. |
def identifiers | ( | self | ) |
def instantiate | ( | self, | |
identifier | |||
) |
Creates an instance of the openassetio::v1::managerApi::ManagerInterface"ManagerInterface" with the specified identifier.
identifier | str The identifier of the ManagerInterface to instantiate. |
InputValidationException | if the requested identifier has not been registered. |
RuntimeError | if the requested plugin is valid but has no interface method. |
|
static |
The Environment Variable to control the discovery of entry point based plugins.
|
static |
The name of the ManagerPlugin entry point for entry point discovered plugins.
|
static |
The Environment Variable to read the plug-in search path from.
Copyright 2013-2023 The Foundry Visionmongers Ltd. OpenAssetIO is released under the Apache 2.0 License