Interface IServerCommand
A command a client asks a server to run (LSP 3.17 §Execute a command): what a client cannot do itself, and no other request of the
protocol does - rdcore.importProject makes a .rdproj of a VB6 project.
public interface IServerCommand
Remarks
A server advertises the names of its commands (executeCommandProvider.commands), and a client routes those to it. A command the client runs
itself - rdcore.rename, which asks its user for a name - is none of them, and is not advertised: a client would route it to the server.
Properties
Name
The name a client asks for the command by: rdcore. and what it does.
string Name { get; }
Property Value
Methods
ExecuteAsync(JArray?, IServerCommandContext, CancellationToken)
Runs the command.
Task<JToken?> ExecuteAsync(JArray? arguments, IServerCommandContext context, CancellationToken token)
Parameters
argumentsJArrayThe arguments the client sends, as it sends them.
contextIServerCommandContextWhat the command can ask of the client while it runs.
tokenCancellationTokenA token that cancels the command.
Returns
Exceptions
- ServerCommandRefusedException
The command was not run, for a reason the client's user is told.