betty.plugin.proxy module

Provide tools for proxying plugin management to other tools.

final class betty.plugin.proxy.ProxyPluginRepository[source]

Bases: PluginRepository[_PluginT], Generic[_PluginT]

Expose multiple other plugin repositories as one unified repository.

__init__(*upstreams: PluginRepository[_PluginT], factory: Factory | None = None)[source]
async get(plugin_id: str) type[_PluginT][source]

Get a single plugin by its ID.

Raises:

PluginNotFound – if no plugin can be found for the given ID.

async new_target(cls: type[_T] | str) _T | _PluginT[source]

Create a new instance.

Raises:

FactoryError – raised when cls could not be instantiated.