Skip to content
Snippets Groups Projects
Commit 48e6b03f authored by Adam Knapp's avatar Adam Knapp
Browse files

Recent trials of LS startup


Signed-off-by: default avatarAdam Knapp <adam.knapp@ericsson.com>
parent 6db9380e
No related branches found
No related tags found
No related merge requests found
......@@ -35,7 +35,9 @@ import org.junit.BeforeClass;
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import org.junit.runners.Suite.SuiteClasses;
import org.eclipse.lsp4e.operations.diagnostics.LSPDiagnosticsToMarkers;
@SuppressWarnings("restriction")
@RunWith(Suite.class)
@SuiteClasses({
ChangeTests.class,
......@@ -51,7 +53,7 @@ public class Designer_plugin_tests {
IProject project = WorkspaceHandlingLibrary.getWorkspace().getRoot().getProject(PROJECT_NAME);
ProjectHandlingLibrary projectLibrary = new ProjectHandlingLibrary(project);
semanticMarkers = MarkerHandlingLibrary.transformMarkers(projectLibrary.getMarkers(Activator.TITAN_LSP_MARKER_TYPE));
semanticMarkers = MarkerHandlingLibrary.transformMarkers(projectLibrary.getMarkers(LSPDiagnosticsToMarkers.LS_DIAGNOSTIC_MARKER_TYPE));
syntacticMarkers = MarkerHandlingLibrary.transformMarkers(projectLibrary.getMarkers("syntax"));
}
......
......@@ -7,7 +7,11 @@
******************************************************************************/
package org.eclipse.titan.lsp.regressiontests.library;
import java.io.IOException;
import java.util.Collections;
import java.util.List;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutionException;
import java.util.logging.Logger;
import org.eclipse.core.resources.IMarker;
......@@ -15,12 +19,17 @@ import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.resources.WorkspaceJob;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.lsp4e.LanguageServerWrapper;
import org.eclipse.lsp4e.LanguageServers;
import org.eclipse.lsp4e.LanguageServers.LanguageServerDocumentExecutor;
import org.eclipse.lsp4e.LanguageServers.LanguageServerProjectExecutor;
import org.eclipse.lsp4e.LanguageServersRegistry;
import org.eclipse.lsp4e.LanguageServersRegistry.LanguageServerDefinition;
import org.eclipse.lsp4e.LanguageServiceAccessor;
import org.eclipse.lsp4j.DidChangeConfigurationParams;
import org.eclipse.lsp4j.DidChangeWorkspaceFoldersParams;
import org.eclipse.lsp4j.WorkspaceDiagnosticParams;
import org.eclipse.lsp4j.WorkspaceDiagnosticReport;
import org.eclipse.lsp4j.WorkspaceFolder;
import org.eclipse.lsp4j.WorkspaceFoldersChangeEvent;
import org.eclipse.titan.lspclient.Activator;
......@@ -87,8 +96,20 @@ public class ProjectHandlingLibrary {
} catch (InterruptedException e) {
e.printStackTrace(System.err);
}*/
LanguageServerProjectExecutor executor = LanguageServers.forProject(project);
executor.collectAll((w, ls) -> ls.getWorkspaceService().diagnostic(new WorkspaceDiagnosticParams()).thenRun(() -> {LOGGER.info("Diagnostics received from the LS");}));
LanguageServerDefinition def = LanguageServersRegistry.getInstance().getDefinition("org.eclipse.titan.lspclient.ttcn.server");
try {
LanguageServerWrapper wrapper = LanguageServiceAccessor.startLanguageServer(def);
wrapper.getInitializedServer().get();
boolean can = wrapper.canOperate(project);
} catch (IOException | ExecutionException | InterruptedException e) {
e.printStackTrace();
}
LanguageServerProjectExecutor executor = LanguageServers.forProject(project).withFilter(sc -> sc.getDiagnosticProvider() != null);
CompletableFuture<List<WorkspaceDiagnosticReport>> result = executor.collectAll((w, ls) -> ls.getWorkspaceService().diagnostic(new WorkspaceDiagnosticParams())/*.thenRun(() -> {LOGGER.info("Diagnostics received from the LS");})*/);
List<WorkspaceDiagnosticReport> diagnostics = result.join();
LOGGER.info("Project analyzed: " + project.getName());
}
......
......@@ -55,8 +55,7 @@
class="org.eclipse.titan.lspclient.TitanStreamConnectionProvider"
clientImpl="org.eclipse.titan.lspclient.TitanLanguageClient"
id="org.eclipse.titan.lspclient.ttcn.server"
label="Eclipse Titan"
makerType="org.eclipse.titan.lsp.diagnostic">
label="Eclipse Titan">
</server>
<contentTypeMapping
contentType="org.eclipse.titan.lspclient.ttcn"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment