initialize method
Initializes the server, this should be done before anything else.
The client must call notifyInitialized after receiving and accepting this response.
Throws a StateError if initialization fails for unknown reasons (usually
the server connection closes prematurely due to misconfiguration). To
debug these errors you should pass a protocolLogSink
when creating these
connections.
Implementation
Future<InitializeResult> initialize(InitializeRequest request) async {
final response = await sendRequest<InitializeResult>(
InitializeRequest.methodName,
request,
);
serverInfo = response.serverInfo;
serverCapabilities = response.capabilities;
final serverVersion = response.protocolVersion;
if (serverVersion == null || !serverVersion.isSupported) {
await shutdown();
} else {
protocolVersion = serverVersion;
}
return response;
}