diff --git a/atom-extensions/atom-manifest-yaml/package.json b/atom-extensions/atom-manifest-yaml/package.json index f7ca7ab48..a3624b053 100644 --- a/atom-extensions/atom-manifest-yaml/package.json +++ b/atom-extensions/atom-manifest-yaml/package.json @@ -9,7 +9,6 @@ "atom": ">=1.17.0" }, "dependencies": { - "atom-languageclient": "0.1.1", "decompress": "^4.2.0", "portfinder": "^1.0.13", "remote-file-size": "^3.0.3", diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/hover/BootJavaHoverProvider.java b/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/hover/BootJavaHoverProvider.java index f6b7d3379..8771d2dd5 100644 --- a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/hover/BootJavaHoverProvider.java +++ b/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/hover/BootJavaHoverProvider.java @@ -52,8 +52,8 @@ public class BootJavaHoverProvider implements HoverHandler { @Override public CompletableFuture handle(TextDocumentPositionParams params) { SimpleTextDocumentService documents = server.getTextDocumentService(); - TextDocument doc = documents.get(params).copy(); - if (doc != null) { + if (documents.get(params) != null) { + TextDocument doc = documents.get(params).copy(); try { int offset = doc.toOffset(params.getPosition()); CompletableFuture hoverResult = provideHover(doc, offset); @@ -64,7 +64,7 @@ public class BootJavaHoverProvider implements HoverHandler { catch (Exception e) { } } - + return SimpleTextDocumentService.NO_HOVER; } @@ -77,7 +77,7 @@ public class BootJavaHoverProvider implements HoverHandler { parser.setStatementsRecovery(true); parser.setBindingsRecovery(true); parser.setResolveBindings(true); - + String[] classpathEntries = getClasspathEntries(document); String[] sourceEntries = new String[] {}; parser.setEnvironment(classpathEntries, sourceEntries, null, true); @@ -89,7 +89,7 @@ public class BootJavaHoverProvider implements HoverHandler { CompilationUnit cu = (CompilationUnit) parser.createAST(null); ASTNode node = NodeFinder.perform(cu, offset, 0); - + if (node != null) { System.out.println("AST node found: " + node.getClass().getName()); return provideHoverForAnnotation(node, offset, document); @@ -101,11 +101,11 @@ public class BootJavaHoverProvider implements HoverHandler { private CompletableFuture provideHoverForAnnotation(ASTNode node, int offset, TextDocument doc) { Annotation annotation = null; ASTNode exactNode = node; - + while (node != null && !(node instanceof Annotation)) { node = node.getParent(); } - + if (node != null) { annotation = (Annotation) node; ITypeBinding type = annotation.resolveTypeBinding(); @@ -116,7 +116,7 @@ public class BootJavaHoverProvider implements HoverHandler { } } } - + return null; } @@ -124,7 +124,7 @@ public class BootJavaHoverProvider implements HoverHandler { if (type.getQualifiedName().equals(SPRING_VALUE)) { return new ValueHoverProvider().provideHoverForValueAnnotation(node, annotation, type, offset, doc); } - + return null; } @@ -134,7 +134,7 @@ public class BootJavaHoverProvider implements HoverHandler { Stream classpathEntries = classpath.getClasspathEntries(); return classpathEntries .filter(path -> path.toFile().exists()) - .map(path -> path.toAbsolutePath().toString()).toArray(String[]::new); + .map(path -> path.toAbsolutePath().toString()).toArray(String[]::new); } } diff --git a/headless-services/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/completion/VscodeCompletionEngineAdapter.java b/headless-services/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/completion/VscodeCompletionEngineAdapter.java index ee377f932..d730fde76 100644 --- a/headless-services/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/completion/VscodeCompletionEngineAdapter.java +++ b/headless-services/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/completion/VscodeCompletionEngineAdapter.java @@ -117,8 +117,8 @@ public class VscodeCompletionEngineAdapter implements VscodeCompletionEngine { private Mono getCompletionsMono(TextDocumentPositionParams params) { SimpleTextDocumentService documents = server.getTextDocumentService(); - TextDocument doc = documents.get(params).copy(); - if (doc!=null) { + if (documents.get(params) != null) { + TextDocument doc = documents.get(params).copy(); return Mono.fromCallable(() -> { if (resolver!=null) { //Assumes we don't have more than one completion request in flight from the client. diff --git a/headless-services/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/definition/SimpleDefinitionFinder.java b/headless-services/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/definition/SimpleDefinitionFinder.java index 360455bd1..e7c8c1e37 100644 --- a/headless-services/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/definition/SimpleDefinitionFinder.java +++ b/headless-services/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/definition/SimpleDefinitionFinder.java @@ -54,29 +54,31 @@ public class SimpleDefinitionFinder implements D protected Flux findDefinitions(TextDocumentPositionParams params) { try { TextDocument doc = server.getTextDocumentService().get(params); - int offset = doc.toOffset(params.getPosition()); - int start = offset; - while (Character.isLetter(doc.getSafeChar(start))) { - start--; - } - start = start+1; - int end = offset; - while (Character.isLetter(doc.getSafeChar(end))) { - end++; - } - String word = doc.textBetween(start, end); - Log.log("Looking for definition of '"+word+"'"); - String text = doc.get(); - int def = text.indexOf(word); - if (def>=0) { - return Flux.just( - new Location(params.getTextDocument().getUri(), - doc.toRange(def, word.length()) + if (doc != null) { + int offset = doc.toOffset(params.getPosition()); + int start = offset; + while (Character.isLetter(doc.getSafeChar(start))) { + start--; + } + start = start+1; + int end = offset; + while (Character.isLetter(doc.getSafeChar(end))) { + end++; + } + String word = doc.textBetween(start, end); + Log.log("Looking for definition of '"+word+"'"); + String text = doc.get(); + int def = text.indexOf(word); + if (def>=0) { + return Flux.just( + new Location(params.getTextDocument().getUri(), + doc.toRange(def, word.length()) + ) ) - ) - .doOnNext((Location loc) -> { - Log.log("definition: "+loc); - }); + .doOnNext((Location loc) -> { + Log.log("definition: "+loc); + }); + } } } catch (Exception e) { Log.log(e);