Class RDCoreServerProxy
public class RDCoreServerProxy : RDCoreClientApp, IRDCoreClientApp, IRDCoreApp, IDisposable
- Inheritance
-
RDCoreServerProxy
- Implements
- Inherited Members
Constructors
RDCoreServerProxy(IOptions<SdkAppOptions>, CoreServerComponent, CorePlatformClientCapabilities, Action<IRDCoreLSPHandlerConfigurationBuilder>, Action<IServiceCollection>, IChildConnectionFactory, ILogger<RDCoreClientApp>, ExtensionInfo?)
public RDCoreServerProxy(IOptions<SdkAppOptions> options, CoreServerComponent platformComponent, CorePlatformClientCapabilities capabilities, Action<IRDCoreLSPHandlerConfigurationBuilder> configureHandlers, Action<IServiceCollection> configureServices, IChildConnectionFactory connectionFactory, ILogger<RDCoreClientApp> logger, ExtensionInfo? extensionInfo = null)
Parameters
optionsIOptions<SdkAppOptions>platformComponentCoreServerComponentcapabilitiesCorePlatformClientCapabilitiesconfigureHandlersAction<IRDCoreLSPHandlerConfigurationBuilder>configureServicesAction<IServiceCollection>connectionFactoryIChildConnectionFactoryloggerILogger<RDCoreClientApp>extensionInfoExtensionInfo
Properties
PlatformComponent
The type of platform client.
public override CoreServerComponent PlatformComponent { get; }
Property Value
Remarks
If Extension, ExtensionInfo should not be null.
Methods
ConfigureClientCapabilities(ClientCapabilities)
protected override ClientCapabilities ConfigureClientCapabilities(ClientCapabilities capabilities)
Parameters
capabilitiesClientCapabilities
Returns
ConfigureHandlers(IRDCoreLSPHandlerConfigurationBuilder)
Configures OmniSharp LSP-compliant JSON-RPC handlers for any LSP 3.17 specified protocol event.
protected override void ConfigureHandlers(IRDCoreLSPHandlerConfigurationBuilder builder)
Parameters
builderIRDCoreLSPHandlerConfigurationBuilderA builder that lets you fluently chain repetitive calls.
Remarks
🧩 This method is invoked immediately after configuring ClientInfo and the client/server lifecycle protocol handlers:
ConfigureServices(IServiceCollection)
Configures services with the OmniSharp service collection.
protected override void ConfigureServices(IServiceCollection services)
Parameters
servicesIServiceCollectionThe OmniSharp internal service collection.
Dispose(bool)
protected override void Dispose(bool disposing)
Parameters
disposingbool
GetExpectedCapabilities()
The platform capabilities this app expects the child to provide (sent in the platform handshake). The base implementation expects nothing; a server proxy overrides this with the LS's expectations.
protected override CorePlatformClientCapabilities GetExpectedCapabilities()
Returns
OnConnectionTerminated()
The child server was lost and restart-with-backoff is exhausted. The base implementation stops
the host application, which is correct for a standalone client (e.g. rdc.exe). A server
that supervises the child (the language server) overrides this and escalates through its own
shutdown path instead.
protected override void OnConnectionTerminated()