betty.plugin.factory module#
Plugin factories.
- class betty.plugin.factory.PluginManufacturer#
Bases:
Samplable,Data[PluginManufacturerDefinition],HasProps,ABC,Generic[_PluginManufacturerPluginDefinitionT,_PluginManufacturerPluginT]Configure a single plugin instance.
- final __init__(plugin: ResolvablePluginId[~betty.plugin.factory._PluginManufacturerPluginDefinitionT], data: ~betty.data.Data | PortableData | NothingType = <Nothing>, /)#
- plugin_data#
Get the plugin’s own data.
- plugin_id#
The plugin ID.
- final classmethod resolve(manufacturer: ResolvablePluginManufacturer[_PluginManufacturerPluginDefinitionT, _PluginManufacturerPluginT]) PluginManufacturer[_PluginManufacturerPluginDefinitionT, _PluginManufacturerPluginT]#
Resolve a value to a plugin manufacturer.
- final classmethod resolve_sequence(manufacturers: ResolvablePluginManufacturerSequence[_PluginManufacturerPluginDefinitionT, _PluginManufacturerPluginT]) MutableSequence[PluginManufacturer[_PluginManufacturerPluginDefinitionT, _PluginManufacturerPluginT]]#
Resolve a value to a sequence of plugin manufacturers.
- final class betty.plugin.factory.PluginManufacturerDefinition#
Bases:
ObjectDefinition[PluginManufacturer,KeyedPorter[PluginManufacturer]],GenericDefine a plugin manufacturer.
- __init__(plugin_type: type[Intersection[PluginDefinitionT, PluginClsDefinition[PluginT]]], /)#
- exception betty.plugin.factory.PluginManufacturerError#
Bases:
HumanFacingException,FactoryErrorRaised when a plugin manufacturer could not create a new plugin instance.
- final class betty.plugin.factory.PluginManufacturerPorter#
Bases:
KeyedPorter,GenericPort
betty.plugin.factory.PluginManufacturerto portable data.- dump(data: PluginManufacturerT, /) PortableData#
Dump data to its portable form.
- dump_keyed(data: PluginManufacturerT, /) tuple[str, PortableData]#
Dump the data to portable data and a portable primary key.
- Raises:
betty.portable.error.NotPortable – Raised if any part of the data is not portable.
- load(data: PortableData, /) PluginManufacturerT#
Load data from its portable form.
- load_keyed(key: str, data: PortableData, /) PluginManufacturerT#
Create a new data instance from portable data and a portable primary key.
- Raises:
betty.exception.HumanFacingException – Raised if the portable data is invalid.