Interface IExtensionsProvider
- Namespace
- RDCore.LanguageServer.Extensibility
- Assembly
- RDCore.SDK.dll
A service that can discover and manage platform extensions.
public interface IExtensionsProvider
Methods
Allow(ExtensionInfo)
Enables the specified ExtensionInfo if the manifest and associated executable pass validation.
bool Allow(ExtensionInfo extension)
Parameters
extensionExtensionInfoThe deserialized manifest of the extension to enable.
Returns
- bool
trueif the specified extension passed validation and was enabled,falseotherwise.
Block(ExtensionInfo)
Blocks loading the specified ExtensionInfo.
bool Block(ExtensionInfo extension)
Parameters
extensionExtensionInfoThe deserialized manifest of the extension to block.
Returns
- bool
trueif the specified extension could be blocked,falseotherwise.
Describe(string, string)
Creates a serializable ExtensionInfo model for the specified extension executable name, with the specified description.
ExtensionInfo? Describe(string name, string description)
Parameters
namestringThe name of the executable extension.
descriptionstringA short description of the extension.
Returns
- ExtensionInfo
nullif the specified extension cannot be described.
Remarks
🧩 The implementation must validate that it is executing this method inside the target extension folder.
Discover()
Scans the extensions folder for subfolders containing an extension manifest.
IEnumerable<ExtensionInfo> Discover()
Returns
StartAsync(ExtensionInfo)
Asynchronously starts and attempts to connect with the server process for the specified ExtensionInfo.
Task StartAsync(ExtensionInfo extension)
Parameters
extensionExtensionInfoThe deserialized manifest of the extension to start.