Source:
private InitializeParams prepareInitializeParams(String projectPath) { InitializeParams initializeParams = new InitializeParams(); initializeParams.setProcessId(PROCESS_ID); initializeParams.setRootPath(LanguageServiceUtils.removeUriScheme(projectPath)); initializeParams.setRootUri(projectPath); if (CLIENT_CAPABILITIES == null) { CLIENT_CAPABILITIES = new ClientCapabilities(); WorkspaceClientCapabilities workspace = new WorkspaceClientCapabilities(); workspace.setApplyEdit(false); workspace.setDidChangeConfiguration(new DidChangeConfigurationCapabilities(false)); workspace.setDidChangeWatchedFiles(new DidChangeWatchedFilesCapabilities(false)); workspace.setExecuteCommand(new ExecuteCommandCapabilities(false)); workspace.setSymbol(new SymbolCapabilities(false)); workspace.setWorkspaceEdit(new WorkspaceEditCapabilities(false)); CLIENT_CAPABILITIES.setWorkspace(workspace); TextDocumentClientCapabilities textDocument = new TextDocumentClientCapabilities(); textDocument.setCodeAction(new CodeActionCapabilities(false)); textDocument.setCodeLens(new CodeLensCapabilities(false)); textDocument.setCompletion(new CompletionCapabilities(new CompletionItemCapabilities(true))); textDocument.setDefinition(new DefinitionCapabilities(false)); textDocument.setDocumentHighlight(new DocumentHighlightCapabilities(true)); textDocument.setDocumentLink(new DocumentLinkCapabilities()); textDocument.setDocumentSymbol(new DocumentSymbolCapabilities()); textDocument.setFormatting(new FormattingCapabilities()); textDocument.setHover(new HoverCapabilities()); textDocument.setOnTypeFormatting(new OnTypeFormattingCapabilities()); textDocument.setRangeFormatting(new RangeFormattingCapabilities()); textDocument.setReferences(new ReferencesCapabilities()); textDocument.setRename(new RenameCapabilities()); textDocument.setSignatureHelp(new SignatureHelpCapabilities()); textDocument.setSynchronization(new SynchronizationCapabilities(true, false, true)); CLIENT_CAPABILITIES.setTextDocument(textDocument); } initializeParams.setCapabilities(CLIENT_CAPABILITIES); initializeParams.setClientName(CLIENT_NAME); return initializeParams; }

Target:
private InitializeParams prepareInitializeParams(String projectPath) { InitializeParams initializeParams = new InitializeParams(); initializeParams.setProcessId(PROCESS_ID); initializeParams.setRootPath(LanguageServiceUtils.removeUriScheme(projectPath)); initializeParams.setRootUri(projectPath); if (CLIENT_CAPABILITIES == null) { CLIENT_CAPABILITIES = new ClientCapabilities(); WorkspaceClientCapabilities workspace = new WorkspaceClientCapabilities(); workspace.setApplyEdit(false); workspace.setDidChangeConfiguration(new DidChangeConfigurationCapabilities()); workspace.setDidChangeWatchedFiles(new DidChangeWatchedFilesCapabilities()); workspace.setExecuteCommand(new ExecuteCommandCapabilities()); workspace.setSymbol(new SymbolCapabilities()); workspace.setWorkspaceEdit(new WorkspaceEditCapabilities()); CLIENT_CAPABILITIES.setWorkspace(workspace); TextDocumentClientCapabilities textDocument = new TextDocumentClientCapabilities(); textDocument.setCodeAction(new CodeActionCapabilities()); textDocument.setCodeLens(new CodeLensCapabilities()); textDocument.setCompletion(new CompletionCapabilities(new CompletionItemCapabilities())); textDocument.setDefinition(new DefinitionCapabilities()); textDocument.setDocumentHighlight(new DocumentHighlightCapabilities()); textDocument.setDocumentLink(new DocumentLinkCapabilities()); textDocument.setDocumentSymbol(new DocumentSymbolCapabilities()); textDocument.setFormatting(new FormattingCapabilities()); textDocument.setHover(new HoverCapabilities()); textDocument.setOnTypeFormatting(new OnTypeFormattingCapabilities()); textDocument.setRangeFormatting(new RangeFormattingCapabilities()); textDocument.setReferences(new ReferencesCapabilities()); textDocument.setRename(new RenameCapabilities()); textDocument.setSignatureHelp(new SignatureHelpCapabilities()); textDocument.setSynchronization(new SynchronizationCapabilities(true, false, true)); CLIENT_CAPABILITIES.setTextDocument(textDocument); } initializeParams.setCapabilities(CLIENT_CAPABILITIES); initializeParams.setClientName(CLIENT_NAME); return initializeParams; }