From c65fe98aab39eac42eb1ff28987da1c7e96e4f44 Mon Sep 17 00:00:00 2001 From: Kris De Volder Date: Mon, 3 Oct 2016 11:02:06 -0700 Subject: [PATCH] Update lsapi version to 0.3.0 release --- .../commons/language-server-commons/pom.xml | 2 +- .../ide/vscode/util/ShowMessageException.java | 11 +++--- .../ide/vscode/util/SimpleLanguageServer.java | 15 +++++--- .../util/SimpleTextDocumentService.java | 4 +-- .../ide/vscode/util/TextDocument.java | 5 ++- .../ide/vscode/testharness/Editor.java | 1 + .../testharness/LanguageServerHarness.java | 36 ++++++++++--------- .../vscode/testharness/TextDocumentInfo.java | 6 ++-- .../vscode-manifest-yaml/.classpath | 5 +++ .../cloudfoundry/manifest/editor/Main.java | 8 ++--- .../editor/ManifestYamlLanguageServer.java | 18 +++++----- .../vscode/yaml/ManifestYamlEditorTest.java | 6 ++-- .../yaml/ManifestYamlLanguageServerTest.java | 3 +- 13 files changed, 69 insertions(+), 51 deletions(-) diff --git a/vscode-extensions/commons/language-server-commons/pom.xml b/vscode-extensions/commons/language-server-commons/pom.xml index 6fe6e7d2a..b5caeeef9 100644 --- a/vscode-extensions/commons/language-server-commons/pom.xml +++ b/vscode-extensions/commons/language-server-commons/pom.xml @@ -27,7 +27,7 @@ 2.5.0 2.10 - 0.2.0-SNAPSHOT + 0.3.0 diff --git a/vscode-extensions/commons/language-server-commons/src/main/java/org/springframework/ide/vscode/util/ShowMessageException.java b/vscode-extensions/commons/language-server-commons/src/main/java/org/springframework/ide/vscode/util/ShowMessageException.java index 0f347024d..585c0271a 100644 --- a/vscode-extensions/commons/language-server-commons/src/main/java/org/springframework/ide/vscode/util/ShowMessageException.java +++ b/vscode-extensions/commons/language-server-commons/src/main/java/org/springframework/ide/vscode/util/ShowMessageException.java @@ -1,7 +1,8 @@ package org.springframework.ide.vscode.util; import io.typefox.lsapi.MessageParams; -import io.typefox.lsapi.MessageParamsImpl; +import io.typefox.lsapi.impl.MessageParamsImpl; +import io.typefox.lsapi.MessageType; public class ShowMessageException extends RuntimeException { @@ -15,18 +16,18 @@ public class ShowMessageException extends RuntimeException { } public static ShowMessageException error(String message, Exception cause) { - return create(MessageParams.TYPE_ERROR, message, cause); + return create(MessageType.Error, message, cause); } public static ShowMessageException warning(String message, Exception cause) { - return create(MessageParams.TYPE_WARNING, message, cause); + return create(MessageType.Warning, message, cause); } - private static ShowMessageException create(int type, String message, Exception cause) { + private static ShowMessageException create(MessageType warning, String message, Exception cause) { MessageParamsImpl m = new MessageParamsImpl(); m.setMessage(message); - m.setType(type); + m.setType(warning); return new ShowMessageException(m, cause); } diff --git a/vscode-extensions/commons/language-server-commons/src/main/java/org/springframework/ide/vscode/util/SimpleLanguageServer.java b/vscode-extensions/commons/language-server-commons/src/main/java/org/springframework/ide/vscode/util/SimpleLanguageServer.java index 9cdbb36a3..19a98d073 100644 --- a/vscode-extensions/commons/language-server-commons/src/main/java/org/springframework/ide/vscode/util/SimpleLanguageServer.java +++ b/vscode-extensions/commons/language-server-commons/src/main/java/org/springframework/ide/vscode/util/SimpleLanguageServer.java @@ -9,11 +9,12 @@ import java.util.logging.Logger; import io.typefox.lsapi.InitializeParams; import io.typefox.lsapi.InitializeResult; -import io.typefox.lsapi.InitializeResultImpl; import io.typefox.lsapi.MessageParams; -import io.typefox.lsapi.MessageParamsImpl; -import io.typefox.lsapi.ServerCapabilitiesImpl; +import io.typefox.lsapi.MessageType; import io.typefox.lsapi.ShowMessageRequestParams; +import io.typefox.lsapi.impl.InitializeResultImpl; +import io.typefox.lsapi.impl.MessageParamsImpl; +import io.typefox.lsapi.impl.ServerCapabilitiesImpl; import io.typefox.lsapi.services.LanguageServer; import io.typefox.lsapi.services.WindowService; @@ -83,7 +84,7 @@ public abstract class SimpleLanguageServer implements LanguageServer { MessageParamsImpl m = new MessageParamsImpl(); m.setMessage(message); - m.setType(MessageParams.TYPE_ERROR); + m.setType(MessageType.Error); showMessage.accept(m); } @@ -127,5 +128,11 @@ public abstract class SimpleLanguageServer implements LanguageServer { } return workspace; } + + @Override + public void onTelemetryEvent(Consumer callback) { + //TODO: not sure what this is for exactly. We just stub it and do nothing for now. + } + } diff --git a/vscode-extensions/commons/language-server-commons/src/main/java/org/springframework/ide/vscode/util/SimpleTextDocumentService.java b/vscode-extensions/commons/language-server-commons/src/main/java/org/springframework/ide/vscode/util/SimpleTextDocumentService.java index ec50435b7..909b6ea07 100644 --- a/vscode-extensions/commons/language-server-commons/src/main/java/org/springframework/ide/vscode/util/SimpleTextDocumentService.java +++ b/vscode-extensions/commons/language-server-commons/src/main/java/org/springframework/ide/vscode/util/SimpleTextDocumentService.java @@ -15,7 +15,6 @@ import io.typefox.lsapi.CodeLensParams; import io.typefox.lsapi.Command; import io.typefox.lsapi.CompletionItem; import io.typefox.lsapi.CompletionList; -import io.typefox.lsapi.DiagnosticImpl; import io.typefox.lsapi.DidChangeTextDocumentParams; import io.typefox.lsapi.DidCloseTextDocumentParams; import io.typefox.lsapi.DidOpenTextDocumentParams; @@ -28,7 +27,6 @@ import io.typefox.lsapi.DocumentSymbolParams; import io.typefox.lsapi.Hover; import io.typefox.lsapi.Location; import io.typefox.lsapi.PublishDiagnosticsParams; -import io.typefox.lsapi.PublishDiagnosticsParamsImpl; import io.typefox.lsapi.Range; import io.typefox.lsapi.ReferenceParams; import io.typefox.lsapi.RenameParams; @@ -39,6 +37,8 @@ import io.typefox.lsapi.TextDocumentPositionParams; import io.typefox.lsapi.TextEdit; import io.typefox.lsapi.VersionedTextDocumentIdentifier; import io.typefox.lsapi.WorkspaceEdit; +import io.typefox.lsapi.impl.DiagnosticImpl; +import io.typefox.lsapi.impl.PublishDiagnosticsParamsImpl; import io.typefox.lsapi.services.TextDocumentService; public class SimpleTextDocumentService implements TextDocumentService { diff --git a/vscode-extensions/commons/language-server-commons/src/main/java/org/springframework/ide/vscode/util/TextDocument.java b/vscode-extensions/commons/language-server-commons/src/main/java/org/springframework/ide/vscode/util/TextDocument.java index 50f931d1e..fd3365687 100644 --- a/vscode-extensions/commons/language-server-commons/src/main/java/org/springframework/ide/vscode/util/TextDocument.java +++ b/vscode-extensions/commons/language-server-commons/src/main/java/org/springframework/ide/vscode/util/TextDocument.java @@ -7,11 +7,10 @@ import java.util.regex.Pattern; import org.springframework.ide.vscode.commons.reconcile.IDocument; -import io.typefox.lsapi.Position; -import io.typefox.lsapi.PositionImpl; import io.typefox.lsapi.Range; -import io.typefox.lsapi.RangeImpl; import io.typefox.lsapi.TextDocumentContentChangeEvent; +import io.typefox.lsapi.impl.PositionImpl; +import io.typefox.lsapi.impl.RangeImpl; public class TextDocument implements IDocument { diff --git a/vscode-extensions/commons/language-server-test-harness/src/main/java/org/springframework/ide/vscode/testharness/Editor.java b/vscode-extensions/commons/language-server-test-harness/src/main/java/org/springframework/ide/vscode/testharness/Editor.java index ad341bfae..3ca3dc00c 100644 --- a/vscode-extensions/commons/language-server-test-harness/src/main/java/org/springframework/ide/vscode/testharness/Editor.java +++ b/vscode-extensions/commons/language-server-test-harness/src/main/java/org/springframework/ide/vscode/testharness/Editor.java @@ -129,6 +129,7 @@ public class Editor { } public void assertCompletions(String... specs) { + throw new UnsupportedOperationException("Not implemented yet!"); } diff --git a/vscode-extensions/commons/language-server-test-harness/src/main/java/org/springframework/ide/vscode/testharness/LanguageServerHarness.java b/vscode-extensions/commons/language-server-test-harness/src/main/java/org/springframework/ide/vscode/testharness/LanguageServerHarness.java index db3838c41..aae69241c 100644 --- a/vscode-extensions/commons/language-server-test-harness/src/main/java/org/springframework/ide/vscode/testharness/LanguageServerHarness.java +++ b/vscode-extensions/commons/language-server-test-harness/src/main/java/org/springframework/ide/vscode/testharness/LanguageServerHarness.java @@ -13,23 +13,25 @@ import java.util.stream.Collectors; import org.assertj.core.api.Condition; -import io.typefox.lsapi.ClientCapabilitiesImpl; import io.typefox.lsapi.CompletionItem; import io.typefox.lsapi.CompletionList; import io.typefox.lsapi.Diagnostic; -import io.typefox.lsapi.DidChangeTextDocumentParamsImpl; -import io.typefox.lsapi.DidOpenTextDocumentParamsImpl; -import io.typefox.lsapi.InitializeParamsImpl; +import io.typefox.lsapi.DiagnosticSeverity; import io.typefox.lsapi.InitializeResult; import io.typefox.lsapi.Position; -import io.typefox.lsapi.PositionImpl; import io.typefox.lsapi.PublishDiagnosticsParams; import io.typefox.lsapi.Range; import io.typefox.lsapi.ServerCapabilities; -import io.typefox.lsapi.TextDocumentContentChangeEventImpl; -import io.typefox.lsapi.TextDocumentItemImpl; -import io.typefox.lsapi.TextDocumentPositionParamsImpl; -import io.typefox.lsapi.VersionedTextDocumentIdentifierImpl; +import io.typefox.lsapi.TextDocumentSyncKind; +import io.typefox.lsapi.impl.ClientCapabilitiesImpl; +import io.typefox.lsapi.impl.DidChangeTextDocumentParamsImpl; +import io.typefox.lsapi.impl.DidOpenTextDocumentParamsImpl; +import io.typefox.lsapi.impl.InitializeParamsImpl; +import io.typefox.lsapi.impl.PositionImpl; +import io.typefox.lsapi.impl.TextDocumentContentChangeEventImpl; +import io.typefox.lsapi.impl.TextDocumentItemImpl; +import io.typefox.lsapi.impl.TextDocumentPositionParamsImpl; +import io.typefox.lsapi.impl.VersionedTextDocumentIdentifierImpl; import io.typefox.lsapi.services.LanguageServer; public class LanguageServerHarness { @@ -133,11 +135,11 @@ public class LanguageServerHarness { version.setVersion(textDocument.getVersion()); didChange.setTextDocument(version); switch (getDocumentSyncMode()) { - case ServerCapabilities.SYNC_NONE: + case None: break; //nothing todo - case ServerCapabilities.SYNC_INCREMENTAL: + case Incremental: throw new IllegalStateException("Incremental sync not yet supported by this test harness"); - case ServerCapabilities.SYNC_FULL: + case Full: TextDocumentContentChangeEventImpl change = new TextDocumentContentChangeEventImpl(); change.setText(newContent); didChange.setContentChanges(Collections.singletonList(change)); @@ -149,16 +151,16 @@ public class LanguageServerHarness { return documents.get(uri); } - private int getDocumentSyncMode() { - Integer mode = initResult.getCapabilities().getTextDocumentSync(); - return mode==null ? ServerCapabilities.SYNC_NONE : mode; + private TextDocumentSyncKind getDocumentSyncMode() { + TextDocumentSyncKind mode = initResult.getCapabilities().getTextDocumentSync(); + return mode==null ? TextDocumentSyncKind.None : mode; } public PublishDiagnosticsParams getDiagnostics(TextDocumentInfo doc) { return diagnostics.get(doc.getUri()); } - public static Condition isDiagnosticWithSeverity(int severity) { + public static Condition isDiagnosticWithSeverity(DiagnosticSeverity severity) { return new Condition<>( (d) -> d.getSeverity()==severity, "Diagnostic with severity '"+severity+"'" @@ -172,7 +174,7 @@ public class LanguageServerHarness { ); } - public static final Condition isWarning = isDiagnosticWithSeverity(Diagnostic.SEVERITY_WARNING); + public static final Condition isWarning = isDiagnosticWithSeverity(DiagnosticSeverity.Warning); public static boolean isDiagnosticCovering(Diagnostic diag, TextDocumentInfo doc, String string) { Range rng = diag.getRange(); diff --git a/vscode-extensions/commons/language-server-test-harness/src/main/java/org/springframework/ide/vscode/testharness/TextDocumentInfo.java b/vscode-extensions/commons/language-server-test-harness/src/main/java/org/springframework/ide/vscode/testharness/TextDocumentInfo.java index 1062f6bfb..c21aa5e94 100644 --- a/vscode-extensions/commons/language-server-test-harness/src/main/java/org/springframework/ide/vscode/testharness/TextDocumentInfo.java +++ b/vscode-extensions/commons/language-server-test-harness/src/main/java/org/springframework/ide/vscode/testharness/TextDocumentInfo.java @@ -6,10 +6,10 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; import io.typefox.lsapi.Position; -import io.typefox.lsapi.PositionImpl; import io.typefox.lsapi.Range; -import io.typefox.lsapi.TextDocumentIdentifierImpl; -import io.typefox.lsapi.TextDocumentItemImpl; +import io.typefox.lsapi.impl.PositionImpl; +import io.typefox.lsapi.impl.TextDocumentIdentifierImpl; +import io.typefox.lsapi.impl.TextDocumentItemImpl; public class TextDocumentInfo { diff --git a/vscode-extensions/vscode-manifest-yaml/.classpath b/vscode-extensions/vscode-manifest-yaml/.classpath index d46faf10e..0f930ed4f 100644 --- a/vscode-extensions/vscode-manifest-yaml/.classpath +++ b/vscode-extensions/vscode-manifest-yaml/.classpath @@ -27,5 +27,10 @@ + + + + + diff --git a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/cloudfoundry/manifest/editor/Main.java b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/cloudfoundry/manifest/editor/Main.java index 08041aea6..f5e24ef5c 100644 --- a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/cloudfoundry/manifest/editor/Main.java +++ b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/cloudfoundry/manifest/editor/Main.java @@ -90,10 +90,10 @@ public class Main { server.onError(message, err); }); - try { +// try { jsonServer.join(); - } catch (InterruptedException | ExecutionException e) { - throw new RuntimeException(e); - } +// } catch (InterruptedException | ExecutionException e) { +// throw new RuntimeException(e); +// } } } diff --git a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/cloudfoundry/manifest/editor/ManifestYamlLanguageServer.java b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/cloudfoundry/manifest/editor/ManifestYamlLanguageServer.java index b1d733b90..7ac6b3ab2 100644 --- a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/cloudfoundry/manifest/editor/ManifestYamlLanguageServer.java +++ b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/cloudfoundry/manifest/editor/ManifestYamlLanguageServer.java @@ -22,13 +22,15 @@ import org.yaml.snakeyaml.Yaml; import com.google.common.collect.ImmutableList; import io.typefox.lsapi.CompletionItem; -import io.typefox.lsapi.CompletionItemImpl; +import io.typefox.lsapi.CompletionItemKind; import io.typefox.lsapi.CompletionList; -import io.typefox.lsapi.CompletionListImpl; -import io.typefox.lsapi.CompletionOptionsImpl; -import io.typefox.lsapi.DiagnosticImpl; import io.typefox.lsapi.ServerCapabilities; -import io.typefox.lsapi.ServerCapabilitiesImpl; +import io.typefox.lsapi.TextDocumentSyncKind; +import io.typefox.lsapi.impl.CompletionItemImpl; +import io.typefox.lsapi.impl.CompletionListImpl; +import io.typefox.lsapi.impl.CompletionOptionsImpl; +import io.typefox.lsapi.impl.DiagnosticImpl; +import io.typefox.lsapi.impl.ServerCapabilitiesImpl; public class ManifestYamlLanguageServer extends SimpleLanguageServer { @@ -69,7 +71,7 @@ public class ManifestYamlLanguageServer extends SimpleLanguageServer { // }, CompletionItemImpl item = new CompletionItemImpl(); item.setLabel("TypeScript"); - item.setKind(CompletionItem.KIND_TEXT); + item.setKind(CompletionItemKind.Text); item.setData(1); items.add(item); } @@ -82,7 +84,7 @@ public class ManifestYamlLanguageServer extends SimpleLanguageServer { // } CompletionItemImpl item = new CompletionItemImpl(); item.setLabel("JavaScript"); - item.setKind(CompletionItem.KIND_TEXT); + item.setKind(CompletionItemKind.Text); item.setData(2); items.add(item); } @@ -141,7 +143,7 @@ public class ManifestYamlLanguageServer extends SimpleLanguageServer { protected ServerCapabilitiesImpl getServerCapabilities() { ServerCapabilitiesImpl c = new ServerCapabilitiesImpl(); - c.setTextDocumentSync(ServerCapabilities.SYNC_FULL); + c.setTextDocumentSync(TextDocumentSyncKind.Full); CompletionOptionsImpl completionProvider = new CompletionOptionsImpl(); completionProvider.setResolveProvider(true); diff --git a/vscode-extensions/vscode-manifest-yaml/src/test/java/org/springframework/ide/vscode/yaml/ManifestYamlEditorTest.java b/vscode-extensions/vscode-manifest-yaml/src/test/java/org/springframework/ide/vscode/yaml/ManifestYamlEditorTest.java index 06f29bee0..3d455f80b 100644 --- a/vscode-extensions/vscode-manifest-yaml/src/test/java/org/springframework/ide/vscode/yaml/ManifestYamlEditorTest.java +++ b/vscode-extensions/vscode-manifest-yaml/src/test/java/org/springframework/ide/vscode/yaml/ManifestYamlEditorTest.java @@ -202,7 +202,7 @@ public class ManifestYamlEditorTest { editor.assertProblems(/*none*/); } - @Test @Ignore + @Test public void toplevelCompletions() throws Exception { Editor editor; editor = harness.newEditor("<*>"); @@ -259,7 +259,7 @@ public class ManifestYamlEditorTest { ); } - @Test @Ignore + @Test public void nestedCompletions() throws Exception { Editor editor; editor = harness.newEditor( @@ -328,7 +328,7 @@ public class ManifestYamlEditorTest { ); } - @Test @Ignore + @Test public void valueCompletions() throws Exception { assertCompletions("disk_quota: <*>", "disk_quota: 1024M<*>", diff --git a/vscode-extensions/vscode-manifest-yaml/src/test/java/org/springframework/ide/vscode/yaml/ManifestYamlLanguageServerTest.java b/vscode-extensions/vscode-manifest-yaml/src/test/java/org/springframework/ide/vscode/yaml/ManifestYamlLanguageServerTest.java index 95281eeb0..86ae25c27 100644 --- a/vscode-extensions/vscode-manifest-yaml/src/test/java/org/springframework/ide/vscode/yaml/ManifestYamlLanguageServerTest.java +++ b/vscode-extensions/vscode-manifest-yaml/src/test/java/org/springframework/ide/vscode/yaml/ManifestYamlLanguageServerTest.java @@ -16,6 +16,7 @@ import io.typefox.lsapi.CompletionItem; import io.typefox.lsapi.CompletionList; import io.typefox.lsapi.InitializeResult; import io.typefox.lsapi.ServerCapabilities; +import io.typefox.lsapi.TextDocumentSyncKind; public class ManifestYamlLanguageServerTest { @@ -68,7 +69,7 @@ public class ManifestYamlLanguageServerTest { private void assertExpectedInitResult(InitializeResult initResult) { assertThat(initResult.getCapabilities().getCompletionProvider().getResolveProvider()).isTrue(); - assertThat(initResult.getCapabilities().getTextDocumentSync()).isEqualTo(ServerCapabilities.SYNC_FULL); + assertThat(initResult.getCapabilities().getTextDocumentSync()).isEqualTo(TextDocumentSyncKind.Full); } }