当前位置: 首页>>代码示例>>Java>>正文


Java ServiceEndpoints类代码示例

本文整理汇总了Java中org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints的典型用法代码示例。如果您正苦于以下问题:Java ServiceEndpoints类的具体用法?Java ServiceEndpoints怎么用?Java ServiceEndpoints使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


ServiceEndpoints类属于org.eclipse.lsp4j.jsonrpc.services包,在下文中一共展示了ServiceEndpoints类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: setup

import org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints; //导入依赖的package包/类
@Before
public void setup() {
  try {
    final Injector injector = Guice.createInjector(this.getServerModule());
    injector.injectMembers(this);
    final Object resourceServiceProvider = this.resourceServerProviderRegistry.getExtensionToFactoryMap().get(this.fileExtension);
    if ((resourceServiceProvider instanceof IResourceServiceProvider)) {
      this.languageInfo = ((IResourceServiceProvider)resourceServiceProvider).<LanguageInfo>get(LanguageInfo.class);
    }
    this.languageServer.connect(ServiceEndpoints.<LanguageClientExtensions>toServiceObject(this, LanguageClientExtensions.class));
    this.languageServer.supportedMethods();
    File _absoluteFile = new File("").getAbsoluteFile();
    File _file = new File(_absoluteFile, "/test-data/test-project");
    this.root = _file;
    boolean _mkdirs = this.root.mkdirs();
    boolean _not = (!_mkdirs);
    if (_not) {
      Files.cleanFolder(this.root, null, true, false);
    }
    this.root.deleteOnExit();
  } catch (Throwable _e) {
    throw Exceptions.sneakyThrow(_e);
  }
}
 
开发者ID:eclipse,项目名称:xtext-core,代码行数:25,代码来源:AbstractLanguageServerTest.java

示例2: setup

import org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints; //导入依赖的package包/类
@Before public void setup() throws IOException {
	PipedInputStream inClient = new PipedInputStream();
	PipedOutputStream outClient = new PipedOutputStream();
	PipedInputStream inServer = new PipedInputStream();
	PipedOutputStream outServer = new PipedOutputStream();
	
	inClient.connect(outServer);
	outClient.connect(inServer);
	server = new AssertingEndpoint();
	serverLauncher = LSPLauncher.createServerLauncher(ServiceEndpoints.toServiceObject(server, LanguageServer.class), inServer, outServer);
	serverListening = serverLauncher.startListening();
	
	client = new AssertingEndpoint();
	clientLauncher = LSPLauncher.createClientLauncher(ServiceEndpoints.toServiceObject(client, LanguageClient.class), inClient, outClient);
	clientListening = clientLauncher.startListening();
}
 
开发者ID:eclipse,项目名称:lsp4j,代码行数:17,代码来源:LauncherTest.java

示例3: testNullResponse

import org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints; //导入依赖的package包/类
@Test public void testNullResponse() throws InterruptedException, ExecutionException {
	Endpoint endpoint = ServiceEndpoints.toEndpoint(this);
	Map<String, JsonRpcMethod> methods = ServiceEndpoints.getSupportedMethods(LanguageServer.class);
	MessageJsonHandler handler = new MessageJsonHandler(methods);
	List<Message> msgs = new ArrayList<>();
	MessageConsumer consumer = (message) -> {
		msgs.add(message);
	};
	RemoteEndpoint re = new RemoteEndpoint(consumer, endpoint);
	
	RequestMessage request = new RequestMessage();
	request.setId("1");
	request.setMethod("shutdown");
	re.consume(request);
	Assert.assertEquals("{\"jsonrpc\":\"2.0\",\"id\":\"1\",\"result\":null}", handler.serialize(msgs.get(0)));
	msgs.clear();
	shutdownReturn = new Object();
	re.consume(request);
	Assert.assertEquals("{\"jsonrpc\":\"2.0\",\"id\":\"1\",\"result\":{}}", handler.serialize(msgs.get(0)));
}
 
开发者ID:eclipse,项目名称:lsp4j,代码行数:21,代码来源:NullResponseTest.java

示例4: testRpcMethods_02

import org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints; //导入依赖的package包/类
@Test public void testRpcMethods_02() {
	Map<String, JsonRpcMethod> methods = ServiceEndpoints.getSupportedMethods(Bar.class);
	
	final JsonRpcMethod requestMethod = methods.get("bar/doStuff");
	assertEquals("bar/doStuff", requestMethod.getMethodName());
	assertEquals(2, requestMethod.getParameterTypes().length);
	assertEquals(String.class, requestMethod.getParameterTypes()[0]);
	assertEquals(Integer.class, requestMethod.getParameterTypes()[1]);
	assertFalse(requestMethod.isNotification());
	
	final JsonRpcMethod notificationMethod = methods.get("bar/myNotification");
	assertEquals("bar/myNotification", notificationMethod.getMethodName());
	assertEquals(2, notificationMethod.getParameterTypes().length);
	assertEquals(String.class, notificationMethod.getParameterTypes()[0]);
	assertEquals(Integer.class, notificationMethod.getParameterTypes()[1]);
	assertTrue(notificationMethod.isNotification());
	
	final JsonRpcMethod delegateMethod = methods.get("hubba");
	assertEquals("hubba", delegateMethod.getMethodName());
	assertEquals(2, delegateMethod.getParameterTypes().length);
	assertEquals(String.class, delegateMethod.getParameterTypes()[0]);
	assertEquals(Integer.class, delegateMethod.getParameterTypes()[1]);
	assertTrue(delegateMethod.isNotification());
}
 
开发者ID:eclipse,项目名称:lsp4j,代码行数:25,代码来源:EndpointsTest.java

示例5: onServerInitialized

import org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints; //导入依赖的package包/类
@Override
public void onServerInitialized(
    LanguageServerLauncher launcher,
    LanguageServer server,
    ServerCapabilities capabilities,
    String projectPath) {

  try {
    Map<String, String> preferences =
        requestFactory.fromUrl(apiUrl + "/preferences").useGetMethod().request().asProperties();

    Endpoint endpoint = ServiceEndpoints.toEndpoint(server);
    YamlSchemaAssociations serviceObject =
        ServiceEndpoints.toServiceObject(endpoint, YamlSchemaAssociations.class);
    Map<String, String[]> associations =
        jsonToSchemaAssociations(preferences.get("yaml.preferences"));
    serviceObject.yamlSchemaAssociation(associations);

  } catch (ApiException | IOException e) {
    LOG.error(e.getLocalizedMessage(), e);
  }
}
 
开发者ID:eclipse,项目名称:che,代码行数:23,代码来源:YamlLanguageServerLauncher.java

示例6: putSchemas

import org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints; //导入依赖的package包/类
/**
 * Route for getting getting schemas from client side and injecting them into yaml language server
 *
 * @param yamlDto A yamlDTO containing the list of schemas you would like to add
 */
@POST
@Path("schemas")
@Consumes(MediaType.APPLICATION_JSON)
public void putSchemas(YamlDTO yamlDto) throws ApiException {

  LanguageServer yamlLS = YamlLanguageServerLauncher.getYamlLanguageServer();

  if (yamlDto != null && yamlLS != null) {

    Endpoint endpoint = ServiceEndpoints.toEndpoint(yamlLS);
    YamlSchemaAssociations serviceObject =
        ServiceEndpoints.toServiceObject(endpoint, YamlSchemaAssociations.class);

    Map<String, String[]> schemaAssociations = new HashMap<>();
    Map<String, String> yamlDtoSchemas = yamlDto.getSchemas();

    for (Map.Entry<String, String> schema : yamlDtoSchemas.entrySet()) {
      schemaAssociations.put(
          schema.getKey(), new Gson().fromJson(schema.getValue(), String[].class));
    }

    serviceObject.yamlSchemaAssociation(schemaAssociations);
  }
}
 
开发者ID:eclipse,项目名称:che,代码行数:30,代码来源:YamlService.java

示例7: onServerInitialized

import org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints; //导入依赖的package包/类
@Override
public void onServerInitialized(
    LanguageServerLauncher launcher,
    LanguageServer server,
    ServerCapabilities capabilities,
    String projectPath) {
  Endpoint endpoint = ServiceEndpoints.toEndpoint(server);
  JsonExtension serviceObject = ServiceEndpoints.toServiceObject(endpoint, JsonExtension.class);
  Map<String, String[]> associations = new HashMap<>();
  associations.put("/*.schema.json", new String[] {"http://json-schema.org/draft-04/schema#"});
  associations.put("/bower.json", new String[] {"http://json.schemastore.org/bower"});
  associations.put("/.bower.json", new String[] {"http://json.schemastore.org/bower"});
  associations.put("/.bowerrc", new String[] {"http://json.schemastore.org/bowerrc"});
  associations.put("/composer.json", new String[] {"https://getcomposer.org/schema.json"});
  associations.put("/package.json", new String[] {"http://json.schemastore.org/package"});
  associations.put("/jsconfig.json", new String[] {"http://json.schemastore.org/jsconfig"});
  associations.put("/tsconfig.json", new String[] {"http://json.schemastore.org/tsconfig"});
  serviceObject.jsonSchemaAssociation(associations);
}
 
开发者ID:eclipse,项目名称:che,代码行数:20,代码来源:JsonLanguageServerLauncher.java

示例8: createIoLauncher

import org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints; //导入依赖的package包/类
/**
 * Create a new Launcher for a given local service object, a given remote interface and an input and output stream.
 * Threads are started with the given executor service. The wrapper function is applied to the incoming and
 * outgoing message streams so additional message handling such as validation and tracing can be included.
 * The {@code configureGson} function can be used to register additional type adapters in the {@link GsonBuilder}
 * in order to support protocol classes that cannot be handled by Gson's reflective capabilities.
 * 
 * @param localService - an object on which classes RPC methods are looked up
 * @param remoteInterface - an interface on which RPC methods are looked up
 * @param in - inputstream to listen for incoming messages
 * @param out - outputstream to send outgoing messages
 * @param executorService - the executor service used to start threads
 * @param wrapper - a function for plugging in additional message consumers
 * @param configureGson - a function for Gson configuration
 */
static <T> DebugLauncher<T> createIoLauncher(Object localService, Class<T> remoteInterface, InputStream in, OutputStream out,
		ExecutorService executorService, Function<MessageConsumer, MessageConsumer> wrapper, Consumer<GsonBuilder> configureGson) {
	Map<String, JsonRpcMethod> supportedMethods = new LinkedHashMap<String, JsonRpcMethod>();
	supportedMethods.putAll(ServiceEndpoints.getSupportedMethods(remoteInterface));
	
	if (localService instanceof JsonRpcMethodProvider) {
		JsonRpcMethodProvider rpcMethodProvider = (JsonRpcMethodProvider) localService;
		supportedMethods.putAll(rpcMethodProvider.supportedMethods());
	} else {
		supportedMethods.putAll(ServiceEndpoints.getSupportedMethods(localService.getClass()));
	}
	
	MessageJsonHandler jsonHandler = new DebugMessageJsonHandler(supportedMethods, configureGson);
	MessageConsumer outGoingMessageStream = new StreamMessageConsumer(out, jsonHandler);
	outGoingMessageStream = wrapper.apply(outGoingMessageStream);
	RemoteEndpoint serverEndpoint = new RemoteEndpoint(outGoingMessageStream, ServiceEndpoints.toEndpoint(localService));
	jsonHandler.setMethodProvider(serverEndpoint);
	// wrap incoming message stream
	MessageConsumer messageConsumer = wrapper.apply(serverEndpoint);
	StreamMessageProducer reader = new StreamMessageProducer(in, jsonHandler);
	
	T remoteProxy = ServiceEndpoints.toServiceObject(serverEndpoint, remoteInterface);
	
	return new DebugLauncher<T> () {

		@Override
		public Future<?> startListening() {
			return ConcurrentMessageProcessor.startProcessing(reader, messageConsumer, executorService);
		}

		@Override
		public T getRemoteProxy() {
			return remoteProxy;
		}
		
	};
}
 
开发者ID:tracymiranda,项目名称:dsp4e,代码行数:53,代码来源:DebugLauncher.java

示例9: createIoLauncher

import org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints; //导入依赖的package包/类
/**
 * Create a new Launcher for a given local service object, a given remote interface and an input and output stream.
 * Threads are started with the given executor service. The wrapper function is applied to the incoming and
 * outgoing message streams so additional message handling such as validation and tracing can be included.
 * The {@code configureGson} function can be used to register additional type adapters in the {@link GsonBuilder}
 * in order to support protocol classes that cannot be handled by Gson's reflective capabilities.
 * 
 * @param localService - an object on which classes RPC methods are looked up
 * @param remoteInterface - an interface on which RPC methods are looked up
 * @param in - inputstream to listen for incoming messages
 * @param out - outputstream to send outgoing messages
 * @param executorService - the executor service used to start threads
 * @param wrapper - a function for plugging in additional message consumers
 * @param configureGson - a function for Gson configuration
 */
static <T> Launcher<T> createIoLauncher(Object localService, Class<T> remoteInterface, InputStream in, OutputStream out,
		ExecutorService executorService, Function<MessageConsumer, MessageConsumer> wrapper, Consumer<GsonBuilder> configureGson) {
	Map<String, JsonRpcMethod> supportedMethods = new LinkedHashMap<String, JsonRpcMethod>();
	supportedMethods.putAll(ServiceEndpoints.getSupportedMethods(remoteInterface));
	
	if (localService instanceof JsonRpcMethodProvider) {
		JsonRpcMethodProvider rpcMethodProvider = (JsonRpcMethodProvider) localService;
		supportedMethods.putAll(rpcMethodProvider.supportedMethods());
	} else {
		supportedMethods.putAll(ServiceEndpoints.getSupportedMethods(localService.getClass()));
	}
	
	MessageJsonHandler jsonHandler = new MessageJsonHandler(supportedMethods, configureGson);
	MessageConsumer outGoingMessageStream = new StreamMessageConsumer(out, jsonHandler);
	outGoingMessageStream = wrapper.apply(outGoingMessageStream);
	RemoteEndpoint serverEndpoint = new RemoteEndpoint(outGoingMessageStream, ServiceEndpoints.toEndpoint(localService));
	jsonHandler.setMethodProvider(serverEndpoint);
	// wrap incoming message stream
	MessageConsumer messageConsumer = wrapper.apply(serverEndpoint);
	StreamMessageProducer reader = new StreamMessageProducer(in, jsonHandler);
	
	T remoteProxy = ServiceEndpoints.toServiceObject(serverEndpoint, remoteInterface);
	
	return new Launcher<T> () {

		@Override
		public Future<?> startListening() {
			return ConcurrentMessageProcessor.startProcessing(reader, messageConsumer, executorService);
		}

		@Override
		public T getRemoteProxy() {
			return remoteProxy;
		}
		
	};
}
 
开发者ID:smarr,项目名称:SOMns-vscode,代码行数:53,代码来源:Launcher.java

示例10: initialize

import org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints; //导入依赖的package包/类
@Override
public void initialize(final ILanguageServerAccess access) {
  this.access = access;
  this.access.addBuildListener(this);
  LanguageClient _languageClient = access.getLanguageClient();
  this.client = ServiceEndpoints.<TestLangLSPExtension.CustomClient>toServiceObject(((Endpoint) _languageClient), TestLangLSPExtension.CustomClient.class);
}
 
开发者ID:eclipse,项目名称:xtext-core,代码行数:8,代码来源:TestLangLSPExtension.java

示例11: supportedMethods

import org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints; //导入依赖的package包/类
@Override
public Map<String, JsonRpcMethod> supportedMethods() {
  final HashMap<String, JsonRpcMethod> result = CollectionLiterals.<String, JsonRpcMethod>newHashMap();
  result.putAll(ServiceEndpoints.getSupportedMethods(this.getClass()));
  result.putAll(ServiceEndpoints.getSupportedMethods(TestLangLSPExtension.CustomClient.class));
  return result;
}
 
开发者ID:eclipse,项目名称:xtext-core,代码行数:8,代码来源:TestLangLSPExtension.java

示例12: setup

import org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints; //导入依赖的package包/类
@Before
public void setup() {
  final Map<String, JsonRpcMethod> methods = ServiceEndpoints.getSupportedMethods(LanguageServer.class);
  this.jsonHandler = new MessageJsonHandler(methods) {
    @Override
    public GsonBuilder getDefaultGsonBuilder() {
      return super.getDefaultGsonBuilder().setPrettyPrinting();
    }
  };
}
 
开发者ID:eclipse,项目名称:lsp4j,代码行数:11,代码来源:JsonSerializeTest.java

示例13: setup

import org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints; //导入依赖的package包/类
@Before
public void setup() {
  final Map<String, JsonRpcMethod> methods = ServiceEndpoints.getSupportedMethods(LanguageServer.class);
  final Map<String, JsonRpcMethod> clientMethods = ServiceEndpoints.getSupportedMethods(LanguageClient.class);
  final HashMap<String, JsonRpcMethod> all = new HashMap<String, JsonRpcMethod>();
  all.putAll(methods);
  all.putAll(clientMethods);
  MessageJsonHandler _messageJsonHandler = new MessageJsonHandler(all);
  this.jsonHandler = _messageJsonHandler;
}
 
开发者ID:eclipse,项目名称:lsp4j,代码行数:11,代码来源:JsonParseTest.java

示例14: createIoLauncher

import org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints; //导入依赖的package包/类
/**
 * Create a new Launcher for a given local service object, a given remote
 * interface and an input and output stream. Threads are started with the given
 * executor service. The wrapper function is applied to the incoming and
 * outgoing message streams so additional message handling such as validation
 * and tracing can be included. The {@code configureGson} function can be used
 * to register additional type adapters in the {@link GsonBuilder} in order to
 * support protocol classes that cannot be handled by Gson's reflective
 * capabilities.
 *
 * @param localService
 *            - an object on which classes RPC methods are looked up
 * @param remoteInterface
 *            - an interface on which RPC methods are looked up
 * @param in
 *            - inputstream to listen for incoming messages
 * @param out
 *            - outputstream to send outgoing messages
 * @param executorService
 *            - the executor service used to start threads
 * @param wrapper
 *            - a function for plugging in additional message consumers
 * @param configureGson
 *            - a function for Gson configuration
 */
static <T> DebugLauncher<T> createIoLauncher(Object localService, Class<T> remoteInterface, InputStream in,
		OutputStream out, ExecutorService executorService, Function<MessageConsumer, MessageConsumer> wrapper,
		Consumer<GsonBuilder> configureGson) {
	Map<String, JsonRpcMethod> supportedMethods = new LinkedHashMap<String, JsonRpcMethod>();
	supportedMethods.putAll(ServiceEndpoints.getSupportedMethods(remoteInterface));

	if (localService instanceof JsonRpcMethodProvider) {
		JsonRpcMethodProvider rpcMethodProvider = (JsonRpcMethodProvider) localService;
		supportedMethods.putAll(rpcMethodProvider.supportedMethods());
	} else {
		supportedMethods.putAll(ServiceEndpoints.getSupportedMethods(localService.getClass()));
	}

	MessageJsonHandler jsonHandler = new DebugMessageJsonHandler(supportedMethods, configureGson);
	MessageConsumer outGoingMessageStream = new StreamMessageConsumer(out, jsonHandler);
	outGoingMessageStream = wrapper.apply(outGoingMessageStream);
	RemoteEndpoint serverEndpoint = new DebugRemoteEndpoint(outGoingMessageStream,
			ServiceEndpoints.toEndpoint(localService));
	jsonHandler.setMethodProvider(serverEndpoint);
	// wrap incoming message stream
	MessageConsumer messageConsumer = wrapper.apply(serverEndpoint);
	StreamMessageProducer reader = new StreamMessageProducer(in, jsonHandler);

	T remoteProxy = ServiceEndpoints.toServiceObject(serverEndpoint, remoteInterface);

	return new DebugLauncher<T>() {

		@Override
		public Future<?> startListening() {
			return ConcurrentMessageProcessor.startProcessing(reader, messageConsumer, executorService);
		}

		@Override
		public T getRemoteProxy() {
			return remoteProxy;
		}

	};
}
 
开发者ID:eclipse,项目名称:lsp4j,代码行数:65,代码来源:DebugLauncher.java

示例15: testRpcMethods_01

import org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints; //导入依赖的package包/类
@Test public void testRpcMethods_01() {
	Map<String, JsonRpcMethod> methods = ServiceEndpoints.getSupportedMethods(Foo.class);
	
	assertEquals("foo/doStuff", methods.get("foo/doStuff").getMethodName());
	assertEquals(String.class, methods.get("foo/doStuff").getParameterTypes()[0]);
	assertFalse(methods.get("foo/doStuff").isNotification());
	
	assertEquals("foo/myNotification", methods.get("foo/myNotification").getMethodName());
	assertEquals(String.class, methods.get("foo/myNotification").getParameterTypes()[0]);
	assertTrue(methods.get("foo/myNotification").isNotification());
	
	assertEquals("hubba", methods.get("hubba").getMethodName());
	assertEquals(String.class, methods.get("hubba").getParameterTypes()[0]);
	assertTrue(methods.get("hubba").isNotification());
}
 
开发者ID:eclipse,项目名称:lsp4j,代码行数:16,代码来源:EndpointsTest.java


注:本文中的org.eclipse.lsp4j.jsonrpc.services.ServiceEndpoints类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。