Interface IPluginRegistry
This interface provides the main entry point for working with plug-ins and extensions.
Inherited Members
Namespace: SdlSdl.CorePluginFramework
Assembly: Sdl.Core.PluginFramework.dll
Syntax
public interface IPluginRegistry : IDisposable
Remarks
Instances of the plugin registry can be created using the various factory methods of the PluginManager class.
Properties
PluginCache
Returns the plug-in cache associated with this plug-in registry.
Declaration
IPluginCache PluginCache { get; }
Property Value
Type | Description |
---|---|
IPluginCache |
PluginFilter
Gets the plug-in filter that controls whether certain plug-ins or individual extensions are loaded. Can be null.
Declaration
IPluginFilter PluginFilter { get; }
Property Value
Type | Description |
---|---|
IPluginFilter |
PluginInitializer
Gets the IPluginInitializer used by the plug-in registry to initialize plug-ins.
Declaration
IPluginInitializer PluginInitializer { get; }
Property Value
Type | Description |
---|---|
IPluginInitializer |
PluginLocator
Returns the plug-in locator associated with this plug-in registry.
Declaration
IPluginLocator PluginLocator { get; }
Property Value
Type | Description |
---|---|
IPluginLocator |
PluginStateHandler
Gets or sets an plugin state handler, which determines whether plugins can be enabled or disabled. Can be null.
Declaration
IPluginStateHandler PluginStateHandler { get; set; }
Property Value
Type | Description |
---|---|
IPluginStateHandler |
PluginTypeLoader
Gets the plug-in type loader component used by the plug-in registry to load types referred to in plug-in manifests.
Declaration
IPluginTypeLoader PluginTypeLoader { get; }
Property Value
Type | Description |
---|---|
IPluginTypeLoader |
Plugins
Returns a collection of all the plug-ins that are available.
Declaration
PluginCollection Plugins { get; }
Property Value
Type | Description |
---|---|
PluginCollection |
Methods
EnsurePluginsInitialized(IEnumerable<IExtension>, EventHandler<PluginInitializationResultsEventArgs>)
Helper method to asynchronously initialize all the plug-ins that are required to instantiate the specified extensions.
Declaration
void EnsurePluginsInitialized(IEnumerable<IExtension> extensions, EventHandler<PluginInitializationResultsEventArgs> pluginsInitializedCallback)
Parameters
Type | Name | Description |
---|---|---|
IEnumerableIExtension | extensions | |
EventHandlerPluginInitializationResultsEventArgs | pluginsInitializedCallback |
GetExtensionPoint<T>()
Gets the extension point for a certain type of extension attribute.
Declaration
IExtensionPoint GetExtensionPoint<T>() where T : ExtensionAttribute
Returns
Type | Description |
---|---|
IExtensionPoint | The extension point for the given type of extension attribute. |
Type Parameters
Name | Description |
---|---|
T | The extension attribute type identifying the extension point. |