Interface IComposable
A container for modules and plugins to initialize in. All composable objects must implement this interface, and register their plugins inside the Compose method.
Namespace: Snowflake.Loader
Assembly: Snowflake.Framework.Primitives.dll
Syntax
public interface IComposable
Methods
Compose(IModule, IServiceRepository)
This method is called upon initialization of your plugin assembly. In this method, initialize your plugin objects and register them to the plugin manager to expose access to Snowflake.
Access to various services in the IServiceRepository must be negotiated for using ImportServiceAttribute. Some important services are IPluginManager, as well as IServiceRegistrationProvider to register your own services.
Declaration
void Compose(IModule composableModule, IServiceRepository serviceRepository)
Parameters
| Type | Name | Description |
|---|---|---|
| IModule | composableModule | The module metadata of the loading module. |
| IServiceRepository | serviceRepository | The services that are injected by the module compositor. |