CHE-2552: Language server module refactoring (#2677)

6.19.x
Anatoliy Bazko 2016-10-04 11:49:24 +03:00 committed by GitHub
parent 6eb6e5deee
commit e079338a11
137 changed files with 703 additions and 611 deletions

View File

@ -160,10 +160,6 @@
<groupId>org.eclipse.che.plugin</groupId>
<artifactId>che-plugin-languageserver-ide</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.plugin</groupId>
<artifactId>che-plugin-languageserver-shared</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.plugin</groupId>
<artifactId>che-plugin-machine-ext-client</artifactId>

View File

@ -81,6 +81,7 @@
<inherits name="org.eclipse.che.api.workspace.Workspace"/>
<inherits name="org.eclipse.che.api.debug.Debug"/>
<inherits name="org.eclipse.che.api.ssh.Ssh"/>
<inherits name="org.eclipse.che.api.languageserver.LanguageServer"/>
<inherits name="org.eclipse.che.plugin.svn.Subversion"/>

View File

@ -70,6 +70,14 @@
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-git</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-languageserver</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-languageserver-shared</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-project</artifactId>
@ -146,11 +154,7 @@
</dependency>
<dependency>
<groupId>org.eclipse.che.plugin</groupId>
<artifactId>che-plugin-languageserver-server</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.plugin</groupId>
<artifactId>che-plugin-languageserver-shared</artifactId>
<artifactId>che-plugin-json-server</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.plugin</groupId>

View File

@ -36,10 +36,22 @@
<groupId>com.google.inject.extensions</groupId>
<artifactId>guice-multibindings</artifactId>
</dependency>
<dependency>
<groupId>io.typefox.lsapi</groupId>
<artifactId>io.typefox.lsapi.services</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-core</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-languageserver</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-languageserver-shared</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-project</artifactId>
@ -48,6 +60,10 @@
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-commons-inject</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-commons-lang</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.plugin</groupId>
<artifactId>che-plugin-csharp-lang-shared</artifactId>

View File

@ -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<ProjectHandler> projectHandlersMultibinder = Multibinder.newSetBinder(binder(), ProjectHandler.class);
projectHandlersMultibinder.addBinding().to(CreateNetCoreProjectHandler.class);
Multibinder.newSetBinder(binder(), LanguageServerLauncher.class).addBinding().to(CSharpLanguageServerLauncher.class);
}
}

View File

@ -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);
}
}

View File

@ -0,0 +1,52 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
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
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>che-plugin-json-parent</artifactId>
<groupId>org.eclipse.che.plugin</groupId>
<version>5.0.0-M5-SNAPSHOT</version>
</parent>
<artifactId>che-plugin-json-server</artifactId>
<name>Che Plugin :: JSON :: Extension Server</name>
<properties>
<findbugs.failonerror>false</findbugs.failonerror>
</properties>
<dependencies>
<dependency>
<groupId>com.google.inject</groupId>
<artifactId>guice</artifactId>
</dependency>
<dependency>
<groupId>com.google.inject.extensions</groupId>
<artifactId>guice-multibindings</artifactId>
</dependency>
<dependency>
<groupId>io.typefox.lsapi</groupId>
<artifactId>io.typefox.lsapi.services</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-languageserver</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-languageserver-shared</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-commons-inject</artifactId>
</dependency>
</dependencies>
</project>

View File

@ -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);
}
}

View File

@ -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 {

View File

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
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
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>che-plugin-parent</artifactId>
<groupId>org.eclipse.che.plugin</groupId>
<version>5.0.0-M5-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>che-plugin-json-parent</artifactId>
<packaging>pom</packaging>
<name>Che Plugin :: JSON :: Parent</name>
<modules>
<module>che-plugin-json-server</module>
</modules>
</project>

View File

@ -22,6 +22,9 @@
<artifactId>che-plugin-languageserver-ide</artifactId>
<packaging>jar</packaging>
<name>Che Plugin :: Language Server :: IDE</name>
<properties>
<dto-generator-out-directory>${project.build.directory}/generated-sources/dto/</dto-generator-out-directory>
</properties>
<dependencies>
<dependency>
<groupId>com.google.guava</groupId>
@ -51,6 +54,14 @@
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-dto</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-languageserver-shared</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-commons-annotations</artifactId>
@ -71,10 +82,6 @@
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-ide-ui</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.plugin</groupId>
<artifactId>che-plugin-languageserver-shared</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.plugin</groupId>
<artifactId>che-plugin-orion-editor</artifactId>
@ -95,6 +102,7 @@
</dependency>
</dependencies>
<build>
<outputDirectory>target/classes</outputDirectory>
<resources>
<resource>
<directory>src/main/java</directory>
@ -102,6 +110,90 @@
<resource>
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>${dto-generator-out-directory}</directory>
</resource>
</resources>
<testResources>
<testResource>
<directory>src/test/resources</directory>
</testResource>
</testResources>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>add-resource</id>
<phase>process-sources</phase>
<goals>
<goal>add-resource</goal>
</goals>
<configuration>
<resources>
<resource>
<directory>${dto-generator-out-directory}/META-INF</directory>
<targetPath>META-INF</targetPath>
</resource>
</resources>
</configuration>
</execution>
<execution>
<id>add-source</id>
<phase>process-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>${dto-generator-out-directory}</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<executions>
<execution>
<id>pre-compile</id>
<phase>generate-sources</phase>
<goals>
<goal>compile</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-dto-maven-plugin</artifactId>
<version>${project.version}</version>
<executions>
<execution>
<id>generate-client-dto</id>
<phase>process-sources</phase>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<dtoPackages>
<package>org.eclipse.che.api.languageserver.shared</package>
</dtoPackages>
<outputDirectory>${dto-generator-out-directory}</outputDirectory>
<genClassName>org.eclipse.che.api.languageserver.shared.dto.DtoClientImpls</genClassName>
<impl>client</impl>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</project>

View File

@ -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;

View File

@ -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;

View File

@ -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;
/**

View File

@ -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

View File

@ -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;

View File

@ -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;

View File

@ -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

View File

@ -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

View File

@ -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;

View File

@ -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;

View File

@ -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

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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.

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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

View File

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
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
-->
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.7.0//EN" "http://gwtproject.org/doctype/2.7.0/gwt-module.dtd">
<module>
<inherits name="com.google.gwt.user.User"/>
<inherits name="com.google.gwt.json.JSON"/>
<source path="shared"/>
</module>

View File

@ -27,5 +27,4 @@
<inherits name="org.eclipse.che.api.promises.Promises"/>
<source path="ide"/>
<source path="shared"/>
</module>

View File

@ -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);
}
}

View File

@ -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<Path> 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<Path> 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);
}
}
}
}
}

View File

@ -23,8 +23,6 @@
<packaging>pom</packaging>
<name>Che Plugin :: Language Server :: Parent</name>
<modules>
<module>che-plugin-languageserver-shared</module>
<module>che-plugin-languageserver-server</module>
<module>che-plugin-languageserver-ide</module>
</modules>
</project>

View File

@ -32,6 +32,18 @@
<groupId>com.google.inject.extensions</groupId>
<artifactId>guice-multibindings</artifactId>
</dependency>
<dependency>
<groupId>io.typefox.lsapi</groupId>
<artifactId>io.typefox.lsapi.services</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-languageserver</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-languageserver-shared</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-project</artifactId>

View File

@ -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<ProjectTypeDef> projectTypeMultibinder = Multibinder.newSetBinder(binder(), ProjectTypeDef.class);
projectTypeMultibinder.addBinding().to(PhpProjectType.class);
Multibinder.newSetBinder(binder(), LanguageServerLauncher.class).addBinding().to(PhpLanguageServerLauncher.class);
}
}

View File

@ -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 {

View File

@ -51,5 +51,6 @@
<module>plugin-ssh-machine</module>
<module>plugin-ssh-key</module>
<module>plugin-languageserver</module>
<module>plugin-json</module>
</modules>
</project>

25
pom.xml
View File

@ -178,6 +178,16 @@
<artifactId>che-core-api-jdbc-vendor-h2</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-languageserver</artifactId>
<version>${che.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-languageserver-shared</artifactId>
<version>${che.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-machine</artifactId>
@ -541,21 +551,16 @@
<artifactId>che-plugin-java-plain-shared</artifactId>
<version>${che.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.che.plugin</groupId>
<artifactId>che-plugin-json-server</artifactId>
<version>${che.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.che.plugin</groupId>
<artifactId>che-plugin-languageserver-ide</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.che.plugin</groupId>
<artifactId>che-plugin-languageserver-server</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.che.plugin</groupId>
<artifactId>che-plugin-languageserver-shared</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.che.plugin</groupId>
<artifactId>che-plugin-machine-ext-client</artifactId>

View File

@ -14,12 +14,13 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>che-plugin-languageserver-parent</artifactId>
<groupId>org.eclipse.che.plugin</groupId>
<artifactId>che-agent-parent</artifactId>
<groupId>org.eclipse.che.core</groupId>
<version>5.0.0-M5-SNAPSHOT</version>
</parent>
<artifactId>che-plugin-languageserver-shared</artifactId>
<name>Che Plugin :: Language Server :: Shared</name>
<artifactId>che-core-api-languageserver-shared</artifactId>
<packaging>jar</packaging>
<name>Che Core :: API :: Language Server Shared</name>
<properties>
<dto-generator-out-directory>${project.build.directory}/generated-sources/dto/</dto-generator-out-directory>
<findbugs.failonerror>false</findbugs.failonerror>
@ -29,10 +30,6 @@
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
</dependency>
<dependency>
<groupId>com.google.inject</groupId>
<artifactId>guice</artifactId>
</dependency>
<dependency>
<groupId>io.typefox.lsapi</groupId>
<artifactId>io.typefox.lsapi</artifactId>
@ -41,15 +38,6 @@
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-dto</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-commons-gwt</artifactId>
</dependency>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-user</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<resources>
@ -60,7 +48,7 @@
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>${dto-generator-out-directory}</directory>
<directory>${generated.sources.directory}</directory>
</resource>
</resources>
<plugins>
@ -73,6 +61,46 @@
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-dto-maven-plugin</artifactId>
<version>${project.version}</version>
<executions>
<execution>
<phase>process-sources</phase>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
<configuration>
<dtoPackages>
<package>org.eclipse.che.api.languageserver.shared</package>
</dtoPackages>
<outputDirectory>${dto-generator-out-directory}</outputDirectory>
<genClassName>org.eclipse.che.api.languageserver.server.dto.DtoServerImpls</genClassName>
<impl>server</impl>
</configuration>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<executions>
<execution>
<id>pre-compile</id>
<phase>generate-sources</phase>
<goals>
<goal>compile</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
@ -106,62 +134,6 @@
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<executions>
<execution>
<id>pre-compile</id>
<phase>generate-sources</phase>
<goals>
<goal>compile</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.che.core</groupId>
<artifactId>che-core-api-dto-maven-plugin</artifactId>
<version>${project.version}</version>
<executions>
<execution>
<id>generate-client-dto</id>
<phase>process-sources</phase>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<dtoPackages>
<package>org.eclipse.che.plugin.languageserver.shared</package>
</dtoPackages>
<outputDirectory>${dto-generator-out-directory}</outputDirectory>
<genClassName>org.eclipse.che.plugin.languageserver.shared.dto.DtoClientImpls</genClassName>
<impl>client</impl>
</configuration>
</execution>
<execution>
<id>generate-server-dto</id>
<phase>process-sources</phase>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<dtoPackages>
<package>org.eclipse.che.plugin.languageserver.shared</package>
</dtoPackages>
<outputDirectory>${dto-generator-out-directory}</outputDirectory>
<genClassName>org.eclipse.che.plugin.languageserver.shared.dto.DtoServerImpls</genClassName>
<impl>server</impl>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</project>

View File

@ -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;

View File

@ -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;

View File

@ -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

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

Some files were not shown because too many files have changed in this diff Show More