From 228c3d3939f505e362ab7e040321754ddfc7a8d8 Mon Sep 17 00:00:00 2001 From: Martin Lippert Date: Mon, 21 Jan 2019 17:39:12 +0100 Subject: [PATCH] added missing pieces to register boot ls for general xml file usage and get notified for changes to xml files --- .../org.springframework.tooling.boot.ls/plugin.xml | 4 ++++ .../boot/ls/DelegatingStreamConnectionProvider.java | 1 + .../ls/eclipse/commons/STS4LanguageClientImpl.java | 13 +++++++++++-- .../ide/vscode/commons/util/FileObserver.java | 1 - .../vscode/boot/java/utils/SpringSymbolIndex.java | 7 +++++++ 5 files changed, 23 insertions(+), 3 deletions(-) diff --git a/eclipse-language-servers/org.springframework.tooling.boot.ls/plugin.xml b/eclipse-language-servers/org.springframework.tooling.boot.ls/plugin.xml index 6e01405b7..9a2ff4c42 100644 --- a/eclipse-language-servers/org.springframework.tooling.boot.ls/plugin.xml +++ b/eclipse-language-servers/org.springframework.tooling.boot.ls/plugin.xml @@ -14,6 +14,10 @@ contentType="org.eclipse.jdt.core.javaSource" id="org.eclipse.languageserver.languages.springboot"> + + { createDocument(new TextDocumentIdentifier(file).getUri()); }); + getWorkspaceService().getFileObserver().onFileChanged(globPattern, (file) -> { + updateDocument(new TextDocumentIdentifier(file).getUri(), null); + }); } public void shutdown() { @@ -259,6 +262,10 @@ public class SpringSymbolIndex { Optional maybeProject = projectFinder.find(new TextDocumentIdentifier(docURI)); if (maybeProject.isPresent()) { try { + if (content == null) { + content = FileUtils.readFileToString(new File(new URI(docURI))); + } + UpdateItem updateItem = new UpdateItem(maybeProject.get(), docURI, content, indexer); futures.add(CompletableFuture.runAsync(updateItem, this.updateQueue)); }