diff --git a/vscode-extensions/vscode-manifest-yaml/package.json b/vscode-extensions/vscode-manifest-yaml/package.json
index 1dccba063..0a92739c4 100644
--- a/vscode-extensions/vscode-manifest-yaml/package.json
+++ b/vscode-extensions/vscode-manifest-yaml/package.json
@@ -4,7 +4,7 @@
"description": "Provides validation and content assist for Cloudfoundry manifest.yml files",
"icon": "icon.png",
"version": "0.0.1",
- "publisher": "Pivotal Inc.",
+ "publisher": "Pivotal",
"repository": {
"type": "git",
"url": "https://github.com/kdvolder/vscode-lsapi-example.git"
diff --git a/vscode-extensions/vscode-manifest-yaml/package.sh b/vscode-extensions/vscode-manifest-yaml/package.sh
index fe8487162..3cda60f54 100755
--- a/vscode-extensions/vscode-manifest-yaml/package.sh
+++ b/vscode-extensions/vscode-manifest-yaml/package.sh
@@ -6,7 +6,9 @@
set -e # fail at the first sign of trouble
-mvn clean package ## build language server fat jar
+#Ensure commons are built and uptodate in local maven cache
+mvn -f ../commons/pom.xml clean install
+mvn clean package
npm install
vsce package
diff --git a/vscode-extensions/vscode-manifest-yaml/pom.xml b/vscode-extensions/vscode-manifest-yaml/pom.xml
index 45f8c11c5..270ec1a1a 100644
--- a/vscode-extensions/vscode-manifest-yaml/pom.xml
+++ b/vscode-extensions/vscode-manifest-yaml/pom.xml
@@ -2,10 +2,16 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
4.0.0
- com.github.kdvolder
vscode-manifest-yaml
jar
- 0.0.1-SNAPSHOT
+
+
+ org.springframework.ide.vscode
+ commons-parent
+ 0.0.1-SNAPSHOT
+ ../commons/pom.xml
+
+
@@ -13,17 +19,8 @@
Local repository for JAR files
file://${basedir}/repo
-
-
-
- oss-sonatype
- oss-sonatype
- https://oss.sonatype.org/content/repositories/snapshots/
-
- true
-
-
+
distribution-repository
@@ -31,52 +28,13 @@
file://${basedir}/dist
-
- 2.5.0
- 2.10
-
+
-
+
- io.typefox.lsapi
- io.typefox.lsapi
- 0.2.0-SNAPSHOT
-
-
- io.typefox.lsapi
- io.typefox.lsapi.services
- 0.2.0-SNAPSHOT
-
-
- io.typefox.lsapi
- io.typefox.lsapi.annotations
- 0.2.0-SNAPSHOT
-
-
-
- com.fasterxml.jackson.core
- jackson-core
- ${jackson-2-version}
-
-
- com.fasterxml.jackson.core
- jackson-annotations
- ${jackson-2-version}
-
-
- com.fasterxml.jackson.core
- jackson-databind
- ${jackson-2-version}
-
-
- com.fasterxml.jackson.datatype
- jackson-datatype-jsr310
- ${jackson-2-version}
-
-
- com.fasterxml.jackson.datatype
- jackson-datatype-jdk8
- ${jackson-2-version}
+ org.springframework.ide.vscode
+ language-server-commons
+ 0.0.1-SNAPSHOT
@@ -90,19 +48,6 @@
guava
18.0
-
-
- junit
- junit
- 4.11
- test
-
-
- org.assertj
- assertj-core
- 3.5.2
- test
-
diff --git a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/Assert.java b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/Assert.java
deleted file mode 100644
index 6d0ae7ffd..000000000
--- a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/Assert.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package org.springframework.ide.vscode.util;
-
-public class Assert {
-
- public static void isNull(String msg, Object obj) {
- if (obj!=null) {
- throw new IllegalStateException(msg);
- }
- }
-
-}
diff --git a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/CompletionHandler.java b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/CompletionHandler.java
deleted file mode 100644
index 166764a0b..000000000
--- a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/CompletionHandler.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package org.springframework.ide.vscode.util;
-
-import java.util.concurrent.CompletableFuture;
-
-import io.typefox.lsapi.CompletionList;
-import io.typefox.lsapi.TextDocumentPositionParams;
-
-@FunctionalInterface
-public interface CompletionHandler {
- CompletableFuture handle(TextDocumentPositionParams params);
-}
diff --git a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/CompletionResolveHandler.java b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/CompletionResolveHandler.java
deleted file mode 100644
index 73d9d011a..000000000
--- a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/CompletionResolveHandler.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package org.springframework.ide.vscode.util;
-
-import java.util.concurrent.CompletableFuture;
-
-import io.typefox.lsapi.CompletionItem;
-
-@FunctionalInterface
-public interface CompletionResolveHandler {
- CompletableFuture handle(CompletionItem unresolved);
-}
diff --git a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/Futures.java b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/Futures.java
deleted file mode 100644
index 5ba42866b..000000000
--- a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/Futures.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package org.springframework.ide.vscode.util;
-
-import java.util.concurrent.CompletableFuture;
-
-public class Futures {
-
- public static CompletableFuture of(T value) {
- CompletableFuture f = new CompletableFuture();
- f.complete(value);
- return f;
- }
-
-}
diff --git a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/JSON.java b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/JSON.java
deleted file mode 100644
index 32df4f379..000000000
--- a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/JSON.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package org.springframework.ide.vscode.util;
-
-import java.io.IOException;
-import java.nio.file.Path;
-import java.nio.file.Paths;
-
-import com.fasterxml.jackson.core.JsonGenerator;
-import com.fasterxml.jackson.core.JsonParser;
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.DeserializationContext;
-import com.fasterxml.jackson.databind.JsonDeserializer;
-import com.fasterxml.jackson.databind.JsonSerializer;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.databind.SerializerProvider;
-import com.fasterxml.jackson.databind.module.SimpleModule;
-import com.fasterxml.jackson.datatype.jdk8.Jdk8Module;
-import com.fasterxml.jackson.datatype.jsr310.JSR310Module;
-
-public class JSON {
-
- public static final ObjectMapper JSON = new ObjectMapper().registerModule(new Jdk8Module())
- .registerModule(new JSR310Module())
- .registerModule(pathAsJson())
- .configure(JsonGenerator.Feature.AUTO_CLOSE_TARGET, false);
-
- private static SimpleModule pathAsJson() {
- SimpleModule m = new SimpleModule();
-
- m.addSerializer(Path.class, new JsonSerializer() {
- @Override
- public void serialize(Path path,
- JsonGenerator gen,
- SerializerProvider serializerProvider) throws IOException, JsonProcessingException {
- gen.writeString(path.toString());
- }
- });
-
- m.addDeserializer(Path.class, new JsonDeserializer() {
- @Override
- public Path deserialize(JsonParser parse,
- DeserializationContext deserializationContext) throws IOException, JsonProcessingException {
- return Paths.get(parse.getText());
- }
- });
-
- return m;
- }
-
-
-
-}
diff --git a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/ListenerList.java b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/ListenerList.java
deleted file mode 100644
index a8bb01e51..000000000
--- a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/ListenerList.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package org.springframework.ide.vscode.util;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.function.Consumer;
-
-public class ListenerList {
-
- private List> listeners = new ArrayList<>();
-
- public synchronized void fire(T evt) {
- for (Consumer l : listeners) {
- l.accept(evt);
- }
- }
-
- public void add(Consumer l) {
- listeners.add(l);
- }
-
-}
diff --git a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/LoggingFormat.java b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/LoggingFormat.java
deleted file mode 100644
index 29bbff43e..000000000
--- a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/LoggingFormat.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package org.springframework.ide.vscode.util;
-
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.io.StringWriter;
-import java.time.Instant;
-import java.util.StringJoiner;
-import java.util.logging.*;
-
-public class LoggingFormat extends Formatter {
- public static ThreadLocal request = new ThreadLocal<>();
-
- @Override
- public String format(LogRecord record) {
- StringJoiner joiner = new StringJoiner("\t");
-
- joiner.add(record.getLevel().getName());
- joiner.add(requestAsString());
- joiner.add(Thread.currentThread().getName());
- joiner.add(Instant.ofEpochMilli(record.getMillis()).toString());
-// joiner.add(record.getLoggerName());
- joiner.add(record.getSourceClassName() + "#" + record.getSourceMethodName());
- joiner.add(record.getMessage());
-
- String result = joiner.toString() + "\n";
-
- Throwable thrown = record.getThrown();
-
- if (thrown != null) {
- StringWriter stackTrace = new StringWriter();
- PrintWriter print = new PrintWriter(stackTrace);
-
- thrown.printStackTrace(print);
- print.flush();
-
- result = result + stackTrace + "\n";
- }
-
- return result;
- }
-
- private CharSequence requestAsString() {
- Integer i = request.get();
-
- if (i == null)
- return "?";
- else
- return Integer.toString(i);
- }
-
- private static boolean started = false;
-
- public static void startLogging() throws IOException {
- if (!started) {
- started = true;
-
- Logger root = Logger.getLogger("");
-
- FileHandler file = new FileHandler("javac-services.%g.log", 100_000, 1, false);
-
- root.addHandler(file);
-
- for (Handler h : root.getHandlers())
- h.setFormatter(new LoggingFormat());
- }
- }
-}
diff --git a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/Settings.java b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/Settings.java
deleted file mode 100644
index 7ff3458ee..000000000
--- a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/Settings.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package org.springframework.ide.vscode.util;
-
-import java.util.Map;
-
-/**
- * Convenience wrapper around a 'settings' object. Provides some useful accessor methods to
- * retrieve properties from the settings object.
- */
-public class Settings {
-
- private Object settings;
-
- public Settings(Object settings) {
- this.settings = settings;
- }
-
- public Integer getInt(String... names) {
- Object val = getProperty(names);
- if (val instanceof Number) {
- return ((Number) val).intValue();
- }
- return null;
- }
-
- public Object getProperty(String... names) {
- return getProperty(settings, names, 0);
- }
-
- @SuppressWarnings("rawtypes")
- private static Object getProperty(Object settings, String[] names, int i) {
- if (i >= names.length) {
- return settings;
- } else if (settings instanceof Map) {
- Object sub = ((Map)settings).get(names[i]);
- return getProperty(sub, names, i+1);
- } else {
- return null;
- }
- }
-
-
-
-}
diff --git a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/ShowMessageException.java b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/ShowMessageException.java
deleted file mode 100644
index 0f347024d..000000000
--- a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/ShowMessageException.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package org.springframework.ide.vscode.util;
-
-import io.typefox.lsapi.MessageParams;
-import io.typefox.lsapi.MessageParamsImpl;
-
-public class ShowMessageException extends RuntimeException {
-
- private static final long serialVersionUID = 1L;
- public final MessageParams message;
-
- public ShowMessageException(MessageParams message, Exception cause) {
- super(message.getMessage(), cause);
-
- this.message = message;
- }
-
- public static ShowMessageException error(String message, Exception cause) {
- return create(MessageParams.TYPE_ERROR, message, cause);
- }
-
- public static ShowMessageException warning(String message, Exception cause) {
- return create(MessageParams.TYPE_WARNING, message, cause);
- }
-
- private static ShowMessageException create(int type, String message, Exception cause) {
- MessageParamsImpl m = new MessageParamsImpl();
-
- m.setMessage(message);
- m.setType(type);
-
- return new ShowMessageException(m, cause);
- }
-}
diff --git a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/SimpleLanguageServer.java b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/SimpleLanguageServer.java
deleted file mode 100644
index 9cdbb36a3..000000000
--- a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/SimpleLanguageServer.java
+++ /dev/null
@@ -1,131 +0,0 @@
-package org.springframework.ide.vscode.util;
-
-import java.nio.file.Path;
-import java.nio.file.Paths;
-import java.util.concurrent.CompletableFuture;
-import java.util.function.Consumer;
-import java.util.logging.Level;
-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.ShowMessageRequestParams;
-import io.typefox.lsapi.services.LanguageServer;
-import io.typefox.lsapi.services.WindowService;
-
-/**
- * Abstract base class to implement LanguageServer. Bits and pieces copied from
- * the 'JavaLanguageServer' example which seem generally useful / reusable end up in
- * here so we can try to keep the subclass itself more 'clutter free' and focus on
- * what its really doing and not the 'wiring and plumbing'.
- */
-public abstract class SimpleLanguageServer implements LanguageServer {
-
- private static final Logger LOG = Logger.getLogger(SimpleLanguageServer.class.getName());
-
- private Consumer showMessage = m -> {};
-
- private Path workspaceRoot;
-
- private SimpleTextDocumentService tds;
-
- private SimpleWorkspaceService workspace;
-
- @Override
- public CompletableFuture initialize(InitializeParams params) {
- LOG.info("Initializing");
- String rootPath = params.getRootPath();
- if (rootPath==null) {
- LOG.warning("workspaceRoot NOT SET");
- } else {
- this.workspaceRoot= Paths.get(rootPath).toAbsolutePath().normalize();
- LOG.info("workspaceRoot = "+workspaceRoot);
- }
-
- InitializeResultImpl result = new InitializeResultImpl();
-
- ServerCapabilitiesImpl cap = getServerCapabilities();
- result.setCapabilities(cap);
-
- return CompletableFuture.completedFuture(result);
- }
-
- @Override
- public WindowService getWindowService() {
- return new WindowService() {
- @Override
- public void onShowMessage(Consumer callback) {
- showMessage = callback;
- }
-
- @Override
- public void onShowMessageRequest(Consumer callback) {
-
- }
-
- @Override
- public void onLogMessage(Consumer callback) {
-
- }
- };
- }
-
- public void onError(String message, Throwable error) {
- if (error instanceof ShowMessageException)
- showMessage.accept(((ShowMessageException) error).message);
- else {
- LOG.log(Level.SEVERE, message, error);
-
- MessageParamsImpl m = new MessageParamsImpl();
-
- m.setMessage(message);
- m.setType(MessageParams.TYPE_ERROR);
-
- showMessage.accept(m);
- }
- }
-
- protected abstract ServerCapabilitiesImpl getServerCapabilities();
-
- @Override
- public void shutdown() {
- }
-
- @Override
- public void exit() {
- }
-
-
- public Path getWorkspaceRoot() {
- return workspaceRoot;
- }
-
- @Override
- public synchronized SimpleTextDocumentService getTextDocumentService() {
- if (tds==null) {
- tds = createTextDocumentService();
- }
- return tds;
- }
-
- protected SimpleTextDocumentService createTextDocumentService() {
- return new SimpleTextDocumentService();
- }
-
- public SimpleWorkspaceService createWorkspaceService() {
- return new SimpleWorkspaceService();
- }
-
- @Override
- public synchronized SimpleWorkspaceService getWorkspaceService() {
- if (workspace==null) {
- workspace = createWorkspaceService();
- }
- return workspace;
- }
-
-}
diff --git a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/SimpleTextDocumentService.java b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/SimpleTextDocumentService.java
deleted file mode 100644
index bb47c3946..000000000
--- a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/SimpleTextDocumentService.java
+++ /dev/null
@@ -1,271 +0,0 @@
-package org.springframework.ide.vscode.util;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.concurrent.CompletableFuture;
-import java.util.function.Consumer;
-import java.util.logging.Logger;
-
-import io.typefox.lsapi.CodeActionParams;
-import io.typefox.lsapi.CodeLens;
-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;
-import io.typefox.lsapi.DidSaveTextDocumentParams;
-import io.typefox.lsapi.DocumentFormattingParams;
-import io.typefox.lsapi.DocumentHighlight;
-import io.typefox.lsapi.DocumentOnTypeFormattingParams;
-import io.typefox.lsapi.DocumentRangeFormattingParams;
-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;
-import io.typefox.lsapi.SignatureHelp;
-import io.typefox.lsapi.SymbolInformation;
-import io.typefox.lsapi.TextDocumentContentChangeEvent;
-import io.typefox.lsapi.TextDocumentPositionParams;
-import io.typefox.lsapi.TextEdit;
-import io.typefox.lsapi.VersionedTextDocumentIdentifier;
-import io.typefox.lsapi.WorkspaceEdit;
-import io.typefox.lsapi.services.TextDocumentService;
-
-public class SimpleTextDocumentService implements TextDocumentService {
-
- private static final Logger LOG = Logger.getLogger(SimpleTextDocumentService.class.getName());
-
- private Consumer publishDiagnostics = (p) -> {};
-
- private Map documents = new HashMap<>();
- private ListenerList documentChangeListeners = new ListenerList<>();
- private CompletionHandler completionHandler = null;
- private CompletionResolveHandler completionResolveHandler = null;
-
- public synchronized void onCompletion(CompletionHandler h) {
- Assert.isNull("A completion handler is already set, multiple handlers not supported yet", completionHandler);
- this.completionHandler = h;
- }
-
- public synchronized void onCompletionResolve(CompletionResolveHandler h) {
- Assert.isNull("A completionResolveHandler handler is already set, multiple handlers not supported yet", completionResolveHandler);
- this.completionResolveHandler = h;
- }
-
- /**
- * Gets all documents this service is tracking, generally these are the documents that have been opened / changed,
- * and not yet closed.
- */
- public synchronized Collection getAll() {
- return new ArrayList<>(documents.values());
- }
-
-
- @Override
- public final void didChange(DidChangeTextDocumentParams params) {
- VersionedTextDocumentIdentifier docId = params.getTextDocument();
- String url = docId.getUri();
- if (url!=null) {
- LOG.info("Document changed: "+url);
- TextDocument doc = getOrCreateDocument(url);
- for (TextDocumentContentChangeEvent change : params.getContentChanges()) {
- doc.apply(change);
- didChangeContent(doc, change);
- }
- }
- }
-
- @Override
- public void didOpen(DidOpenTextDocumentParams params) {
- //LOG.info("didOpen: "+params);
- //Example message:
- //{
- // "jsonrpc":"2.0",
- // "method":"textDocument/didOpen",
- // "params":{
- // "textDocument":{
- // "uri":"file:///home/kdvolder/tmp/hello-java/hello.txt",
- // "languageId":"plaintext",
- // "version":1,
- // "text":"This is some text ya-all o\nsss typescript\n"
- // }
- // }
- //}
- String url = params.getTextDocument().getUri();
- if (url!=null) {
- String text = params.getTextDocument().getText();
- TextDocument doc = getOrCreateDocument(url);
- doc.setText(text);
- TextDocumentContentChangeEvent change = new TextDocumentContentChangeEvent() {
- @Override
- public Range getRange() {
- return null;
- }
-
- @Override
- public Integer getRangeLength() {
- return null;
- }
-
- @Override
- public String getText() {
- return text;
- }
- };
- TextDocumentContentChange evt = new TextDocumentContentChange(doc, change);
- documentChangeListeners.fire(evt);
- }
- }
-
- @Override
- public void didClose(DidCloseTextDocumentParams params) {
- String url = params.getTextDocument().getUri();
- if (url!=null) {
- documents.remove(url);
- }
- }
-
-
- void didChangeContent(TextDocument doc, TextDocumentContentChangeEvent change) {
- documentChangeListeners.fire(new TextDocumentContentChange(doc, change));
- }
-
- public void onDidChangeContent(Consumer l) {
- documentChangeListeners.add(l);
- }
-
- private synchronized TextDocument getOrCreateDocument(String url) {
- TextDocument doc = documents.get(url);
- if (doc==null) {
- documents.put(url, doc = new TextDocument(url));
- }
- return doc;
- }
-
- @Override
- public CompletableFuture completion(TextDocumentPositionParams position) {
- CompletionHandler h = completionHandler;
- if (h!=null) {
- return completionHandler.handle(position);
- }
- return null; //TODO: does caller handle nulls? Or do we need to provide something that create a empty completion list?
- }
-
- @Override
- public CompletableFuture resolveCompletionItem(CompletionItem unresolved) {
- CompletionResolveHandler h = completionResolveHandler;
- if (h!=null) {
- return h.handle(unresolved);
- }
- return null;
- }
-
- @Override
- public CompletableFuture hover(TextDocumentPositionParams position) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public CompletableFuture signatureHelp(TextDocumentPositionParams position) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public CompletableFuture> definition(TextDocumentPositionParams position) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public CompletableFuture> references(ReferenceParams params) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public CompletableFuture documentHighlight(TextDocumentPositionParams position) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public CompletableFuture> documentSymbol(DocumentSymbolParams params) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public CompletableFuture> codeAction(CodeActionParams params) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public CompletableFuture> codeLens(CodeLensParams params) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public CompletableFuture resolveCodeLens(CodeLens unresolved) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public CompletableFuture> formatting(DocumentFormattingParams params) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public CompletableFuture> rangeFormatting(DocumentRangeFormattingParams params) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public CompletableFuture> onTypeFormatting(DocumentOnTypeFormattingParams params) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public CompletableFuture rename(RenameParams params) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public void didSave(DidSaveTextDocumentParams params) {
- // TODO Auto-generated method stub
-
- }
-
- @Override
- public synchronized void onPublishDiagnostics(Consumer callback) {
- publishDiagnostics = publishDiagnostics.andThen(callback);
- }
-
- public void publishDiagnostics(TextDocument doc, List diagnostics) {
- if (diagnostics!=null && !diagnostics.isEmpty()) {
- PublishDiagnosticsParamsImpl params = new PublishDiagnosticsParamsImpl();
- params.setUri(doc.getUri());
- params.setDiagnostics(diagnostics);
- publishDiagnostics.accept(params);
- }
- }
-
-}
diff --git a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/SimpleWorkspaceService.java b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/SimpleWorkspaceService.java
deleted file mode 100644
index d0df372c6..000000000
--- a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/SimpleWorkspaceService.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package org.springframework.ide.vscode.util;
-
-import java.util.List;
-import java.util.concurrent.CompletableFuture;
-import java.util.function.Consumer;
-
-import io.typefox.lsapi.DidChangeConfigurationParams;
-import io.typefox.lsapi.DidChangeWatchedFilesParams;
-import io.typefox.lsapi.SymbolInformation;
-import io.typefox.lsapi.WorkspaceSymbolParams;
-import io.typefox.lsapi.services.WorkspaceService;
-
-public class SimpleWorkspaceService implements WorkspaceService {
-
- private ListenerList configurationListeners = new ListenerList<>();
-
- @Override
- public CompletableFuture> symbol(WorkspaceSymbolParams params) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public void didChangeConfiguraton(DidChangeConfigurationParams params) {
- configurationListeners.fire(new Settings(params.getSettings()));
- }
-
- @Override
- public void didChangeWatchedFiles(DidChangeWatchedFilesParams params) {
- // TODO Auto-generated method stub
-
- }
-
- public void onDidChangeConfiguraton(Consumer l) {
- configurationListeners.add(l);
- }
-
-}
diff --git a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/TextDocument.java b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/TextDocument.java
deleted file mode 100644
index 3fbf5bfa7..000000000
--- a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/TextDocument.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package org.springframework.ide.vscode.util;
-
-import io.typefox.lsapi.Range;
-import io.typefox.lsapi.TextDocumentContentChangeEvent;
-
-public class TextDocument {
-
- private final String uri;
- private String text = "";
-
- public TextDocument(String uri) {
- this.uri = uri;
- }
-
- public String getUri() {
- return uri;
- }
-
- public String getText() {
- return text;
- }
-
- public void setText(String text) {
- this.text = text;
- }
- public void apply(TextDocumentContentChangeEvent change) {
- Range rng = change.getRange();
- if (rng==null) {
- //full sync mode
- this.text = change.getText();
- } else {
- //incremental sync mode
- throw new IllegalStateException("Incremental sync not yet implemented");
- }
- }
-
-
-}
diff --git a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/TextDocumentContentChange.java b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/TextDocumentContentChange.java
deleted file mode 100644
index ca82c08ef..000000000
--- a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/util/TextDocumentContentChange.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package org.springframework.ide.vscode.util;
-
-import io.typefox.lsapi.TextDocumentContentChangeEvent;
-
-public class TextDocumentContentChange {
-
- private final TextDocument document;
- private final TextDocumentContentChangeEvent change;
-
- public TextDocumentContentChange(TextDocument doc, TextDocumentContentChangeEvent change) {
- this.document = doc;
- this.change = change;
- }
-
- public TextDocument getDocument() {
- return document;
- }
-
- public TextDocumentContentChangeEvent getChange() {
- return change;
- }
-
-}