diff --git a/assembly/assembly-ide-war/pom.xml b/assembly/assembly-ide-war/pom.xml
index aa03387bb7..46ac9856da 100644
--- a/assembly/assembly-ide-war/pom.xml
+++ b/assembly/assembly-ide-war/pom.xml
@@ -160,10 +160,6 @@
org.eclipse.che.plugin
che-plugin-languageserver-ide
-
- org.eclipse.che.plugin
- che-plugin-languageserver-shared
-
org.eclipse.che.plugin
che-plugin-machine-ext-client
diff --git a/assembly/assembly-ide-war/src/main/resources/org/eclipse/che/ide/IDE.gwt.xml b/assembly/assembly-ide-war/src/main/resources/org/eclipse/che/ide/IDE.gwt.xml
index e951b39f2a..b2421f5206 100644
--- a/assembly/assembly-ide-war/src/main/resources/org/eclipse/che/ide/IDE.gwt.xml
+++ b/assembly/assembly-ide-war/src/main/resources/org/eclipse/che/ide/IDE.gwt.xml
@@ -81,6 +81,7 @@
+
diff --git a/assembly/assembly-wsagent-war/pom.xml b/assembly/assembly-wsagent-war/pom.xml
index b03d284446..6443e43bee 100644
--- a/assembly/assembly-wsagent-war/pom.xml
+++ b/assembly/assembly-wsagent-war/pom.xml
@@ -70,6 +70,14 @@
org.eclipse.che.core
che-core-api-git
+
+ org.eclipse.che.core
+ che-core-api-languageserver
+
+
+ org.eclipse.che.core
+ che-core-api-languageserver-shared
+
org.eclipse.che.core
che-core-api-project
@@ -146,11 +154,7 @@
org.eclipse.che.plugin
- che-plugin-languageserver-server
-
-
- org.eclipse.che.plugin
- che-plugin-languageserver-shared
+ che-plugin-json-server
org.eclipse.che.plugin
diff --git a/plugins/plugin-csharp/che-plugin-csharp-lang-server/pom.xml b/plugins/plugin-csharp/che-plugin-csharp-lang-server/pom.xml
index b430de5fff..76048a3456 100644
--- a/plugins/plugin-csharp/che-plugin-csharp-lang-server/pom.xml
+++ b/plugins/plugin-csharp/che-plugin-csharp-lang-server/pom.xml
@@ -36,10 +36,22 @@
com.google.inject.extensions
guice-multibindings
+
+ io.typefox.lsapi
+ io.typefox.lsapi.services
+
org.eclipse.che.core
che-core-api-core
+
+ org.eclipse.che.core
+ che-core-api-languageserver
+
+
+ org.eclipse.che.core
+ che-core-api-languageserver-shared
+
org.eclipse.che.core
che-core-api-project
@@ -48,6 +60,10 @@
org.eclipse.che.core
che-core-commons-inject
+
+ org.eclipse.che.core
+ che-core-commons-lang
+
org.eclipse.che.plugin
che-plugin-csharp-lang-shared
diff --git a/plugins/plugin-csharp/che-plugin-csharp-lang-server/src/main/java/org/eclipse/che/plugin/csharp/inject/CSharpModule.java b/plugins/plugin-csharp/che-plugin-csharp-lang-server/src/main/java/org/eclipse/che/plugin/csharp/inject/CSharpModule.java
index ca85973102..50c8e9eff4 100644
--- a/plugins/plugin-csharp/che-plugin-csharp-lang-server/src/main/java/org/eclipse/che/plugin/csharp/inject/CSharpModule.java
+++ b/plugins/plugin-csharp/che-plugin-csharp-lang-server/src/main/java/org/eclipse/che/plugin/csharp/inject/CSharpModule.java
@@ -13,9 +13,11 @@ package org.eclipse.che.plugin.csharp.inject;
import com.google.inject.AbstractModule;
import com.google.inject.multibindings.Multibinder;
+import org.eclipse.che.api.languageserver.launcher.LanguageServerLauncher;
import org.eclipse.che.api.project.server.handlers.ProjectHandler;
import org.eclipse.che.api.project.server.type.ProjectTypeDef;
import org.eclipse.che.inject.DynaModule;
+import org.eclipse.che.plugin.csharp.languageserver.CSharpLanguageServerLauncher;
import org.eclipse.che.plugin.csharp.projecttype.CSharpProjectType;
import org.eclipse.che.plugin.csharp.projecttype.CreateNetCoreProjectHandler;
@@ -31,5 +33,7 @@ public class CSharpModule extends AbstractModule {
Multibinder projectHandlersMultibinder = Multibinder.newSetBinder(binder(), ProjectHandler.class);
projectHandlersMultibinder.addBinding().to(CreateNetCoreProjectHandler.class);
+
+ Multibinder.newSetBinder(binder(), LanguageServerLauncher.class).addBinding().to(CSharpLanguageServerLauncher.class);
}
}
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/CSharpLanguageServerLauncher.java b/plugins/plugin-csharp/che-plugin-csharp-lang-server/src/main/java/org/eclipse/che/plugin/csharp/languageserver/CSharpLanguageServerLauncher.java
similarity index 71%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/CSharpLanguageServerLauncher.java
rename to plugins/plugin-csharp/che-plugin-csharp-lang-server/src/main/java/org/eclipse/che/plugin/csharp/languageserver/CSharpLanguageServerLauncher.java
index 486d9562d3..9c2477ef35 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/CSharpLanguageServerLauncher.java
+++ b/plugins/plugin-csharp/che-plugin-csharp-lang-server/src/main/java/org/eclipse/che/plugin/csharp/languageserver/CSharpLanguageServerLauncher.java
@@ -8,19 +8,22 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.launcher;
+package org.eclipse.che.plugin.csharp.languageserver;
import io.typefox.lsapi.services.json.JsonBasedLanguageServer;
+import com.google.inject.Inject;
import com.google.inject.Singleton;
-import org.apache.commons.io.IOUtils;
-import org.eclipse.che.plugin.languageserver.server.exception.LanguageServerException;
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
-import org.eclipse.che.plugin.languageserver.shared.model.impl.LanguageDescriptionImpl;
+import org.eclipse.che.api.languageserver.exception.LanguageServerException;
+import org.eclipse.che.api.languageserver.launcher.LanguageServerLauncherTemplate;
+import org.eclipse.che.api.languageserver.shared.model.LanguageDescription;
+import org.eclipse.che.api.languageserver.shared.model.impl.LanguageDescriptionImpl;
+import org.eclipse.che.commons.lang.IoUtil;
import java.io.File;
import java.io.IOException;
+import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Arrays;
@@ -33,12 +36,12 @@ import static java.util.Arrays.asList;
@Singleton
public class CSharpLanguageServerLauncher extends LanguageServerLauncherTemplate {
- public static final String LANGUAGE_ID = "csharp";
- public static final String[] EXTENSIONS = new String[] {"cs", "csx"};
- public static final String[] MIME_TYPES = new String[] {"text/x-csharp"};
+ private static final String LANGUAGE_ID = "csharp";
+ private static final String[] EXTENSIONS = new String[] {"cs", "csx"};
+ private static final String[] MIME_TYPES = new String[] {"text/x-csharp"};
+ private static final LanguageDescriptionImpl description;
- public static final LanguageDescriptionImpl description;
- private static final String SCRIPT_PATH = "che/ls-csharp/launch.sh";
+ private final Path launchScript;
static {
description = new LanguageDescriptionImpl();
@@ -47,12 +50,16 @@ public class CSharpLanguageServerLauncher extends LanguageServerLauncherTemplate
description.setMimeTypes(Arrays.asList(MIME_TYPES));
}
+ @Inject
+ public CSharpLanguageServerLauncher() {
+ launchScript = Paths.get(System.getenv("HOME"), "che/ls-csharp/launch.sh");
+ }
+
@Override
protected Process startLanguageServerProcess(String projectPath) throws LanguageServerException {
restoreDependencies(projectPath);
- Path launchFile = Paths.get(System.getenv("HOME"), SCRIPT_PATH);
- ProcessBuilder processBuilder = new ProcessBuilder(launchFile.toString());
+ ProcessBuilder processBuilder = new ProcessBuilder(launchScript.toString());
processBuilder.redirectInput(ProcessBuilder.Redirect.PIPE);
processBuilder.redirectOutput(ProcessBuilder.Redirect.PIPE);
@@ -70,8 +77,8 @@ public class CSharpLanguageServerLauncher extends LanguageServerLauncherTemplate
Process process = processBuilder.start();
int resultCode = process.waitFor();
if (resultCode != 0) {
- String err = IOUtils.toString(process.getErrorStream());
- String in = IOUtils.toString(process.getInputStream());
+ String err = IoUtil.readStream(process.getErrorStream());
+ String in = IoUtil.readStream(process.getInputStream());
throw new LanguageServerException("Can't restore dependencies. Error: " + err + ". Output: " + in);
}
} catch (IOException | InterruptedException e) {
@@ -93,7 +100,6 @@ public class CSharpLanguageServerLauncher extends LanguageServerLauncherTemplate
@Override
public boolean isAbleToLaunch() {
- Path launchFile = Paths.get(System.getenv("HOME"), SCRIPT_PATH);
- return launchFile.toFile().exists();
+ return Files.exists(launchScript);
}
}
diff --git a/plugins/plugin-json/che-plugin-json-server/pom.xml b/plugins/plugin-json/che-plugin-json-server/pom.xml
new file mode 100644
index 0000000000..da55f21e6c
--- /dev/null
+++ b/plugins/plugin-json/che-plugin-json-server/pom.xml
@@ -0,0 +1,52 @@
+
+
+
+ 4.0.0
+
+ che-plugin-json-parent
+ org.eclipse.che.plugin
+ 5.0.0-M5-SNAPSHOT
+
+ che-plugin-json-server
+ Che Plugin :: JSON :: Extension Server
+
+ false
+
+
+
+ com.google.inject
+ guice
+
+
+ com.google.inject.extensions
+ guice-multibindings
+
+
+ io.typefox.lsapi
+ io.typefox.lsapi.services
+
+
+ org.eclipse.che.core
+ che-core-api-languageserver
+
+
+ org.eclipse.che.core
+ che-core-api-languageserver-shared
+
+
+ org.eclipse.che.core
+ che-core-commons-inject
+
+
+
diff --git a/plugins/plugin-json/che-plugin-json-server/src/main/java/org/eclipse/che/plugin/json/inject/JsonModule.java b/plugins/plugin-json/che-plugin-json-server/src/main/java/org/eclipse/che/plugin/json/inject/JsonModule.java
new file mode 100644
index 0000000000..1b055aad40
--- /dev/null
+++ b/plugins/plugin-json/che-plugin-json-server/src/main/java/org/eclipse/che/plugin/json/inject/JsonModule.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2012-2016 Codenvy, S.A.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Codenvy, S.A. - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.che.plugin.json.inject;
+
+import com.google.inject.AbstractModule;
+import com.google.inject.multibindings.Multibinder;
+
+import org.eclipse.che.inject.DynaModule;
+import org.eclipse.che.plugin.json.languageserver.JsonLanguageServerLauncher;
+import org.eclipse.che.api.languageserver.launcher.LanguageServerLauncher;
+
+/**
+ * @author Anatolii Bazko
+ */
+@DynaModule
+public class JsonModule extends AbstractModule {
+ @Override
+ protected void configure() {
+ Multibinder.newSetBinder(binder(), LanguageServerLauncher.class).addBinding().to(JsonLanguageServerLauncher.class);
+ }
+}
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/JsonLanguageServerLauncher.java b/plugins/plugin-json/che-plugin-json-server/src/main/java/org/eclipse/che/plugin/json/languageserver/JsonLanguageServerLauncher.java
similarity index 69%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/JsonLanguageServerLauncher.java
rename to plugins/plugin-json/che-plugin-json-server/src/main/java/org/eclipse/che/plugin/json/languageserver/JsonLanguageServerLauncher.java
index 0b7d78e017..24948ecbd5 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/JsonLanguageServerLauncher.java
+++ b/plugins/plugin-json/che-plugin-json-server/src/main/java/org/eclipse/che/plugin/json/languageserver/JsonLanguageServerLauncher.java
@@ -8,17 +8,20 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.launcher;
+package org.eclipse.che.plugin.json.languageserver;
import io.typefox.lsapi.services.json.JsonBasedLanguageServer;
+import com.google.inject.Inject;
import com.google.inject.Singleton;
-import org.eclipse.che.plugin.languageserver.server.exception.LanguageServerException;
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
-import org.eclipse.che.plugin.languageserver.shared.model.impl.LanguageDescriptionImpl;
+import org.eclipse.che.api.languageserver.exception.LanguageServerException;
+import org.eclipse.che.api.languageserver.launcher.LanguageServerLauncherTemplate;
+import org.eclipse.che.api.languageserver.shared.model.LanguageDescription;
+import org.eclipse.che.api.languageserver.shared.model.impl.LanguageDescriptionImpl;
import java.io.IOException;
+import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
@@ -31,12 +34,12 @@ import static java.util.Arrays.asList;
@Singleton
public class JsonLanguageServerLauncher extends LanguageServerLauncherTemplate {
- public static final String LANGUAGE_ID = "json";
- public static final String[] EXTENSIONS = new String[] {"json", "bowerrc", "jshintrc", "jscsrc", "eslintrc", "babelrc"};
- public static final String[] MIME_TYPES = new String[] {"application/json"};
-
+ private static final String LANGUAGE_ID = "json";
+ private static final String[] EXTENSIONS = new String[] {"json", "bowerrc", "jshintrc", "jscsrc", "eslintrc", "babelrc"};
+ private static final String[] MIME_TYPES = new String[] {"application/json"};
private static final LanguageDescriptionImpl description;
- private static final String SCRIPT_PATH = "che/ls-json/launch.sh";
+
+ private final Path launchScript;
static {
description = new LanguageDescriptionImpl();
@@ -45,6 +48,11 @@ public class JsonLanguageServerLauncher extends LanguageServerLauncherTemplate {
description.setMimeTypes(asList(MIME_TYPES));
}
+ @Inject
+ public JsonLanguageServerLauncher() {
+ launchScript = Paths.get(System.getenv("HOME"), "che/ls-json/launch.sh");
+ }
+
@Override
public LanguageDescription getLanguageDescription() {
return description;
@@ -52,8 +60,7 @@ public class JsonLanguageServerLauncher extends LanguageServerLauncherTemplate {
@Override
public boolean isAbleToLaunch() {
- Path launchFile = Paths.get(System.getenv("HOME"), SCRIPT_PATH);
- return launchFile.toFile().exists();
+ return Files.exists(launchScript);
}
protected JsonBasedLanguageServer connectToLanguageServer(Process languageServerProcess) {
@@ -63,9 +70,7 @@ public class JsonLanguageServerLauncher extends LanguageServerLauncherTemplate {
}
protected Process startLanguageServerProcess(String projectPath) throws LanguageServerException {
- Path launchFile = Paths.get(System.getenv("HOME"), SCRIPT_PATH);
-
- ProcessBuilder processBuilder = new ProcessBuilder(launchFile.toString());
+ ProcessBuilder processBuilder = new ProcessBuilder(launchScript.toString());
processBuilder.redirectInput(ProcessBuilder.Redirect.PIPE);
processBuilder.redirectOutput(ProcessBuilder.Redirect.PIPE);
try {
diff --git a/plugins/plugin-json/pom.xml b/plugins/plugin-json/pom.xml
new file mode 100644
index 0000000000..8294c99db0
--- /dev/null
+++ b/plugins/plugin-json/pom.xml
@@ -0,0 +1,28 @@
+
+
+
+ 4.0.0
+
+ che-plugin-parent
+ org.eclipse.che.plugin
+ 5.0.0-M5-SNAPSHOT
+ ../pom.xml
+
+ che-plugin-json-parent
+ pom
+ Che Plugin :: JSON :: Parent
+
+ che-plugin-json-server
+
+
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/pom.xml b/plugins/plugin-languageserver/che-plugin-languageserver-ide/pom.xml
index 7872b40101..f26da4505a 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/pom.xml
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/pom.xml
@@ -22,6 +22,9 @@
che-plugin-languageserver-ide
jar
Che Plugin :: Language Server :: IDE
+
+ ${project.build.directory}/generated-sources/dto/
+
com.google.guava
@@ -51,6 +54,14 @@
javax.validation
validation-api
+
+ org.eclipse.che.core
+ che-core-api-dto
+
+
+ org.eclipse.che.core
+ che-core-api-languageserver-shared
+
org.eclipse.che.core
che-core-commons-annotations
@@ -71,10 +82,6 @@
org.eclipse.che.core
che-core-ide-ui
-
- org.eclipse.che.plugin
- che-plugin-languageserver-shared
-
org.eclipse.che.plugin
che-plugin-orion-editor
@@ -95,6 +102,7 @@
+ target/classes
src/main/java
@@ -102,6 +110,90 @@
src/main/resources
+
+ ${dto-generator-out-directory}
+
+
+
+ src/test/resources
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+
+
+ add-resource
+ process-sources
+
+ add-resource
+
+
+
+
+ ${dto-generator-out-directory}/META-INF
+ META-INF
+
+
+
+
+
+ add-source
+ process-sources
+
+ add-source
+
+
+
+ ${dto-generator-out-directory}
+
+
+
+
+
+
+ maven-compiler-plugin
+
+
+ pre-compile
+ generate-sources
+
+ compile
+
+
+
+
+
+ org.eclipse.che.core
+ che-core-api-dto-maven-plugin
+ ${project.version}
+
+
+ generate-client-dto
+ process-sources
+
+ generate
+
+
+
+ org.eclipse.che.api.languageserver.shared
+
+ ${dto-generator-out-directory}
+ org.eclipse.che.api.languageserver.shared.dto.DtoClientImpls
+ client
+
+
+
+
+
+ ${project.groupId}
+ ${project.artifactId}
+ ${project.version}
+
+
+
+
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/LanguageServerExtension.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/LanguageServerExtension.java
index e21b162fb1..0994da899f 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/LanguageServerExtension.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/LanguageServerExtension.java
@@ -14,6 +14,11 @@ import com.google.inject.Inject;
import com.google.inject.Singleton;
import com.google.web.bindery.event.shared.EventBus;
+import org.eclipse.che.api.languageserver.shared.lsapi.DidCloseTextDocumentParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DidOpenTextDocumentParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DidSaveTextDocumentParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentIdentifierDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentItemDTO;
import org.eclipse.che.api.promises.client.Operation;
import org.eclipse.che.api.promises.client.OperationException;
import org.eclipse.che.ide.api.action.ActionManager;
@@ -33,11 +38,6 @@ import org.eclipse.che.plugin.languageserver.ide.navigation.references.FindRefer
import org.eclipse.che.plugin.languageserver.ide.navigation.symbol.GoToSymbolAction;
import org.eclipse.che.plugin.languageserver.ide.navigation.workspace.FindSymbolAction;
import org.eclipse.che.plugin.languageserver.ide.service.TextDocumentServiceClient;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DidCloseTextDocumentParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DidOpenTextDocumentParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DidSaveTextDocumentParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextDocumentIdentifierDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextDocumentItemDTO;
import static org.eclipse.che.ide.api.action.IdeActions.GROUP_ASSISTANT;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/LanguageServerFileTypeRegister.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/LanguageServerFileTypeRegister.java
index d7f3429cc6..2ae697a180 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/LanguageServerFileTypeRegister.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/LanguageServerFileTypeRegister.java
@@ -15,6 +15,7 @@ import com.google.gwt.core.client.JsArrayString;
import com.google.inject.Inject;
import com.google.inject.Singleton;
+import org.eclipse.che.api.languageserver.shared.lsapi.LanguageDescriptionDTO;
import org.eclipse.che.api.promises.client.Operation;
import org.eclipse.che.api.promises.client.OperationException;
import org.eclipse.che.api.promises.client.Promise;
@@ -30,7 +31,6 @@ import org.eclipse.che.ide.editor.orion.client.jso.OrionHighlightingConfiguratio
import org.eclipse.che.plugin.languageserver.ide.editor.LanguageServerEditorProvider;
import org.eclipse.che.plugin.languageserver.ide.hover.HoverProvider;
import org.eclipse.che.plugin.languageserver.ide.service.LanguageServerRegistryServiceClient;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.LanguageDescriptionDTO;
import java.util.List;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/DiagnosticAnnotation.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/DiagnosticAnnotation.java
index 7c6910ee1e..60ddfff77b 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/DiagnosticAnnotation.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/DiagnosticAnnotation.java
@@ -14,10 +14,10 @@ import elemental.dom.Element;
import elemental.js.dom.JsElement;
import io.typefox.lsapi.DiagnosticSeverity;
+import org.eclipse.che.api.languageserver.shared.lsapi.DiagnosticDTO;
import org.eclipse.che.ide.api.editor.text.annotation.Annotation;
import org.eclipse.che.ide.util.dom.Elements;
import org.eclipse.che.plugin.languageserver.ide.LanguageServerResources;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DiagnosticDTO;
import org.vectomatic.dom.svg.ui.SVGImage;
/**
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/DiagnosticCollector.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/DiagnosticCollector.java
index 803a3aaeb8..9220a940f8 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/DiagnosticCollector.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/DiagnosticCollector.java
@@ -10,7 +10,8 @@
*******************************************************************************/
package org.eclipse.che.plugin.languageserver.ide.editor;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DiagnosticDTO;
+
+import org.eclipse.che.api.languageserver.shared.lsapi.DiagnosticDTO;
/**
* @author Evgen Vidolob
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/LanguageServerAnnotationModel.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/LanguageServerAnnotationModel.java
index aa995bf04b..30664a0deb 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/LanguageServerAnnotationModel.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/LanguageServerAnnotationModel.java
@@ -13,6 +13,8 @@ package org.eclipse.che.plugin.languageserver.ide.editor;
import com.google.inject.assistedinject.Assisted;
import com.google.inject.assistedinject.AssistedInject;
+import org.eclipse.che.api.languageserver.shared.lsapi.DiagnosticDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.RangeDTO;
import org.eclipse.che.ide.api.editor.annotation.AnnotationModelImpl;
import org.eclipse.che.ide.api.editor.document.Document;
import org.eclipse.che.ide.api.editor.document.DocumentHandle;
@@ -22,8 +24,6 @@ import org.eclipse.che.ide.api.editor.text.TextPosition;
import org.eclipse.che.ide.api.editor.texteditor.EditorResources;
import org.eclipse.che.ide.editor.orion.client.OrionAnnotationSeverityProvider;
import org.eclipse.che.plugin.languageserver.ide.LanguageServerResources;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DiagnosticDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.RangeDTO;
import java.util.ArrayList;
import java.util.HashMap;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/LanguageServerFormatter.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/LanguageServerFormatter.java
index e23e1f3abe..e0edbe92d6 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/LanguageServerFormatter.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/LanguageServerFormatter.java
@@ -15,6 +15,14 @@ import io.typefox.lsapi.ServerCapabilities;
import com.google.inject.Inject;
import com.google.inject.assistedinject.Assisted;
+import org.eclipse.che.api.languageserver.shared.lsapi.DocumentFormattingParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DocumentOnTypeFormattingParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DocumentRangeFormattingParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.FormattingOptionsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.PositionDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.RangeDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentIdentifierDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextEditDTO;
import org.eclipse.che.api.promises.client.Operation;
import org.eclipse.che.api.promises.client.OperationException;
import org.eclipse.che.api.promises.client.Promise;
@@ -32,14 +40,6 @@ import org.eclipse.che.ide.api.notification.NotificationManager;
import org.eclipse.che.ide.dto.DtoFactory;
import org.eclipse.che.ide.util.loging.Log;
import org.eclipse.che.plugin.languageserver.ide.service.TextDocumentServiceClient;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DocumentFormattingParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DocumentOnTypeFormattingParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DocumentRangeFormattingParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.FormattingOptionsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.PositionDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.RangeDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextDocumentIdentifierDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextEditDTO;
import java.util.List;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/PublishDiagnosticsProcessor.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/PublishDiagnosticsProcessor.java
index 5627b1533d..3829ac0520 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/PublishDiagnosticsProcessor.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/PublishDiagnosticsProcessor.java
@@ -13,14 +13,14 @@ package org.eclipse.che.plugin.languageserver.ide.editor;
import com.google.inject.Inject;
import com.google.inject.Singleton;
+import org.eclipse.che.api.languageserver.shared.lsapi.DiagnosticDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.PublishDiagnosticsParamsDTO;
import org.eclipse.che.ide.api.editor.EditorAgent;
import org.eclipse.che.ide.api.editor.EditorPartPresenter;
import org.eclipse.che.ide.api.editor.annotation.AnnotationModel;
import org.eclipse.che.ide.api.editor.editorconfig.TextEditorConfiguration;
import org.eclipse.che.ide.api.editor.texteditor.TextEditor;
import org.eclipse.che.ide.resource.Path;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DiagnosticDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.PublishDiagnosticsParamsDTO;
/**
* @author Anatolii Bazko
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/codeassist/CompletionItemBasedCompletionProposal.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/codeassist/CompletionItemBasedCompletionProposal.java
index 31e6570ad9..030182e67e 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/codeassist/CompletionItemBasedCompletionProposal.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/codeassist/CompletionItemBasedCompletionProposal.java
@@ -17,6 +17,9 @@ import com.google.gwt.safehtml.shared.SafeHtmlBuilder;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.Widget;
+import org.eclipse.che.api.languageserver.shared.lsapi.CompletionItemDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.RangeDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentIdentifierDTO;
import org.eclipse.che.api.promises.client.Operation;
import org.eclipse.che.api.promises.client.OperationException;
import org.eclipse.che.api.promises.client.PromiseError;
@@ -29,9 +32,6 @@ import org.eclipse.che.ide.api.icon.Icon;
import org.eclipse.che.ide.util.loging.Log;
import org.eclipse.che.plugin.languageserver.ide.LanguageServerResources;
import org.eclipse.che.plugin.languageserver.ide.service.TextDocumentServiceClient;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.CompletionItemDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.RangeDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextDocumentIdentifierDTO;
/**
* @author Anatolii Bazko
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/codeassist/LanguageServerCodeAssistProcessor.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/codeassist/LanguageServerCodeAssistProcessor.java
index 82dea9b9fe..ff3396f12f 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/codeassist/LanguageServerCodeAssistProcessor.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/codeassist/LanguageServerCodeAssistProcessor.java
@@ -15,6 +15,9 @@ import io.typefox.lsapi.ServerCapabilities;
import com.google.inject.Inject;
import com.google.inject.assistedinject.Assisted;
+import org.eclipse.che.api.languageserver.shared.lsapi.CompletionItemDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentIdentifierDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentPositionParamsDTO;
import org.eclipse.che.api.promises.client.Operation;
import org.eclipse.che.api.promises.client.OperationException;
import org.eclipse.che.api.promises.client.PromiseError;
@@ -25,9 +28,6 @@ import org.eclipse.che.ide.api.editor.texteditor.TextEditor;
import org.eclipse.che.plugin.languageserver.ide.LanguageServerResources;
import org.eclipse.che.plugin.languageserver.ide.service.TextDocumentServiceClient;
import org.eclipse.che.plugin.languageserver.ide.util.DtoBuildHelper;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.CompletionItemDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextDocumentIdentifierDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextDocumentPositionParamsDTO;
import java.util.List;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/signature/LanguageServerSignatureHelp.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/signature/LanguageServerSignatureHelp.java
index fc1a34ecc0..92d535efb2 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/signature/LanguageServerSignatureHelp.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/signature/LanguageServerSignatureHelp.java
@@ -17,6 +17,8 @@ import com.google.inject.Inject;
import com.google.inject.assistedinject.Assisted;
import com.google.web.bindery.event.shared.HandlerRegistration;
+import org.eclipse.che.api.languageserver.shared.lsapi.SignatureHelpDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentPositionParamsDTO;
import org.eclipse.che.api.promises.client.Function;
import org.eclipse.che.api.promises.client.FunctionException;
import org.eclipse.che.api.promises.client.Promise;
@@ -33,8 +35,6 @@ import org.eclipse.che.ide.api.notification.NotificationManager;
import org.eclipse.che.ide.api.notification.StatusNotification;
import org.eclipse.che.plugin.languageserver.ide.service.TextDocumentServiceClient;
import org.eclipse.che.plugin.languageserver.ide.util.DtoBuildHelper;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.SignatureHelpDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextDocumentPositionParamsDTO;
import java.util.List;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/signature/ParamterInfoImpl.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/signature/ParamterInfoImpl.java
index fae7787101..86c6d8fd00 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/signature/ParamterInfoImpl.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/signature/ParamterInfoImpl.java
@@ -12,8 +12,8 @@ package org.eclipse.che.plugin.languageserver.ide.editor.signature;
import com.google.common.base.Optional;
+import org.eclipse.che.api.languageserver.shared.lsapi.ParameterInformationDTO;
import org.eclipse.che.ide.api.editor.signature.ParameterInfo;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.ParameterInformationDTO;
/**
* @author Evgen Vidolob
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/signature/SignatureHelpImpl.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/signature/SignatureHelpImpl.java
index 3bc501d9ff..bee769dde6 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/signature/SignatureHelpImpl.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/signature/SignatureHelpImpl.java
@@ -12,10 +12,10 @@ package org.eclipse.che.plugin.languageserver.ide.editor.signature;
import com.google.common.base.Optional;
+import org.eclipse.che.api.languageserver.shared.lsapi.SignatureHelpDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.SignatureInformationDTO;
import org.eclipse.che.ide.api.editor.signature.SignatureHelp;
import org.eclipse.che.ide.api.editor.signature.SignatureInfo;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.SignatureHelpDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.SignatureInformationDTO;
import java.util.ArrayList;
import java.util.List;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/signature/SignatureInfoImpl.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/signature/SignatureInfoImpl.java
index 4667da4bdc..ea6927892d 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/signature/SignatureInfoImpl.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/signature/SignatureInfoImpl.java
@@ -12,10 +12,10 @@ package org.eclipse.che.plugin.languageserver.ide.editor.signature;
import com.google.common.base.Optional;
+import org.eclipse.che.api.languageserver.shared.lsapi.ParameterInformationDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.SignatureInformationDTO;
import org.eclipse.che.ide.api.editor.signature.ParameterInfo;
import org.eclipse.che.ide.api.editor.signature.SignatureInfo;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.ParameterInformationDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.SignatureInformationDTO;
import java.util.ArrayList;
import java.util.List;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/sync/FullTextDocumentSynchronize.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/sync/FullTextDocumentSynchronize.java
index c5c02a95ca..a198c268f2 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/sync/FullTextDocumentSynchronize.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/sync/FullTextDocumentSynchronize.java
@@ -13,13 +13,13 @@ package org.eclipse.che.plugin.languageserver.ide.editor.sync;
import com.google.inject.Inject;
import com.google.inject.Singleton;
+import org.eclipse.che.api.languageserver.shared.lsapi.DidChangeTextDocumentParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentContentChangeEventDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.VersionedTextDocumentIdentifierDTO;
import org.eclipse.che.ide.api.editor.document.Document;
import org.eclipse.che.ide.api.editor.events.DocumentChangeEvent;
import org.eclipse.che.ide.dto.DtoFactory;
import org.eclipse.che.plugin.languageserver.ide.service.TextDocumentServiceClient;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DidChangeTextDocumentParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextDocumentContentChangeEventDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.VersionedTextDocumentIdentifierDTO;
import java.util.Collections;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/sync/IncrementalTextDocumentSynchronize.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/sync/IncrementalTextDocumentSynchronize.java
index 98e75629dd..154d234411 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/sync/IncrementalTextDocumentSynchronize.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/editor/sync/IncrementalTextDocumentSynchronize.java
@@ -13,16 +13,16 @@ package org.eclipse.che.plugin.languageserver.ide.editor.sync;
import com.google.inject.Inject;
import com.google.inject.Singleton;
+import org.eclipse.che.api.languageserver.shared.lsapi.DidChangeTextDocumentParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.PositionDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.RangeDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentContentChangeEventDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.VersionedTextDocumentIdentifierDTO;
import org.eclipse.che.ide.api.editor.document.Document;
import org.eclipse.che.ide.api.editor.events.DocumentChangeEvent;
import org.eclipse.che.ide.api.editor.text.TextPosition;
import org.eclipse.che.ide.dto.DtoFactory;
import org.eclipse.che.plugin.languageserver.ide.service.TextDocumentServiceClient;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DidChangeTextDocumentParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.PositionDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.RangeDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextDocumentContentChangeEventDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.VersionedTextDocumentIdentifierDTO;
import java.util.Collections;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/hover/HoverProvider.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/hover/HoverProvider.java
index 35e88f77c8..8373be8743 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/hover/HoverProvider.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/hover/HoverProvider.java
@@ -13,6 +13,11 @@ package org.eclipse.che.plugin.languageserver.ide.hover;
import com.google.inject.Inject;
import com.google.inject.Singleton;
+import org.eclipse.che.api.languageserver.shared.lsapi.HoverDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.MarkedStringDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.PositionDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentIdentifierDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentPositionParamsDTO;
import org.eclipse.che.api.promises.client.Function;
import org.eclipse.che.api.promises.client.FunctionException;
import org.eclipse.che.api.promises.client.Promise;
@@ -28,9 +33,6 @@ import org.eclipse.che.ide.util.StringUtils;
import org.eclipse.che.plugin.languageserver.ide.editor.LanguageServerEditorConfiguration;
import org.eclipse.che.plugin.languageserver.ide.service.TextDocumentServiceClient;
import org.eclipse.che.plugin.languageserver.ide.util.DtoBuildHelper;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.HoverDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.MarkedStringDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextDocumentPositionParamsDTO;
/**
* Provides hover LS functionality for Orion editor.
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/location/OpenLocationPresenter.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/location/OpenLocationPresenter.java
index f2fa80b67c..deb967a7dc 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/location/OpenLocationPresenter.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/location/OpenLocationPresenter.java
@@ -15,6 +15,8 @@ import com.google.gwt.user.client.ui.IsWidget;
import com.google.inject.Inject;
import com.google.inject.assistedinject.Assisted;
+import org.eclipse.che.api.languageserver.shared.lsapi.LocationDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.RangeDTO;
import org.eclipse.che.api.promises.client.Operation;
import org.eclipse.che.api.promises.client.OperationException;
import org.eclipse.che.api.promises.client.Promise;
@@ -28,8 +30,6 @@ import org.eclipse.che.ide.api.parts.WorkspaceAgent;
import org.eclipse.che.ide.api.parts.base.BasePresenter;
import org.eclipse.che.plugin.languageserver.ide.LanguageServerResources;
import org.eclipse.che.plugin.languageserver.ide.util.OpenFileInEditorHelper;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.LocationDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.RangeDTO;
import org.vectomatic.dom.svg.ui.SVGResource;
import java.util.List;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/location/OpenLocationView.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/location/OpenLocationView.java
index fdce0d577e..dbcb7659fc 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/location/OpenLocationView.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/location/OpenLocationView.java
@@ -12,9 +12,9 @@ package org.eclipse.che.plugin.languageserver.ide.location;
import com.google.inject.ImplementedBy;
+import org.eclipse.che.api.languageserver.shared.lsapi.LocationDTO;
import org.eclipse.che.ide.api.mvp.View;
import org.eclipse.che.ide.api.parts.base.BaseActionDelegate;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.LocationDTO;
import java.util.List;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/location/OpenLocationViewImpl.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/location/OpenLocationViewImpl.java
index d8d4a9576f..265363b6be 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/location/OpenLocationViewImpl.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/location/OpenLocationViewImpl.java
@@ -14,6 +14,7 @@ import com.google.gwt.dom.client.Style;
import com.google.gwt.user.client.ui.DockLayoutPanel;
import com.google.inject.Inject;
+import org.eclipse.che.api.languageserver.shared.lsapi.LocationDTO;
import org.eclipse.che.api.promises.client.Promise;
import org.eclipse.che.ide.api.data.tree.AbstractTreeNode;
import org.eclipse.che.ide.api.data.tree.HasAction;
@@ -27,7 +28,6 @@ import org.eclipse.che.ide.ui.smartTree.NodeUniqueKeyProvider;
import org.eclipse.che.ide.ui.smartTree.Tree;
import org.eclipse.che.ide.ui.smartTree.presentation.HasPresentation;
import org.eclipse.che.ide.ui.smartTree.presentation.NodePresentation;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.LocationDTO;
import javax.validation.constraints.NotNull;
import java.util.Collections;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/navigation/declaration/FindDefinitionAction.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/navigation/declaration/FindDefinitionAction.java
index a7683d3d21..2838f4c39e 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/navigation/declaration/FindDefinitionAction.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/navigation/declaration/FindDefinitionAction.java
@@ -15,6 +15,8 @@ import io.typefox.lsapi.ServerCapabilities;
import com.google.inject.Inject;
import com.google.inject.Singleton;
+import org.eclipse.che.api.languageserver.shared.lsapi.LocationDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentPositionParamsDTO;
import org.eclipse.che.api.promises.client.Operation;
import org.eclipse.che.api.promises.client.OperationException;
import org.eclipse.che.api.promises.client.Promise;
@@ -30,8 +32,6 @@ import org.eclipse.che.plugin.languageserver.ide.location.OpenLocationPresenter;
import org.eclipse.che.plugin.languageserver.ide.location.OpenLocationPresenterFactory;
import org.eclipse.che.plugin.languageserver.ide.service.TextDocumentServiceClient;
import org.eclipse.che.plugin.languageserver.ide.util.DtoBuildHelper;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.LocationDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextDocumentPositionParamsDTO;
import javax.validation.constraints.NotNull;
import java.util.List;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/navigation/references/FindReferencesAction.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/navigation/references/FindReferencesAction.java
index 8c6cca3b30..b053ecabcb 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/navigation/references/FindReferencesAction.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/navigation/references/FindReferencesAction.java
@@ -14,6 +14,11 @@ import io.typefox.lsapi.ServerCapabilities;
import com.google.inject.Inject;
+import org.eclipse.che.api.languageserver.shared.lsapi.LocationDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.PositionDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.ReferenceContextDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.ReferenceParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentIdentifierDTO;
import org.eclipse.che.api.promises.client.Promise;
import org.eclipse.che.ide.api.action.AbstractPerspectiveAction;
import org.eclipse.che.ide.api.action.ActionEvent;
@@ -26,11 +31,6 @@ import org.eclipse.che.plugin.languageserver.ide.editor.LanguageServerEditorConf
import org.eclipse.che.plugin.languageserver.ide.location.OpenLocationPresenter;
import org.eclipse.che.plugin.languageserver.ide.location.OpenLocationPresenterFactory;
import org.eclipse.che.plugin.languageserver.ide.service.TextDocumentServiceClient;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.LocationDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.PositionDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.ReferenceContextDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.ReferenceParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextDocumentIdentifierDTO;
import javax.validation.constraints.NotNull;
import java.util.List;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/navigation/symbol/GoToSymbolAction.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/navigation/symbol/GoToSymbolAction.java
index 41baa79559..53f4b8abd4 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/navigation/symbol/GoToSymbolAction.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/navigation/symbol/GoToSymbolAction.java
@@ -15,6 +15,10 @@ import io.typefox.lsapi.ServerCapabilities;
import com.google.inject.Inject;
import com.google.inject.Singleton;
+import org.eclipse.che.api.languageserver.shared.lsapi.DocumentSymbolParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.RangeDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.SymbolInformationDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentIdentifierDTO;
import org.eclipse.che.api.promises.client.Operation;
import org.eclipse.che.api.promises.client.OperationException;
import org.eclipse.che.api.promises.client.Promise;
@@ -39,10 +43,6 @@ import org.eclipse.che.plugin.languageserver.ide.filters.Match;
import org.eclipse.che.plugin.languageserver.ide.quickopen.QuickOpenModel;
import org.eclipse.che.plugin.languageserver.ide.quickopen.QuickOpenPresenter;
import org.eclipse.che.plugin.languageserver.ide.service.TextDocumentServiceClient;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DocumentSymbolParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.RangeDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.SymbolInformationDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextDocumentIdentifierDTO;
import javax.validation.constraints.NotNull;
import java.util.ArrayList;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/navigation/workspace/FindSymbolAction.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/navigation/workspace/FindSymbolAction.java
index 16f09e7204..a64df32ac2 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/navigation/workspace/FindSymbolAction.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/navigation/workspace/FindSymbolAction.java
@@ -15,12 +15,16 @@ import com.google.common.collect.Sets;
import com.google.inject.Inject;
import com.google.inject.Singleton;
+import org.eclipse.che.api.languageserver.shared.lsapi.LocationDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.RangeDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.SymbolInformationDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.WorkspaceSymbolParamsDTO;
+import org.eclipse.che.api.promises.async.Task;
+import org.eclipse.che.api.promises.async.ThrottledDelayer;
import org.eclipse.che.api.promises.client.Function;
import org.eclipse.che.api.promises.client.FunctionException;
import org.eclipse.che.api.promises.client.Promise;
import org.eclipse.che.api.promises.client.js.Promises;
-import org.eclipse.che.api.promises.async.Task;
-import org.eclipse.che.api.promises.async.ThrottledDelayer;
import org.eclipse.che.ide.api.action.AbstractPerspectiveAction;
import org.eclipse.che.ide.api.action.ActionEvent;
import org.eclipse.che.ide.api.editor.EditorAgent;
@@ -35,10 +39,6 @@ import org.eclipse.che.plugin.languageserver.ide.quickopen.QuickOpenModel;
import org.eclipse.che.plugin.languageserver.ide.quickopen.QuickOpenPresenter;
import org.eclipse.che.plugin.languageserver.ide.service.WorkspaceServiceClient;
import org.eclipse.che.plugin.languageserver.ide.util.OpenFileInEditorHelper;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.LocationDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.RangeDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.SymbolInformationDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.WorkspaceSymbolParamsDTO;
import javax.validation.constraints.NotNull;
import java.util.ArrayList;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/registry/LanguageServerRegistry.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/registry/LanguageServerRegistry.java
index 235304a5a8..5a6be4bbe6 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/registry/LanguageServerRegistry.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/registry/LanguageServerRegistry.java
@@ -18,6 +18,11 @@ import com.google.inject.Inject;
import com.google.inject.Singleton;
import com.google.web.bindery.event.shared.EventBus;
+import org.eclipse.che.api.languageserver.shared.ProjectExtensionKey;
+import org.eclipse.che.api.languageserver.shared.event.LanguageServerInitializeEventDto;
+import org.eclipse.che.api.languageserver.shared.lsapi.InitializeResultDTO;
+import org.eclipse.che.api.languageserver.shared.model.LanguageDescription;
+import org.eclipse.che.api.languageserver.shared.model.impl.InitializeResultImpl;
import org.eclipse.che.api.promises.client.Operation;
import org.eclipse.che.api.promises.client.OperationException;
import org.eclipse.che.api.promises.client.Promise;
@@ -35,17 +40,13 @@ import org.eclipse.che.ide.websocket.WebSocketException;
import org.eclipse.che.ide.websocket.rest.SubscriptionHandler;
import org.eclipse.che.ide.websocket.rest.Unmarshallable;
import org.eclipse.che.plugin.languageserver.ide.service.LanguageServerRegistryServiceClient;
-import org.eclipse.che.plugin.languageserver.shared.ProjectExtensionKey;
-import org.eclipse.che.plugin.languageserver.shared.event.LanguageServerInitializeEventDto;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.InitializeResultDTO;
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
-import org.eclipse.che.plugin.languageserver.shared.model.impl.InitializeResultImpl;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import static org.eclipse.che.plugin.languageserver.shared.ProjectExtensionKey.createProjectKey;
+import static org.eclipse.che.api.languageserver.shared.ProjectExtensionKey.createProjectKey;
+
/**
* @author Anatoliy Bazko
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/service/LanguageServerRegistryServiceClient.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/service/LanguageServerRegistryServiceClient.java
index 72009b05a7..fdf02799c7 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/service/LanguageServerRegistryServiceClient.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/service/LanguageServerRegistryServiceClient.java
@@ -12,12 +12,12 @@ package org.eclipse.che.plugin.languageserver.ide.service;
import com.google.inject.Inject;
+import org.eclipse.che.api.languageserver.shared.lsapi.InitializeResultDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.LanguageDescriptionDTO;
import org.eclipse.che.api.promises.client.Promise;
import org.eclipse.che.ide.api.app.AppContext;
import org.eclipse.che.ide.rest.AsyncRequestFactory;
import org.eclipse.che.ide.rest.DtoUnmarshallerFactory;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.InitializeResultDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.LanguageDescriptionDTO;
import java.util.List;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/service/TextDocumentServiceClient.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/service/TextDocumentServiceClient.java
index 825cfb3351..53dde2597a 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/service/TextDocumentServiceClient.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/service/TextDocumentServiceClient.java
@@ -15,6 +15,23 @@ import io.typefox.lsapi.CompletionItem;
import com.google.inject.Inject;
import com.google.inject.Singleton;
+import org.eclipse.che.api.languageserver.shared.lsapi.CompletionItemDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DidChangeTextDocumentParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DidCloseTextDocumentParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DidOpenTextDocumentParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DidSaveTextDocumentParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DocumentFormattingParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DocumentOnTypeFormattingParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DocumentRangeFormattingParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DocumentSymbolParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.HoverDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.LocationDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.PublishDiagnosticsParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.ReferenceParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.SignatureHelpDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.SymbolInformationDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentPositionParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextEditDTO;
import org.eclipse.che.api.promises.client.Operation;
import org.eclipse.che.api.promises.client.OperationException;
import org.eclipse.che.api.promises.client.Promise;
@@ -31,23 +48,6 @@ import org.eclipse.che.ide.websocket.MessageBus;
import org.eclipse.che.ide.websocket.WebSocketException;
import org.eclipse.che.ide.websocket.rest.SubscriptionHandler;
import org.eclipse.che.plugin.languageserver.ide.editor.PublishDiagnosticsProcessor;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.CompletionItemDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DidChangeTextDocumentParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DidCloseTextDocumentParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DidOpenTextDocumentParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DidSaveTextDocumentParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DocumentFormattingParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DocumentOnTypeFormattingParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DocumentRangeFormattingParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DocumentSymbolParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.HoverDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.LocationDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.PublishDiagnosticsParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.ReferenceParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.SignatureHelpDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.SymbolInformationDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextDocumentPositionParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextEditDTO;
import java.util.List;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/service/WorkspaceServiceClient.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/service/WorkspaceServiceClient.java
index 909123c982..b3c7acafbc 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/service/WorkspaceServiceClient.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/service/WorkspaceServiceClient.java
@@ -13,13 +13,13 @@ package org.eclipse.che.plugin.languageserver.ide.service;
import com.google.inject.Inject;
import com.google.inject.Singleton;
+import org.eclipse.che.api.languageserver.shared.lsapi.SymbolInformationDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.WorkspaceSymbolParamsDTO;
import org.eclipse.che.api.promises.client.Promise;
import org.eclipse.che.ide.api.app.AppContext;
import org.eclipse.che.ide.rest.AsyncRequestFactory;
import org.eclipse.che.ide.rest.DtoUnmarshallerFactory;
import org.eclipse.che.ide.rest.Unmarshallable;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.SymbolInformationDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.WorkspaceSymbolParamsDTO;
import java.util.List;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/util/DtoBuildHelper.java b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/util/DtoBuildHelper.java
index eac6cc49d8..830ab22ce3 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/util/DtoBuildHelper.java
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/java/org/eclipse/che/plugin/languageserver/ide/util/DtoBuildHelper.java
@@ -13,12 +13,12 @@ package org.eclipse.che.plugin.languageserver.ide.util;
import com.google.inject.Inject;
import com.google.inject.Singleton;
+import org.eclipse.che.api.languageserver.shared.lsapi.PositionDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentIdentifierDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentPositionParamsDTO;
import org.eclipse.che.ide.api.editor.document.Document;
import org.eclipse.che.ide.api.editor.text.TextPosition;
import org.eclipse.che.ide.dto.DtoFactory;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.PositionDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextDocumentIdentifierDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextDocumentPositionParamsDTO;
/**
* Helps to create LS DTO objects
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/resources/org/eclipse/che/api/languageserver/LanguageServer.gwt.xml b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/resources/org/eclipse/che/api/languageserver/LanguageServer.gwt.xml
new file mode 100644
index 0000000000..3d98f2401f
--- /dev/null
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/resources/org/eclipse/che/api/languageserver/LanguageServer.gwt.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/resources/org/eclipse/che/plugin/languageserver/LanguageServer.gwt.xml b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/resources/org/eclipse/che/plugin/languageserver/LanguageServer.gwt.xml
index 2e81692915..06e2e9c0a5 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/resources/org/eclipse/che/plugin/languageserver/LanguageServer.gwt.xml
+++ b/plugins/plugin-languageserver/che-plugin-languageserver-ide/src/main/resources/org/eclipse/che/plugin/languageserver/LanguageServer.gwt.xml
@@ -27,5 +27,4 @@
-
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/LanguageServerModule.java b/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/LanguageServerModule.java
deleted file mode 100644
index 6897f33e03..0000000000
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/LanguageServerModule.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2012-2016 Codenvy, S.A.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Codenvy, S.A. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server;
-
-import com.google.inject.AbstractModule;
-import com.google.inject.multibindings.Multibinder;
-
-import org.eclipse.che.inject.DynaModule;
-import org.eclipse.che.plugin.languageserver.server.launcher.CSharpLanguageServerLauncher;
-import org.eclipse.che.plugin.languageserver.server.launcher.JsonLanguageServerLauncher;
-import org.eclipse.che.plugin.languageserver.server.launcher.LanguageServerLauncher;
-import org.eclipse.che.plugin.languageserver.server.launcher.PhpLanguageServerLauncher;
-import org.eclipse.che.plugin.languageserver.server.messager.InitializeEventMessenger;
-import org.eclipse.che.plugin.languageserver.server.messager.PublishDiagnosticsParamsMessenger;
-import org.eclipse.che.plugin.languageserver.server.registry.LanguageServerRegistry;
-import org.eclipse.che.plugin.languageserver.server.registry.LanguageServerRegistryImpl;
-import org.eclipse.che.plugin.languageserver.server.registry.ServerInitializer;
-import org.eclipse.che.plugin.languageserver.server.registry.ServerInitializerImpl;
-import org.eclipse.che.plugin.languageserver.server.service.LanguageRegistryService;
-import org.eclipse.che.plugin.languageserver.server.service.TextDocumentService;
-import org.eclipse.che.plugin.languageserver.server.service.WorkspaceService;
-
-@DynaModule
-public class LanguageServerModule extends AbstractModule {
-
- @Override
- protected void configure() {
- Multibinder.newSetBinder(binder(), LanguageServerLauncher.class).addBinding().to(JsonLanguageServerLauncher.class);
- Multibinder.newSetBinder(binder(), LanguageServerLauncher.class).addBinding().to(PhpLanguageServerLauncher.class);
- Multibinder.newSetBinder(binder(), LanguageServerLauncher.class).addBinding().to(CSharpLanguageServerLauncher.class);
-
- bind(LanguageServerRegistry.class).to(LanguageServerRegistryImpl.class);
- bind(ServerInitializer.class).to(ServerInitializerImpl.class);
-
- bind(LanguageRegistryService.class);
- bind(TextDocumentService.class);
- bind(WorkspaceService.class);
- bind(PublishDiagnosticsParamsMessenger.class);
- bind(InitializeEventMessenger.class);
- }
-}
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/FatJarBasedLanguageServerLauncher.java b/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/FatJarBasedLanguageServerLauncher.java
deleted file mode 100644
index 422176fad0..0000000000
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/FatJarBasedLanguageServerLauncher.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2012-2016 Codenvy, S.A.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Codenvy, S.A. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.launcher;
-
-import io.typefox.lsapi.services.LanguageServer;
-import io.typefox.lsapi.services.json.JsonBasedLanguageServer;
-
-import com.google.inject.Singleton;
-
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.nio.file.FileVisitOption;
-import java.nio.file.Files;
-import java.nio.file.Path;
-import java.nio.file.Paths;
-import java.util.Iterator;
-import java.util.stream.Stream;
-
-@Singleton
-public class FatJarBasedLanguageServerLauncher extends LanguageServerLauncherTemplate {
-
- private final static Logger LOG = LoggerFactory.getLogger(FatJarBasedLanguageServerLauncher.class);
- private final static String JAVA_EXEC = System.getProperty("java.home") + "/bin/java";
-
- @Override
- protected LanguageServer connectToLanguageServer(Process languageServerProcess) {
- JsonBasedLanguageServer languageServer = new JsonBasedLanguageServer();
- languageServer.connect(languageServerProcess.getInputStream(), languageServerProcess.getOutputStream());
- return languageServer;
- }
-
- @Override
- protected Process startLanguageServerProcess(String projectPath) {
- Stream paths;
- try {
- paths = Files.find(Paths.get("/projects"),
- 0,
- (path, basicFileAttributes) -> path.endsWith("-languageserver.jar"),
- FileVisitOption.FOLLOW_LINKS);
- } catch (IOException e) {
- String errMsg = "Can't find jar";
- LOG.error(errMsg);
-
- throw new IllegalStateException(e);
- }
-
- Path filePath;
- Iterator iterator = paths.iterator();
- if (!iterator.hasNext()) {
- filePath = iterator.next();
- } else {
- String errMsg = "Can't find jar";
- LOG.error(errMsg);
-
- throw new IllegalStateException(errMsg);
- }
-
- ProcessBuilder processBuilder = new ProcessBuilder(JAVA_EXEC, "-jar", filePath.toString(),
- "-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=1044",
- "debug");
- processBuilder.redirectInput(ProcessBuilder.Redirect.PIPE);
- processBuilder.redirectOutput(ProcessBuilder.Redirect.PIPE);
-
- Process process;
- try {
- process = processBuilder.start();
- } catch (IOException e) {
- String errMsg = "Can't start JSON language server";
- LOG.error(errMsg, e);
-
- throw new IllegalStateException(errMsg, e);
- }
-
- Thread thread = new Thread(new StreamReader(process));
- thread.setDaemon(true);
- thread.start();
-
- if (!process.isAlive()) {
- LOG.error("Couldn't start process : " + processBuilder.command());
- }
-
- return process;
- }
-
- @Override
- public LanguageDescription getLanguageDescription() {
- return null;
- }
-
- @Override
- public boolean isAbleToLaunch() {
- return true;
- }
-
- private static class StreamReader implements Runnable {
- public Process process;
-
- public StreamReader(Process process) {
- this.process = process;
- }
-
- @Override
- public void run() {
- BufferedReader reader = new BufferedReader(new InputStreamReader(process.getErrorStream()));
- while (process.isAlive()) {
- try {
- String errorLine = reader.readLine();
- LOG.error("languageserver ["+process+"] : " +errorLine);
- } catch (IOException e) {
- LOG.error(e.getMessage(), e);
- }
- }
- }
- }
-}
diff --git a/plugins/plugin-languageserver/pom.xml b/plugins/plugin-languageserver/pom.xml
index 0841a18fd8..3d33f61f4c 100644
--- a/plugins/plugin-languageserver/pom.xml
+++ b/plugins/plugin-languageserver/pom.xml
@@ -23,8 +23,6 @@
pom
Che Plugin :: Language Server :: Parent
- che-plugin-languageserver-shared
- che-plugin-languageserver-server
che-plugin-languageserver-ide
diff --git a/plugins/plugin-php/che-plugin-php-lang-server/pom.xml b/plugins/plugin-php/che-plugin-php-lang-server/pom.xml
index 64a31a7c04..9b14b175c4 100644
--- a/plugins/plugin-php/che-plugin-php-lang-server/pom.xml
+++ b/plugins/plugin-php/che-plugin-php-lang-server/pom.xml
@@ -32,6 +32,18 @@
com.google.inject.extensions
guice-multibindings
+
+ io.typefox.lsapi
+ io.typefox.lsapi.services
+
+
+ org.eclipse.che.core
+ che-core-api-languageserver
+
+
+ org.eclipse.che.core
+ che-core-api-languageserver-shared
+
org.eclipse.che.core
che-core-api-project
diff --git a/plugins/plugin-php/che-plugin-php-lang-server/src/main/java/org/eclipse/che/plugin/php/inject/PhpModule.java b/plugins/plugin-php/che-plugin-php-lang-server/src/main/java/org/eclipse/che/plugin/php/inject/PhpModule.java
index 985f80d3d6..85dda46ba7 100644
--- a/plugins/plugin-php/che-plugin-php-lang-server/src/main/java/org/eclipse/che/plugin/php/inject/PhpModule.java
+++ b/plugins/plugin-php/che-plugin-php-lang-server/src/main/java/org/eclipse/che/plugin/php/inject/PhpModule.java
@@ -13,8 +13,10 @@ package org.eclipse.che.plugin.php.inject;
import com.google.inject.AbstractModule;
import com.google.inject.multibindings.Multibinder;
+import org.eclipse.che.api.languageserver.launcher.LanguageServerLauncher;
import org.eclipse.che.api.project.server.type.ProjectTypeDef;
import org.eclipse.che.inject.DynaModule;
+import org.eclipse.che.plugin.php.languageserver.PhpLanguageServerLauncher;
import org.eclipse.che.plugin.php.projecttype.PhpProjectType;
/**
@@ -26,5 +28,7 @@ public class PhpModule extends AbstractModule {
protected void configure() {
Multibinder projectTypeMultibinder = Multibinder.newSetBinder(binder(), ProjectTypeDef.class);
projectTypeMultibinder.addBinding().to(PhpProjectType.class);
+
+ Multibinder.newSetBinder(binder(), LanguageServerLauncher.class).addBinding().to(PhpLanguageServerLauncher.class);
}
}
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/PhpLanguageServerLauncher.java b/plugins/plugin-php/che-plugin-php-lang-server/src/main/java/org/eclipse/che/plugin/php/languageserver/PhpLanguageServerLauncher.java
similarity index 71%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/PhpLanguageServerLauncher.java
rename to plugins/plugin-php/che-plugin-php-lang-server/src/main/java/org/eclipse/che/plugin/php/languageserver/PhpLanguageServerLauncher.java
index 9dda3b2a27..4c581f3adc 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/PhpLanguageServerLauncher.java
+++ b/plugins/plugin-php/che-plugin-php-lang-server/src/main/java/org/eclipse/che/plugin/php/languageserver/PhpLanguageServerLauncher.java
@@ -8,17 +8,20 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.launcher;
+package org.eclipse.che.plugin.php.languageserver;
import io.typefox.lsapi.services.json.JsonBasedLanguageServer;
+import com.google.inject.Inject;
import com.google.inject.Singleton;
-import org.eclipse.che.plugin.languageserver.server.exception.LanguageServerException;
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
-import org.eclipse.che.plugin.languageserver.shared.model.impl.LanguageDescriptionImpl;
+import org.eclipse.che.api.languageserver.exception.LanguageServerException;
+import org.eclipse.che.api.languageserver.launcher.LanguageServerLauncherTemplate;
+import org.eclipse.che.api.languageserver.shared.model.LanguageDescription;
+import org.eclipse.che.api.languageserver.shared.model.impl.LanguageDescriptionImpl;
import java.io.IOException;
+import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
@@ -31,13 +34,13 @@ import static java.util.Arrays.asList;
*/
@Singleton
public class PhpLanguageServerLauncher extends LanguageServerLauncherTemplate {
+ private static final String LANGUAGE_ID = "php";
+ private static final String[] EXTENSIONS = new String[] {"php"};
+ private static final String[] MIME_TYPES = new String[] {"text/x-php"};
- public static final String LANGUAGE_ID = "php";
- public static final String[] EXTENSIONS = new String[] {"php"};
- public static final String[] MIME_TYPES = new String[] {"text/x-php"};
+ private final Path launchScript;
private static final LanguageDescriptionImpl description;
- private static final String SCRIPT_PATH = "che/ls-php/launch.sh";
static {
description = new LanguageDescriptionImpl();
@@ -46,6 +49,11 @@ public class PhpLanguageServerLauncher extends LanguageServerLauncherTemplate {
description.setMimeTypes(asList(MIME_TYPES));
}
+ @Inject
+ public PhpLanguageServerLauncher() {
+ this.launchScript = Paths.get(System.getenv("HOME"), "che/ls-php/launch.sh");
+ }
+
@Override
public LanguageDescription getLanguageDescription() {
return description;
@@ -53,8 +61,7 @@ public class PhpLanguageServerLauncher extends LanguageServerLauncherTemplate {
@Override
public boolean isAbleToLaunch() {
- Path launchFile = Paths.get(System.getenv("HOME"), SCRIPT_PATH);
- return launchFile.toFile().exists();
+ return Files.exists(launchScript);
}
protected JsonBasedLanguageServer connectToLanguageServer(Process languageServerProcess) {
@@ -64,9 +71,7 @@ public class PhpLanguageServerLauncher extends LanguageServerLauncherTemplate {
}
protected Process startLanguageServerProcess(String projectPath) throws LanguageServerException {
- Path launchFile = Paths.get(System.getenv("HOME"), SCRIPT_PATH);
-
- ProcessBuilder processBuilder = new ProcessBuilder(launchFile.toString());
+ ProcessBuilder processBuilder = new ProcessBuilder(launchScript.toString());
processBuilder.redirectInput(ProcessBuilder.Redirect.PIPE);
processBuilder.redirectOutput(ProcessBuilder.Redirect.PIPE);
try {
diff --git a/plugins/pom.xml b/plugins/pom.xml
index f589b650b0..d190c8402b 100644
--- a/plugins/pom.xml
+++ b/plugins/pom.xml
@@ -51,5 +51,6 @@
plugin-ssh-machine
plugin-ssh-key
plugin-languageserver
+ plugin-json
diff --git a/pom.xml b/pom.xml
index 892aa8bdb8..5de426d13d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -178,6 +178,16 @@
che-core-api-jdbc-vendor-h2
${project.version}
+
+ org.eclipse.che.core
+ che-core-api-languageserver
+ ${che.version}
+
+
+ org.eclipse.che.core
+ che-core-api-languageserver-shared
+ ${che.version}
+
org.eclipse.che.core
che-core-api-machine
@@ -541,21 +551,16 @@
che-plugin-java-plain-shared
${che.version}
+
+ org.eclipse.che.plugin
+ che-plugin-json-server
+ ${che.version}
+
org.eclipse.che.plugin
che-plugin-languageserver-ide
${project.version}
-
- org.eclipse.che.plugin
- che-plugin-languageserver-server
- ${project.version}
-
-
- org.eclipse.che.plugin
- che-plugin-languageserver-shared
- ${project.version}
-
org.eclipse.che.plugin
che-plugin-machine-ext-client
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/pom.xml b/wsagent/che-core-api-languageserver-shared/pom.xml
similarity index 69%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/pom.xml
rename to wsagent/che-core-api-languageserver-shared/pom.xml
index e4de24f315..8ef463a013 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/pom.xml
+++ b/wsagent/che-core-api-languageserver-shared/pom.xml
@@ -14,12 +14,13 @@
4.0.0
- che-plugin-languageserver-parent
- org.eclipse.che.plugin
+ che-agent-parent
+ org.eclipse.che.core
5.0.0-M5-SNAPSHOT
- che-plugin-languageserver-shared
- Che Plugin :: Language Server :: Shared
+ che-core-api-languageserver-shared
+ jar
+ Che Core :: API :: Language Server Shared
${project.build.directory}/generated-sources/dto/
false
@@ -29,10 +30,6 @@
com.google.code.gson
gson
-
- com.google.inject
- guice
-
io.typefox.lsapi
io.typefox.lsapi
@@ -41,15 +38,6 @@
org.eclipse.che.core
che-core-api-dto
-
- org.eclipse.che.core
- che-core-commons-gwt
-
-
- com.google.gwt
- gwt-user
- provided
-
@@ -60,7 +48,7 @@
src/main/resources
- ${dto-generator-out-directory}
+ ${generated.sources.directory}
@@ -73,6 +61,46 @@
+
+ org.eclipse.che.core
+ che-core-api-dto-maven-plugin
+ ${project.version}
+
+
+ process-sources
+
+ generate
+
+
+
+
+
+ ${project.groupId}
+ ${project.artifactId}
+ ${project.version}
+
+
+
+
+ org.eclipse.che.api.languageserver.shared
+
+ ${dto-generator-out-directory}
+ org.eclipse.che.api.languageserver.server.dto.DtoServerImpls
+ server
+
+
+
+ maven-compiler-plugin
+
+
+ pre-compile
+ generate-sources
+
+ compile
+
+
+
+
org.codehaus.mojo
build-helper-maven-plugin
@@ -106,62 +134,6 @@
-
- maven-compiler-plugin
-
-
- pre-compile
- generate-sources
-
- compile
-
-
-
-
-
- org.eclipse.che.core
- che-core-api-dto-maven-plugin
- ${project.version}
-
-
- generate-client-dto
- process-sources
-
- generate
-
-
-
- org.eclipse.che.plugin.languageserver.shared
-
- ${dto-generator-out-directory}
- org.eclipse.che.plugin.languageserver.shared.dto.DtoClientImpls
- client
-
-
-
- generate-server-dto
- process-sources
-
- generate
-
-
-
- org.eclipse.che.plugin.languageserver.shared
-
- ${dto-generator-out-directory}
- org.eclipse.che.plugin.languageserver.shared.dto.DtoServerImpls
- server
-
-
-
-
-
- ${project.groupId}
- ${project.artifactId}
- ${project.version}
-
-
-
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/ProjectExtensionKey.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/ProjectExtensionKey.java
similarity index 97%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/ProjectExtensionKey.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/ProjectExtensionKey.java
index 52e329a443..ef55e856d9 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/ProjectExtensionKey.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/ProjectExtensionKey.java
@@ -8,7 +8,7 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.shared;
+package org.eclipse.che.api.languageserver.shared;
import java.util.Objects;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/ProjectExtensionKeyDto.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/ProjectExtensionKeyDto.java
similarity index 93%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/ProjectExtensionKeyDto.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/ProjectExtensionKeyDto.java
index 57efb7f9b5..45cd703522 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/ProjectExtensionKeyDto.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/ProjectExtensionKeyDto.java
@@ -8,7 +8,7 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.shared;
+package org.eclipse.che.api.languageserver.shared;
import org.eclipse.che.dto.shared.DTO;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/event/LanguageServerInitializeEventDto.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/event/LanguageServerInitializeEventDto.java
similarity index 81%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/event/LanguageServerInitializeEventDto.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/event/LanguageServerInitializeEventDto.java
index c56c4b5a22..ccb89979d5 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/event/LanguageServerInitializeEventDto.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/event/LanguageServerInitializeEventDto.java
@@ -8,11 +8,11 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.shared.event;
+package org.eclipse.che.api.languageserver.shared.event;
+import org.eclipse.che.api.languageserver.shared.lsapi.LanguageDescriptionDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.ServerCapabilitiesDTO;
import org.eclipse.che.dto.shared.DTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.LanguageDescriptionDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.ServerCapabilitiesDTO;
/**
* @author Anatoliy Bazko
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CancelParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CancelParamsDTO.java
similarity index 90%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CancelParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CancelParamsDTO.java
index 391e1cda7f..b2c3db04f1 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CancelParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CancelParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.CancelParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ClientCapabilitiesDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ClientCapabilitiesDTO.java
similarity index 89%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ClientCapabilitiesDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ClientCapabilitiesDTO.java
index 94dad845db..572afeb482 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ClientCapabilitiesDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ClientCapabilitiesDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.ClientCapabilities;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CodeActionContextDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CodeActionContextDTO.java
similarity index 92%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CodeActionContextDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CodeActionContextDTO.java
index 6173030ca0..10a44b3b4b 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CodeActionContextDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CodeActionContextDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.CodeActionContext;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CodeActionParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CodeActionParamsDTO.java
similarity index 95%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CodeActionParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CodeActionParamsDTO.java
index 5a504e84c5..0e9fce86c0 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CodeActionParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CodeActionParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.CodeActionParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CodeLensDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CodeLensDTO.java
similarity index 95%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CodeLensDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CodeLensDTO.java
index 879e353be1..116b847fbb 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CodeLensDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CodeLensDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.CodeLens;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CodeLensOptionsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CodeLensOptionsDTO.java
similarity index 91%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CodeLensOptionsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CodeLensOptionsDTO.java
index eddb70a459..0342246676 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CodeLensOptionsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CodeLensOptionsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.CodeLensOptions;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CodeLensParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CodeLensParamsDTO.java
similarity index 92%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CodeLensParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CodeLensParamsDTO.java
index c6f2b85da1..8ab8c939b7 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CodeLensParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CodeLensParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.CodeLensParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CommandDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CommandDTO.java
similarity index 93%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CommandDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CommandDTO.java
index c892ba4225..8917ee3cc3 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CommandDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CommandDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.Command;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CompletionItemDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CompletionItemDTO.java
similarity index 97%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CompletionItemDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CompletionItemDTO.java
index 54a7435eb4..710b7e838a 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CompletionItemDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CompletionItemDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.CompletionItem;
import io.typefox.lsapi.CompletionItemKind;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CompletionOptionsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CompletionOptionsDTO.java
similarity index 93%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CompletionOptionsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CompletionOptionsDTO.java
index be47d7b6ab..af7cdbb64a 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/CompletionOptionsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/CompletionOptionsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.CompletionOptions;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DiagnosticDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DiagnosticDTO.java
similarity index 95%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DiagnosticDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DiagnosticDTO.java
index e4a19e2239..d6d4f97ce8 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DiagnosticDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DiagnosticDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.Diagnostic;
import io.typefox.lsapi.DiagnosticSeverity;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidChangeConfigurationParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidChangeConfigurationParamsDTO.java
similarity index 90%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidChangeConfigurationParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidChangeConfigurationParamsDTO.java
index 4d5bc3c996..673638c97d 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidChangeConfigurationParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidChangeConfigurationParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.DidChangeConfigurationParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidChangeTextDocumentParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidChangeTextDocumentParamsDTO.java
similarity index 96%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidChangeTextDocumentParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidChangeTextDocumentParamsDTO.java
index bbf1effe8b..57c5c3c209 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidChangeTextDocumentParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidChangeTextDocumentParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.DidChangeTextDocumentParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidChangeWatchedFilesParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidChangeWatchedFilesParamsDTO.java
similarity index 92%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidChangeWatchedFilesParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidChangeWatchedFilesParamsDTO.java
index fd800cef85..5b630d802f 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidChangeWatchedFilesParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidChangeWatchedFilesParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.DidChangeWatchedFilesParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidCloseTextDocumentParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidCloseTextDocumentParamsDTO.java
similarity index 93%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidCloseTextDocumentParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidCloseTextDocumentParamsDTO.java
index 044504f3f0..2370d6124f 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidCloseTextDocumentParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidCloseTextDocumentParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.DidCloseTextDocumentParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidOpenTextDocumentParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidOpenTextDocumentParamsDTO.java
similarity index 94%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidOpenTextDocumentParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidOpenTextDocumentParamsDTO.java
index f23dd90f82..b4456ed959 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidOpenTextDocumentParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidOpenTextDocumentParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.DidOpenTextDocumentParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidSaveTextDocumentParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidSaveTextDocumentParamsDTO.java
similarity index 93%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidSaveTextDocumentParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidSaveTextDocumentParamsDTO.java
index c0a6c502aa..70f56310f1 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DidSaveTextDocumentParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DidSaveTextDocumentParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.DidSaveTextDocumentParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentFormattingParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentFormattingParamsDTO.java
similarity index 94%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentFormattingParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentFormattingParamsDTO.java
index 7f1c97c9a2..d66e919301 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentFormattingParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentFormattingParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.DocumentFormattingParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentHighlightDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentHighlightDTO.java
similarity index 93%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentHighlightDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentHighlightDTO.java
index deec360f0d..74bfc90439 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentHighlightDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentHighlightDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.DocumentHighlight;
import io.typefox.lsapi.DocumentHighlightKind;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentOnTypeFormattingOptionsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentOnTypeFormattingOptionsDTO.java
similarity index 93%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentOnTypeFormattingOptionsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentOnTypeFormattingOptionsDTO.java
index 3ad0ed074e..a11fe493dc 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentOnTypeFormattingOptionsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentOnTypeFormattingOptionsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.DocumentOnTypeFormattingOptions;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentOnTypeFormattingParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentOnTypeFormattingParamsDTO.java
similarity index 95%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentOnTypeFormattingParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentOnTypeFormattingParamsDTO.java
index 17724d697f..f3a17ffbd7 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentOnTypeFormattingParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentOnTypeFormattingParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.DocumentOnTypeFormattingParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentRangeFormattingParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentRangeFormattingParamsDTO.java
similarity index 95%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentRangeFormattingParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentRangeFormattingParamsDTO.java
index 2c45fd0858..90e7295502 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentRangeFormattingParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentRangeFormattingParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.DocumentRangeFormattingParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentSymbolParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentSymbolParamsDTO.java
similarity index 92%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentSymbolParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentSymbolParamsDTO.java
index f5113e4dd4..575edae845 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/DocumentSymbolParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/DocumentSymbolParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.DocumentSymbolParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/FileEventDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/FileEventDTO.java
similarity index 92%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/FileEventDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/FileEventDTO.java
index 742b2163c9..d35cf6062f 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/FileEventDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/FileEventDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.FileChangeType;
import io.typefox.lsapi.FileEvent;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/FormattingOptionsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/FormattingOptionsDTO.java
similarity index 93%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/FormattingOptionsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/FormattingOptionsDTO.java
index d6a754a4b3..2979ac008a 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/FormattingOptionsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/FormattingOptionsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.FormattingOptions;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/HoverDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/HoverDTO.java
similarity index 93%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/HoverDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/HoverDTO.java
index 821b5be58d..8d5a7974ca 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/HoverDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/HoverDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.Hover;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/InitializeErrorDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/InitializeErrorDTO.java
similarity index 92%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/InitializeErrorDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/InitializeErrorDTO.java
index 30c208d2bf..397641db2f 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/InitializeErrorDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/InitializeErrorDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.InitializeError;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/InitializeResultDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/InitializeResultDTO.java
similarity index 94%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/InitializeResultDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/InitializeResultDTO.java
index 0869e5ffaa..9dd579ee37 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/InitializeResultDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/InitializeResultDTO.java
@@ -10,7 +10,7 @@
* Codenvy, S.A. - initial API and implementation
* *****************************************************************************
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.InitializeResult;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/LanguageDescriptionDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/LanguageDescriptionDTO.java
similarity index 88%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/LanguageDescriptionDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/LanguageDescriptionDTO.java
index 0795a3b3e5..7ec434c786 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/LanguageDescriptionDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/LanguageDescriptionDTO.java
@@ -5,10 +5,10 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
+import org.eclipse.che.api.languageserver.shared.model.LanguageDescription;
import org.eclipse.che.dto.shared.DTO;
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
import java.util.List;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/LocationDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/LocationDTO.java
similarity index 91%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/LocationDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/LocationDTO.java
index 1909aadecc..5e17997a95 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/LocationDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/LocationDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.Location;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/MarkedStringDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/MarkedStringDTO.java
similarity index 90%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/MarkedStringDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/MarkedStringDTO.java
index d915662eab..47300dfc0c 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/MarkedStringDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/MarkedStringDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.MarkedString;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/MessageActionItemDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/MessageActionItemDTO.java
similarity index 91%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/MessageActionItemDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/MessageActionItemDTO.java
index 315362d33f..38ea8ee150 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/MessageActionItemDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/MessageActionItemDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.MessageActionItem;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/MessageDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/MessageDTO.java
similarity index 89%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/MessageDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/MessageDTO.java
index 6e6086e4c4..b63f1fc854 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/MessageDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/MessageDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.Message;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/MessageParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/MessageParamsDTO.java
similarity index 92%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/MessageParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/MessageParamsDTO.java
index 40766e2635..7436cb14a3 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/MessageParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/MessageParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.MessageParams;
import io.typefox.lsapi.MessageType;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/NotificationMessageDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/NotificationMessageDTO.java
similarity index 92%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/NotificationMessageDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/NotificationMessageDTO.java
index 0a10897cf9..18ea6c5770 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/NotificationMessageDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/NotificationMessageDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.NotificationMessage;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ParameterInformationDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ParameterInformationDTO.java
similarity index 93%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ParameterInformationDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ParameterInformationDTO.java
index dc9b877387..7d4ce9d0ed 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ParameterInformationDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ParameterInformationDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.ParameterInformation;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/PositionDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/PositionDTO.java
similarity index 92%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/PositionDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/PositionDTO.java
index 74be92c16f..f147a092d2 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/PositionDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/PositionDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.Position;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/PublishDiagnosticsParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/PublishDiagnosticsParamsDTO.java
similarity index 94%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/PublishDiagnosticsParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/PublishDiagnosticsParamsDTO.java
index df78ab499e..3b5fd84d91 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/PublishDiagnosticsParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/PublishDiagnosticsParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.PublishDiagnosticsParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/RangeDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/RangeDTO.java
similarity index 93%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/RangeDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/RangeDTO.java
index 9aa74651b7..08513dc468 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/RangeDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/RangeDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.Range;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ReferenceContextDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ReferenceContextDTO.java
similarity index 91%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ReferenceContextDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ReferenceContextDTO.java
index c7b202062a..2e2b0204f3 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ReferenceContextDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ReferenceContextDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.ReferenceContext;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ReferenceParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ReferenceParamsDTO.java
similarity index 95%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ReferenceParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ReferenceParamsDTO.java
index d6177851a9..4e99522a6e 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ReferenceParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ReferenceParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.ReferenceParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/RenameParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/RenameParamsDTO.java
similarity index 95%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/RenameParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/RenameParamsDTO.java
index 2c4b83234c..6dd241663e 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/RenameParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/RenameParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.RenameParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/RequestMessageDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/RequestMessageDTO.java
similarity index 93%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/RequestMessageDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/RequestMessageDTO.java
index 4430c7c363..ef978eeca9 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/RequestMessageDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/RequestMessageDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.RequestMessage;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ResponseErrorDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ResponseErrorDTO.java
similarity index 94%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ResponseErrorDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ResponseErrorDTO.java
index 2899fa61a1..20d58f38cb 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ResponseErrorDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ResponseErrorDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.ResponseError;
import io.typefox.lsapi.ResponseErrorCode;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ResponseMessageDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ResponseMessageDTO.java
similarity index 94%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ResponseMessageDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ResponseMessageDTO.java
index 915aa28741..75f4a29533 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ResponseMessageDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ResponseMessageDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.ResponseMessage;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ServerCapabilitiesDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ServerCapabilitiesDTO.java
similarity index 98%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ServerCapabilitiesDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ServerCapabilitiesDTO.java
index 0a172143aa..80a95e3fbd 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ServerCapabilitiesDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ServerCapabilitiesDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.ServerCapabilities;
import io.typefox.lsapi.TextDocumentSyncKind;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ShowMessageRequestParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ShowMessageRequestParamsDTO.java
similarity index 94%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ShowMessageRequestParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ShowMessageRequestParamsDTO.java
index 1bf4275908..d658bc7934 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/ShowMessageRequestParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/ShowMessageRequestParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.MessageType;
import io.typefox.lsapi.ShowMessageRequestParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/SignatureHelpDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/SignatureHelpDTO.java
similarity index 94%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/SignatureHelpDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/SignatureHelpDTO.java
index 9d4073a8bb..9b230cc40c 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/SignatureHelpDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/SignatureHelpDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.SignatureHelp;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/SignatureHelpOptionsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/SignatureHelpOptionsDTO.java
similarity index 92%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/SignatureHelpOptionsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/SignatureHelpOptionsDTO.java
index 94ef506cfc..28889cb045 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/SignatureHelpOptionsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/SignatureHelpOptionsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.SignatureHelpOptions;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/SignatureInformationDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/SignatureInformationDTO.java
similarity index 94%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/SignatureInformationDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/SignatureInformationDTO.java
index 8e4bc44a11..374f8716a0 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/SignatureInformationDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/SignatureInformationDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.SignatureInformation;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/SymbolInformationDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/SymbolInformationDTO.java
similarity index 94%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/SymbolInformationDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/SymbolInformationDTO.java
index 659e0217a3..ce89a16da4 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/SymbolInformationDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/SymbolInformationDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.SymbolInformation;
import io.typefox.lsapi.SymbolKind;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/TextDocumentContentChangeEventDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/TextDocumentContentChangeEventDTO.java
similarity index 94%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/TextDocumentContentChangeEventDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/TextDocumentContentChangeEventDTO.java
index 75181829b0..371a9c3279 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/TextDocumentContentChangeEventDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/TextDocumentContentChangeEventDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.TextDocumentContentChangeEvent;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/TextDocumentIdentifierDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/TextDocumentIdentifierDTO.java
similarity index 91%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/TextDocumentIdentifierDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/TextDocumentIdentifierDTO.java
index 6fffcac153..6563632712 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/TextDocumentIdentifierDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/TextDocumentIdentifierDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.TextDocumentIdentifier;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/TextDocumentItemDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/TextDocumentItemDTO.java
similarity index 94%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/TextDocumentItemDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/TextDocumentItemDTO.java
index 6ee2dd9b97..c830008989 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/TextDocumentItemDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/TextDocumentItemDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.TextDocumentItem;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/TextDocumentPositionParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/TextDocumentPositionParamsDTO.java
similarity index 95%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/TextDocumentPositionParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/TextDocumentPositionParamsDTO.java
index 704335c803..bb36ff1a4a 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/TextDocumentPositionParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/TextDocumentPositionParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.TextDocumentPositionParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/TextEditDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/TextEditDTO.java
similarity index 94%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/TextEditDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/TextEditDTO.java
index a96baf31fa..6cfe35a24c 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/TextEditDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/TextEditDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.TextEdit;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/VersionedTextDocumentIdentifierDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/VersionedTextDocumentIdentifierDTO.java
similarity index 92%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/VersionedTextDocumentIdentifierDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/VersionedTextDocumentIdentifierDTO.java
index c7261ee4aa..b22a2517ee 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/VersionedTextDocumentIdentifierDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/VersionedTextDocumentIdentifierDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.VersionedTextDocumentIdentifier;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/WorkspaceEditDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/WorkspaceEditDTO.java
similarity index 93%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/WorkspaceEditDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/WorkspaceEditDTO.java
index e9f7058b51..e614749a48 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/WorkspaceEditDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/WorkspaceEditDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.WorkspaceEdit;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/WorkspaceSymbolParamsDTO.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/WorkspaceSymbolParamsDTO.java
similarity index 91%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/WorkspaceSymbolParamsDTO.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/WorkspaceSymbolParamsDTO.java
index bff46e3c68..68c89c2f2c 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/lsapi/WorkspaceSymbolParamsDTO.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/lsapi/WorkspaceSymbolParamsDTO.java
@@ -5,7 +5,7 @@
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
-package org.eclipse.che.plugin.languageserver.shared.lsapi;
+package org.eclipse.che.api.languageserver.shared.lsapi;
import io.typefox.lsapi.WorkspaceSymbolParams;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/model/LanguageDescription.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/model/LanguageDescription.java
similarity index 95%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/model/LanguageDescription.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/model/LanguageDescription.java
index 6373d5f7f6..460dc40b3c 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/model/LanguageDescription.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/model/LanguageDescription.java
@@ -8,7 +8,7 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.shared.model;
+package org.eclipse.che.api.languageserver.shared.model;
import java.util.List;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/model/impl/InitializeResultImpl.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/model/impl/InitializeResultImpl.java
similarity index 90%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/model/impl/InitializeResultImpl.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/model/impl/InitializeResultImpl.java
index cee03b0629..648e236061 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/model/impl/InitializeResultImpl.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/model/impl/InitializeResultImpl.java
@@ -8,12 +8,12 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.shared.model.impl;
+package org.eclipse.che.api.languageserver.shared.model.impl;
import io.typefox.lsapi.InitializeResult;
import io.typefox.lsapi.ServerCapabilities;
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
+import org.eclipse.che.api.languageserver.shared.model.LanguageDescription;
import java.util.List;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/model/impl/LanguageDescriptionImpl.java b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/model/impl/LanguageDescriptionImpl.java
similarity index 95%
rename from plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/model/impl/LanguageDescriptionImpl.java
rename to wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/model/impl/LanguageDescriptionImpl.java
index d15e0fd633..2c6cf767f2 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-shared/src/main/java/org/eclipse/che/plugin/languageserver/shared/model/impl/LanguageDescriptionImpl.java
+++ b/wsagent/che-core-api-languageserver-shared/src/main/java/org/eclipse/che/api/languageserver/shared/model/impl/LanguageDescriptionImpl.java
@@ -8,10 +8,10 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.shared.model.impl;
+package org.eclipse.che.api.languageserver.shared.model.impl;
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
+import org.eclipse.che.api.languageserver.shared.model.LanguageDescription;
import java.util.List;
import java.util.Objects;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/pom.xml b/wsagent/che-core-api-languageserver/pom.xml
similarity index 81%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/pom.xml
rename to wsagent/che-core-api-languageserver/pom.xml
index 7d1a394411..56e9752c4e 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/pom.xml
+++ b/wsagent/che-core-api-languageserver/pom.xml
@@ -14,16 +14,13 @@
4.0.0
- che-plugin-languageserver-parent
- org.eclipse.che.plugin
+ che-agent-parent
+ org.eclipse.che.core
5.0.0-M5-SNAPSHOT
- che-plugin-languageserver-server
- Che Plugin :: Language Server :: Server
-
- false
- 2.10.0
-
+ che-core-api-languageserver
+ jar
+ Che Core :: API :: Language Server
com.google.code.gson
@@ -37,14 +34,6 @@
com.google.inject
guice
-
- com.google.inject.extensions
- guice-multibindings
-
-
- commons-io
- commons-io
-
io.typefox.lsapi
io.typefox.lsapi
@@ -77,6 +66,10 @@
org.eclipse.che.core
che-core-api-dto
+
+ org.eclipse.che.core
+ che-core-api-languageserver-shared
+
org.eclipse.che.core
che-core-api-project
@@ -89,10 +82,6 @@
org.eclipse.che.core
che-core-commons-inject
-
- org.eclipse.che.plugin
- che-plugin-languageserver-shared
-
org.everrest
everrest-websockets
@@ -123,9 +112,6 @@
- src/main/java
- src/test/java
- target/classes
src/main/java
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/DtoConverter.java b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/DtoConverter.java
similarity index 89%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/DtoConverter.java
rename to wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/DtoConverter.java
index a4cc06d152..4212ca9cd5 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/DtoConverter.java
+++ b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/DtoConverter.java
@@ -8,7 +8,7 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server;
+package org.eclipse.che.api.languageserver;
import io.typefox.lsapi.CodeLensOptions;
import io.typefox.lsapi.CompletionOptions;
@@ -17,14 +17,14 @@ import io.typefox.lsapi.InitializeResult;
import io.typefox.lsapi.ServerCapabilities;
import io.typefox.lsapi.SignatureHelpOptions;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.CodeLensOptionsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.CompletionOptionsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DocumentOnTypeFormattingOptionsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.InitializeResultDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.LanguageDescriptionDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.ServerCapabilitiesDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.SignatureHelpOptionsDTO;
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
+import org.eclipse.che.api.languageserver.shared.lsapi.CodeLensOptionsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.CompletionOptionsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DocumentOnTypeFormattingOptionsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.InitializeResultDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.LanguageDescriptionDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.ServerCapabilitiesDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.SignatureHelpOptionsDTO;
+import org.eclipse.che.api.languageserver.shared.model.LanguageDescription;
import static org.eclipse.che.dto.server.DtoFactory.newDto;
diff --git a/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/LanguageServerModule.java b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/LanguageServerModule.java
new file mode 100644
index 0000000000..2fd68b280d
--- /dev/null
+++ b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/LanguageServerModule.java
@@ -0,0 +1,40 @@
+/*******************************************************************************
+ * Copyright (c) 2012-2016 Codenvy, S.A.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Codenvy, S.A. - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.che.api.languageserver;
+
+import com.google.inject.AbstractModule;
+
+import org.eclipse.che.api.languageserver.messager.PublishDiagnosticsParamsMessenger;
+import org.eclipse.che.api.languageserver.registry.ServerInitializer;
+import org.eclipse.che.api.languageserver.service.LanguageRegistryService;
+import org.eclipse.che.api.languageserver.service.TextDocumentService;
+import org.eclipse.che.inject.DynaModule;
+import org.eclipse.che.api.languageserver.messager.InitializeEventMessenger;
+import org.eclipse.che.api.languageserver.registry.LanguageServerRegistry;
+import org.eclipse.che.api.languageserver.registry.LanguageServerRegistryImpl;
+import org.eclipse.che.api.languageserver.registry.ServerInitializerImpl;
+import org.eclipse.che.api.languageserver.service.WorkspaceService;
+
+@DynaModule
+public class LanguageServerModule extends AbstractModule {
+
+ @Override
+ protected void configure() {
+ bind(LanguageServerRegistry.class).to(LanguageServerRegistryImpl.class);
+ bind(ServerInitializer.class).to(ServerInitializerImpl.class);
+
+ bind(LanguageRegistryService.class);
+ bind(TextDocumentService.class);
+ bind(WorkspaceService.class);
+ bind(PublishDiagnosticsParamsMessenger.class);
+ bind(InitializeEventMessenger.class);
+ }
+}
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/exception/LanguageServerException.java b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/exception/LanguageServerException.java
similarity index 93%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/exception/LanguageServerException.java
rename to wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/exception/LanguageServerException.java
index 0b498d14d3..4499b57f2c 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/exception/LanguageServerException.java
+++ b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/exception/LanguageServerException.java
@@ -8,7 +8,7 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.exception;
+package org.eclipse.che.api.languageserver.exception;
import org.eclipse.che.api.core.ServerException;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/LanguageServerLauncher.java b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/launcher/LanguageServerLauncher.java
similarity index 80%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/LanguageServerLauncher.java
rename to wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/launcher/LanguageServerLauncher.java
index 1a65f27b96..5638be959e 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/LanguageServerLauncher.java
+++ b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/launcher/LanguageServerLauncher.java
@@ -8,12 +8,12 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.launcher;
+package org.eclipse.che.api.languageserver.launcher;
import io.typefox.lsapi.services.LanguageServer;
-import org.eclipse.che.plugin.languageserver.server.exception.LanguageServerException;
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
+import org.eclipse.che.api.languageserver.exception.LanguageServerException;
+import org.eclipse.che.api.languageserver.shared.model.LanguageDescription;
/**
* @author Anatoliy Bazko
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/LanguageServerLauncherTemplate.java b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/launcher/LanguageServerLauncherTemplate.java
similarity index 88%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/LanguageServerLauncherTemplate.java
rename to wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/launcher/LanguageServerLauncherTemplate.java
index e3d2b6effb..26bebfdb67 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/launcher/LanguageServerLauncherTemplate.java
+++ b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/launcher/LanguageServerLauncherTemplate.java
@@ -8,11 +8,11 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.launcher;
+package org.eclipse.che.api.languageserver.launcher;
import io.typefox.lsapi.services.LanguageServer;
-import org.eclipse.che.plugin.languageserver.server.exception.LanguageServerException;
+import org.eclipse.che.api.languageserver.exception.LanguageServerException;
/**
* @author Anatolii Bazko
@@ -25,7 +25,6 @@ public abstract class LanguageServerLauncherTemplate implements LanguageServerLa
return connectToLanguageServer(languageServerProcess);
}
-
abstract protected Process startLanguageServerProcess(String projectPath) throws LanguageServerException;
abstract protected LanguageServer connectToLanguageServer(Process languageServerProcess) throws LanguageServerException;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/messager/InitializeEventMessenger.java b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/messager/InitializeEventMessenger.java
similarity index 78%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/messager/InitializeEventMessenger.java
rename to wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/messager/InitializeEventMessenger.java
index 0f74cc7db5..855548e9c9 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/messager/InitializeEventMessenger.java
+++ b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/messager/InitializeEventMessenger.java
@@ -8,18 +8,19 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.messager;
+package org.eclipse.che.api.languageserver.messager;
import io.typefox.lsapi.ServerCapabilities;
import io.typefox.lsapi.services.LanguageServer;
import com.google.gson.Gson;
-import org.eclipse.che.plugin.languageserver.server.registry.LanguageServerRegistryImpl;
-import org.eclipse.che.plugin.languageserver.server.registry.ServerInitializer;
-import org.eclipse.che.plugin.languageserver.server.registry.ServerInitializerObserver;
-import org.eclipse.che.plugin.languageserver.shared.event.LanguageServerInitializeEventDto;
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
+import org.eclipse.che.api.languageserver.DtoConverter;
+import org.eclipse.che.api.languageserver.registry.LanguageServerRegistryImpl;
+import org.eclipse.che.api.languageserver.registry.ServerInitializer;
+import org.eclipse.che.api.languageserver.registry.ServerInitializerObserver;
+import org.eclipse.che.api.languageserver.shared.event.LanguageServerInitializeEventDto;
+import org.eclipse.che.api.languageserver.shared.model.LanguageDescription;
import org.everrest.websockets.WSConnectionContext;
import org.everrest.websockets.message.ChannelBroadcastMessage;
import org.slf4j.Logger;
@@ -33,7 +34,6 @@ import javax.websocket.EncodeException;
import java.io.IOException;
import static org.eclipse.che.dto.server.DtoFactory.newDto;
-import static org.eclipse.che.plugin.languageserver.server.DtoConverter.asDto;
/**
* @author Anatolii Bazko
@@ -56,8 +56,8 @@ public class InitializeEventMessenger implements ServerInitializerObserver {
String projectPath) {
LanguageServerInitializeEventDto initializeEventDto = newDto(LanguageServerInitializeEventDto.class);
- initializeEventDto.setSupportedLanguages(asDto(languageDescription));
- initializeEventDto.setServerCapabilities(asDto(serverCapabilities));
+ initializeEventDto.setSupportedLanguages(DtoConverter.asDto(languageDescription));
+ initializeEventDto.setServerCapabilities(DtoConverter.asDto(serverCapabilities));
initializeEventDto.setProjectPath(projectPath.substring(LanguageServerRegistryImpl.PROJECT_FOLDER_PATH.length()));
send(initializeEventDto);
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/messager/PublishDiagnosticsParamsMessenger.java b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/messager/PublishDiagnosticsParamsMessenger.java
similarity index 97%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/messager/PublishDiagnosticsParamsMessenger.java
rename to wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/messager/PublishDiagnosticsParamsMessenger.java
index 68a7f556d6..416491a69e 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/messager/PublishDiagnosticsParamsMessenger.java
+++ b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/messager/PublishDiagnosticsParamsMessenger.java
@@ -8,7 +8,7 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.messager;
+package org.eclipse.che.api.languageserver.messager;
import io.typefox.lsapi.PublishDiagnosticsParams;
import io.typefox.lsapi.impl.PublishDiagnosticsParamsImpl;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/LanguageServerDescription.java b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/LanguageServerDescription.java
similarity index 86%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/LanguageServerDescription.java
rename to wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/LanguageServerDescription.java
index 3f73b80a2c..a5d0fdd402 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/LanguageServerDescription.java
+++ b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/LanguageServerDescription.java
@@ -8,11 +8,12 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.registry;
+package org.eclipse.che.api.languageserver.registry;
import io.typefox.lsapi.InitializeResult;
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
+import org.eclipse.che.api.languageserver.shared.model.LanguageDescription;
+
/**
* Simple container for {@link InitializeResult} and {@link LanguageDescription}
@@ -20,7 +21,7 @@ import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
* @author Evgen Vidolob
*/
public class LanguageServerDescription {
- private final InitializeResult initializeResult;
+ private final InitializeResult initializeResult;
private final LanguageDescription languageDescription;
public LanguageServerDescription(InitializeResult initializeResult,
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/LanguageServerRegistry.java b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/LanguageServerRegistry.java
similarity index 78%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/LanguageServerRegistry.java
rename to wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/LanguageServerRegistry.java
index 64aeba1d43..183b99c051 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/LanguageServerRegistry.java
+++ b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/LanguageServerRegistry.java
@@ -8,14 +8,14 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.registry;
+package org.eclipse.che.api.languageserver.registry;
import io.typefox.lsapi.services.LanguageServer;
+import org.eclipse.che.api.languageserver.exception.LanguageServerException;
+import org.eclipse.che.api.languageserver.shared.ProjectExtensionKey;
+import org.eclipse.che.api.languageserver.shared.model.LanguageDescription;
import org.eclipse.che.commons.annotation.Nullable;
-import org.eclipse.che.plugin.languageserver.server.exception.LanguageServerException;
-import org.eclipse.che.plugin.languageserver.shared.ProjectExtensionKey;
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
import java.util.List;
import java.util.Map;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/LanguageServerRegistryImpl.java b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/LanguageServerRegistryImpl.java
similarity index 92%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/LanguageServerRegistryImpl.java
rename to wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/LanguageServerRegistryImpl.java
index d6b63df73b..6753de38f4 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/LanguageServerRegistryImpl.java
+++ b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/LanguageServerRegistryImpl.java
@@ -8,7 +8,7 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.registry;
+package org.eclipse.che.api.languageserver.registry;
import io.typefox.lsapi.ServerCapabilities;
import io.typefox.lsapi.services.LanguageServer;
@@ -18,14 +18,14 @@ import com.google.inject.Provider;
import com.google.inject.Singleton;
import org.eclipse.che.api.core.ServerException;
+import org.eclipse.che.api.languageserver.exception.LanguageServerException;
+import org.eclipse.che.api.languageserver.launcher.LanguageServerLauncher;
+import org.eclipse.che.api.languageserver.shared.ProjectExtensionKey;
+import org.eclipse.che.api.languageserver.shared.model.LanguageDescription;
import org.eclipse.che.api.project.server.FolderEntry;
import org.eclipse.che.api.project.server.ProjectManager;
import org.eclipse.che.api.project.server.VirtualFileEntry;
import org.eclipse.che.commons.annotation.Nullable;
-import org.eclipse.che.plugin.languageserver.server.exception.LanguageServerException;
-import org.eclipse.che.plugin.languageserver.server.launcher.LanguageServerLauncher;
-import org.eclipse.che.plugin.languageserver.shared.ProjectExtensionKey;
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
import java.net.URI;
import java.util.ArrayList;
@@ -37,7 +37,7 @@ import java.util.concurrent.ConcurrentHashMap;
import java.util.stream.Collectors;
import static com.google.common.io.Files.getFileExtension;
-import static org.eclipse.che.plugin.languageserver.shared.ProjectExtensionKey.createProjectKey;
+import static org.eclipse.che.api.languageserver.shared.ProjectExtensionKey.createProjectKey;
@Singleton
public class LanguageServerRegistryImpl implements LanguageServerRegistry, ServerInitializerObserver {
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/ServerInitializer.java b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/ServerInitializer.java
similarity index 82%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/ServerInitializer.java
rename to wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/ServerInitializer.java
index c02e96f9f3..d959a28f58 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/ServerInitializer.java
+++ b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/ServerInitializer.java
@@ -8,12 +8,12 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.registry;
+package org.eclipse.che.api.languageserver.registry;
import io.typefox.lsapi.services.LanguageServer;
-import org.eclipse.che.plugin.languageserver.server.exception.LanguageServerException;
-import org.eclipse.che.plugin.languageserver.server.launcher.LanguageServerLauncher;
+import org.eclipse.che.api.languageserver.exception.LanguageServerException;
+import org.eclipse.che.api.languageserver.launcher.LanguageServerLauncher;
import java.util.Map;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/ServerInitializerImpl.java b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/ServerInitializerImpl.java
similarity index 87%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/ServerInitializerImpl.java
rename to wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/ServerInitializerImpl.java
index d44ff80d66..16c6db44f9 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/ServerInitializerImpl.java
+++ b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/ServerInitializerImpl.java
@@ -8,7 +8,7 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.registry;
+package org.eclipse.che.api.languageserver.registry;
import io.typefox.lsapi.InitializeResult;
import io.typefox.lsapi.ServerCapabilities;
@@ -19,10 +19,10 @@ import io.typefox.lsapi.services.LanguageServer;
import com.google.inject.Inject;
import com.google.inject.Singleton;
-import org.eclipse.che.plugin.languageserver.server.exception.LanguageServerException;
-import org.eclipse.che.plugin.languageserver.server.launcher.LanguageServerLauncher;
-import org.eclipse.che.plugin.languageserver.server.messager.PublishDiagnosticsParamsMessenger;
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
+import org.eclipse.che.api.languageserver.exception.LanguageServerException;
+import org.eclipse.che.api.languageserver.launcher.LanguageServerLauncher;
+import org.eclipse.che.api.languageserver.messager.PublishDiagnosticsParamsMessenger;
+import org.eclipse.che.api.languageserver.shared.model.LanguageDescription;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -92,19 +92,11 @@ public class ServerInitializerImpl implements ServerInitializer {
synchronized (launcher) {
LanguageServer server = languageIdToServers.get(languageId);
if (server != null) {
-// LanguageServerDescription initializeResult = serversToInitResult.get(server);
-// if (!initializeResult.getCapabilities().isMultiplyProjectsProvider()) {
server = doInitialize(launcher, projectPath);
-// }
} else {
server = doInitialize(launcher, projectPath);
languageIdToServers.put(languageId, server);
}
-// InitializeResult initializeResult = serversToInitResult.get(server);
-// if (initializeResult instanceof InitializeResultImpl) {
-// ((InitializeResultImpl)initializeResult)
-// .setSupportedLanguages(Collections.singletonList((LanguageDescriptionImpl)launcher.getLanguageDescription()));
-// }
onServerInitialized(server, serversToInitResult.get(server).getInitializeResult().getCapabilities(), launcher.getLanguageDescription(), projectPath);
return server;
}
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/ServerInitializerObservable.java b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/ServerInitializerObservable.java
similarity index 92%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/ServerInitializerObservable.java
rename to wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/ServerInitializerObservable.java
index 28ea78d7ea..448c3848e9 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/ServerInitializerObservable.java
+++ b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/ServerInitializerObservable.java
@@ -8,7 +8,7 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.registry;
+package org.eclipse.che.api.languageserver.registry;
/**
* @author Anatoliy Bazko
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/ServerInitializerObserver.java b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/ServerInitializerObserver.java
similarity index 89%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/ServerInitializerObserver.java
rename to wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/ServerInitializerObserver.java
index 5e610c37e0..728e05e492 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/registry/ServerInitializerObserver.java
+++ b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/registry/ServerInitializerObserver.java
@@ -8,12 +8,12 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.registry;
+package org.eclipse.che.api.languageserver.registry;
import io.typefox.lsapi.ServerCapabilities;
import io.typefox.lsapi.services.LanguageServer;
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
+import org.eclipse.che.api.languageserver.shared.model.LanguageDescription;
/**
* @author Anatoliy Bazko
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/service/LanguageRegistryService.java b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/service/LanguageRegistryService.java
similarity index 76%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/service/LanguageRegistryService.java
rename to wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/service/LanguageRegistryService.java
index bf0d44cba0..8e462436f1 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/service/LanguageRegistryService.java
+++ b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/service/LanguageRegistryService.java
@@ -8,19 +8,19 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.service;
+package org.eclipse.che.api.languageserver.service;
import com.google.inject.Inject;
import com.google.inject.Singleton;
-import org.eclipse.che.plugin.languageserver.server.DtoConverter;
-import org.eclipse.che.plugin.languageserver.server.exception.LanguageServerException;
-import org.eclipse.che.plugin.languageserver.server.registry.LanguageServerDescription;
-import org.eclipse.che.plugin.languageserver.server.registry.LanguageServerRegistry;
-import org.eclipse.che.plugin.languageserver.server.registry.LanguageServerRegistryImpl;
-import org.eclipse.che.plugin.languageserver.shared.ProjectExtensionKey;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.InitializeResultDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.LanguageDescriptionDTO;
+import org.eclipse.che.api.languageserver.DtoConverter;
+import org.eclipse.che.api.languageserver.exception.LanguageServerException;
+import org.eclipse.che.api.languageserver.registry.LanguageServerDescription;
+import org.eclipse.che.api.languageserver.registry.LanguageServerRegistry;
+import org.eclipse.che.api.languageserver.registry.LanguageServerRegistryImpl;
+import org.eclipse.che.api.languageserver.shared.ProjectExtensionKey;
+import org.eclipse.che.api.languageserver.shared.lsapi.InitializeResultDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.LanguageDescriptionDTO;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
@@ -32,8 +32,8 @@ import java.util.Collections;
import java.util.List;
import static java.util.stream.Collectors.toList;
+import static org.eclipse.che.api.languageserver.DtoConverter.asDto;
import static org.eclipse.che.dto.server.DtoFactory.newDto;
-import static org.eclipse.che.plugin.languageserver.server.DtoConverter.asDto;
@Singleton
@Path("languageserver")
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/service/TextDocumentService.java b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/service/TextDocumentService.java
similarity index 90%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/service/TextDocumentService.java
rename to wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/service/TextDocumentService.java
index 3b4993c904..0e51425936 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/service/TextDocumentService.java
+++ b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/service/TextDocumentService.java
@@ -8,7 +8,7 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.service;
+package org.eclipse.che.api.languageserver.service;
import io.typefox.lsapi.CompletionItem;
import io.typefox.lsapi.Hover;
@@ -22,20 +22,20 @@ import io.typefox.lsapi.services.LanguageServer;
import com.google.inject.Inject;
import com.google.inject.Singleton;
-import org.eclipse.che.plugin.languageserver.server.exception.LanguageServerException;
-import org.eclipse.che.plugin.languageserver.server.registry.LanguageServerRegistry;
-import org.eclipse.che.plugin.languageserver.server.registry.LanguageServerRegistryImpl;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.CompletionItemDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DidChangeTextDocumentParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DidCloseTextDocumentParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DidOpenTextDocumentParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DidSaveTextDocumentParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DocumentFormattingParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DocumentOnTypeFormattingParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DocumentRangeFormattingParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.DocumentSymbolParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.ReferenceParamsDTO;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.TextDocumentPositionParamsDTO;
+import org.eclipse.che.api.languageserver.exception.LanguageServerException;
+import org.eclipse.che.api.languageserver.registry.LanguageServerRegistry;
+import org.eclipse.che.api.languageserver.registry.LanguageServerRegistryImpl;
+import org.eclipse.che.api.languageserver.shared.lsapi.CompletionItemDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DidChangeTextDocumentParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DidCloseTextDocumentParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DidOpenTextDocumentParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DidSaveTextDocumentParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DocumentFormattingParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DocumentOnTypeFormattingParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DocumentRangeFormattingParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.DocumentSymbolParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.ReferenceParamsDTO;
+import org.eclipse.che.api.languageserver.shared.lsapi.TextDocumentPositionParamsDTO;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/service/WorkspaceService.java b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/service/WorkspaceService.java
similarity index 87%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/service/WorkspaceService.java
rename to wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/service/WorkspaceService.java
index 66ccdfc5e9..b77e33c90a 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/main/java/org/eclipse/che/plugin/languageserver/server/service/WorkspaceService.java
+++ b/wsagent/che-core-api-languageserver/src/main/java/org/eclipse/che/api/languageserver/service/WorkspaceService.java
@@ -8,20 +8,20 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.service;
+package org.eclipse.che.api.languageserver.service;
import io.typefox.lsapi.Location;
-import io.typefox.lsapi.impl.LocationImpl;
import io.typefox.lsapi.SymbolInformation;
+import io.typefox.lsapi.impl.LocationImpl;
import io.typefox.lsapi.services.LanguageServer;
import com.google.inject.Inject;
import com.google.inject.Singleton;
-import org.eclipse.che.plugin.languageserver.server.exception.LanguageServerException;
-import org.eclipse.che.plugin.languageserver.server.registry.LanguageServerRegistry;
-import org.eclipse.che.plugin.languageserver.server.registry.LanguageServerRegistryImpl;
-import org.eclipse.che.plugin.languageserver.shared.lsapi.WorkspaceSymbolParamsDTO;
+import org.eclipse.che.api.languageserver.exception.LanguageServerException;
+import org.eclipse.che.api.languageserver.registry.LanguageServerRegistry;
+import org.eclipse.che.api.languageserver.registry.LanguageServerRegistryImpl;
+import org.eclipse.che.api.languageserver.shared.lsapi.WorkspaceSymbolParamsDTO;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/test/java/org/eclipse/che/plugin/languageserver/server/registry/LanguageServerRegistryImplTest.java b/wsagent/che-core-api-languageserver/src/test/java/org/eclipse/che/api/languageserver/registry/LanguageServerRegistryImplTest.java
similarity index 85%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/test/java/org/eclipse/che/plugin/languageserver/server/registry/LanguageServerRegistryImplTest.java
rename to wsagent/che-core-api-languageserver/src/test/java/org/eclipse/che/api/languageserver/registry/LanguageServerRegistryImplTest.java
index 4bc5036522..6a9db491de 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/test/java/org/eclipse/che/plugin/languageserver/server/registry/LanguageServerRegistryImplTest.java
+++ b/wsagent/che-core-api-languageserver/src/test/java/org/eclipse/che/api/languageserver/registry/LanguageServerRegistryImplTest.java
@@ -8,7 +8,7 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.registry;
+package org.eclipse.che.api.languageserver.registry;
import io.typefox.lsapi.InitializeParams;
import io.typefox.lsapi.InitializeResult;
@@ -17,9 +17,8 @@ import io.typefox.lsapi.services.LanguageServer;
import io.typefox.lsapi.services.TextDocumentService;
import io.typefox.lsapi.services.WindowService;
-import org.eclipse.che.plugin.languageserver.server.launcher.JsonLanguageServerLauncher;
-import org.eclipse.che.plugin.languageserver.server.launcher.LanguageServerLauncher;
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
+import org.eclipse.che.api.languageserver.launcher.LanguageServerLauncher;
+import org.eclipse.che.api.languageserver.shared.model.LanguageDescription;
import org.mockito.Mock;
import org.mockito.testng.MockitoTestNGListener;
import org.testng.annotations.BeforeMethod;
@@ -29,7 +28,6 @@ import org.testng.annotations.Test;
import java.util.Collections;
import java.util.concurrent.CompletableFuture;
-import static java.util.Arrays.asList;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyString;
import static org.mockito.Matchers.eq;
@@ -48,7 +46,7 @@ import static org.testng.Assert.assertNotNull;
public class LanguageServerRegistryImplTest {
private static final String PREFIX = "file://";
- private static final String FILE_PATH = "/projects/1/test.json";
+ private static final String FILE_PATH = "/projects/1/test.txt";
private static final String PROJECT_PATH = "/1";
@Mock
@@ -72,13 +70,12 @@ public class LanguageServerRegistryImplTest {
public void setUp() throws Exception {
when(completableFuture.get()).thenReturn(initializeResult);
when(initializeResult.getCapabilities()).thenReturn(serverCapabilities);
-// when(serverCapabilities.isMultiplyProjectsProvider()).thenReturn(true);
when(languageServerLauncher.getLanguageDescription()).thenReturn(languageDescription);
when(languageServerLauncher.isAbleToLaunch()).thenReturn(true);
- when(languageDescription.getLanguageId()).thenReturn(JsonLanguageServerLauncher.LANGUAGE_ID);
- when(languageDescription.getFileExtensions()).thenReturn(asList(JsonLanguageServerLauncher.EXTENSIONS));
- when(languageDescription.getMimeTypes()).thenReturn(asList(JsonLanguageServerLauncher.MIME_TYPES));
+ when(languageDescription.getLanguageId()).thenReturn("id");
+ when(languageDescription.getFileExtensions()).thenReturn(Collections.singletonList("txt"));
+ when(languageDescription.getMimeTypes()).thenReturn(Collections.singletonList("plain/text"));
when(languageServer.getTextDocumentService()).thenReturn(mock(TextDocumentService.class));
when(languageServer.getWindowService()).thenReturn(mock(WindowService.class));
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/test/java/org/eclipse/che/plugin/languageserver/server/registry/ServerInitializerImplTest.java b/wsagent/che-core-api-languageserver/src/test/java/org/eclipse/che/api/languageserver/registry/ServerInitializerImplTest.java
similarity index 90%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/test/java/org/eclipse/che/plugin/languageserver/server/registry/ServerInitializerImplTest.java
rename to wsagent/che-core-api-languageserver/src/test/java/org/eclipse/che/api/languageserver/registry/ServerInitializerImplTest.java
index 4e354c1d06..17791051cd 100644
--- a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/test/java/org/eclipse/che/plugin/languageserver/server/registry/ServerInitializerImplTest.java
+++ b/wsagent/che-core-api-languageserver/src/test/java/org/eclipse/che/api/languageserver/registry/ServerInitializerImplTest.java
@@ -8,16 +8,16 @@
* Contributors:
* Codenvy, S.A. - initial API and implementation
*******************************************************************************/
-package org.eclipse.che.plugin.languageserver.server.registry;
+package org.eclipse.che.api.languageserver.registry;
import io.typefox.lsapi.InitializeParams;
import io.typefox.lsapi.InitializeResult;
import io.typefox.lsapi.ServerCapabilities;
import io.typefox.lsapi.services.LanguageServer;
-import org.eclipse.che.plugin.languageserver.server.launcher.LanguageServerLauncher;
-import org.eclipse.che.plugin.languageserver.server.messager.PublishDiagnosticsParamsMessenger;
-import org.eclipse.che.plugin.languageserver.shared.model.LanguageDescription;
+import org.eclipse.che.api.languageserver.launcher.LanguageServerLauncher;
+import org.eclipse.che.api.languageserver.messager.PublishDiagnosticsParamsMessenger;
+import org.eclipse.che.api.languageserver.shared.model.LanguageDescription;
import org.mockito.Mock;
import org.mockito.testng.MockitoTestNGListener;
import org.testng.annotations.BeforeMethod;
diff --git a/plugins/plugin-languageserver/che-plugin-languageserver-server/src/test/resources/logback-test.xml b/wsagent/che-core-api-languageserver/src/test/resources/logback-test.xml
similarity index 100%
rename from plugins/plugin-languageserver/che-plugin-languageserver-server/src/test/resources/logback-test.xml
rename to wsagent/che-core-api-languageserver/src/test/resources/logback-test.xml
diff --git a/wsagent/pom.xml b/wsagent/pom.xml
index 96e200d642..0d984ea45d 100644
--- a/wsagent/pom.xml
+++ b/wsagent/pom.xml
@@ -32,6 +32,8 @@
che-core-git-impl-jgit
che-core-api-debug
che-core-api-debug-shared
+ che-core-api-languageserver
+ che-core-api-languageserver-shared
wsagent-local