From ceaca41c3d05fb59d3520b1c7dbacad32c524a1e Mon Sep 17 00:00:00 2001 From: Kris De Volder Date: Tue, 20 Mar 2018 14:57:11 -0700 Subject: [PATCH] Some tweaks to ProjectObserver.Listener users --- .../boot/java/utils/CompilationUnitCache.java | 20 +------------------ .../vscode/boot/jdt/ls/JdtLsProjectCache.java | 4 ++-- .../SpringPropertiesIndexManager.java | 2 +- 3 files changed, 4 insertions(+), 22 deletions(-) diff --git a/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/CompilationUnitCache.java b/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/CompilationUnitCache.java index 0e1a9abf6..90dc7c7f5 100644 --- a/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/CompilationUnitCache.java +++ b/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/CompilationUnitCache.java @@ -50,7 +50,7 @@ public final class CompilationUnitCache { public CompilationUnitCache(JavaProjectFinder projectFinder, SimpleTextDocumentService documentService, ProjectObserver projectObserver) { this.projectFinder = projectFinder; this.projectObserver = projectObserver; - projectListener = new CUProjectListener(); + projectListener = ProjectObserver.onAny(this::invalidateProject); uriToCu = CacheBuilder.newBuilder().build(); projectToDocs = CacheBuilder.newBuilder().build(); @@ -185,22 +185,4 @@ public final class CompilationUnitCache { } } } - - private class CUProjectListener implements ProjectObserver.Listener { - - @Override - public void created(IJavaProject project) { - } - - @Override - public void changed(IJavaProject project) { - invalidateProject(project); - } - - @Override - public void deleted(IJavaProject project) { - invalidateProject(project); - } - - } } diff --git a/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/jdt/ls/JdtLsProjectCache.java b/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/jdt/ls/JdtLsProjectCache.java index 0ccc6068b..a631258b4 100644 --- a/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/jdt/ls/JdtLsProjectCache.java +++ b/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/jdt/ls/JdtLsProjectCache.java @@ -57,14 +57,14 @@ public class JdtLsProjectCache implements JavaProjectFinder, ProjectObserver { @Override public void changed(Event event) { synchronized (table) { - log.info("Classpath changed: " + event.projectUri); String uri = UriUtil.normalize(event.projectUri); + log.info("Classpath changed: " + uri); if (event.deleted) { JdtLsProject deleted = table.remove(uri); notifyDelete(deleted); } else { JdtLsProject newProject = new JdtLsProject(event.name, uri, event.classpath); - JdtLsProject oldProject = table.put(event.projectUri, newProject); + JdtLsProject oldProject = table.put(uri, newProject); if (oldProject != null) { notifyChanged(newProject); } else { diff --git a/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/metadata/SpringPropertiesIndexManager.java b/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/metadata/SpringPropertiesIndexManager.java index 857ad7126..c1614e2b8 100644 --- a/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/metadata/SpringPropertiesIndexManager.java +++ b/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/metadata/SpringPropertiesIndexManager.java @@ -44,7 +44,7 @@ public class SpringPropertiesIndexManager extends ListenerManager