當前位置: 首頁>>代碼示例>>Java>>正文


Java NotificationMessage類代碼示例

本文整理匯總了Java中org.eclipse.lsp4j.jsonrpc.messages.NotificationMessage的典型用法代碼示例。如果您正苦於以下問題:Java NotificationMessage類的具體用法?Java NotificationMessage怎麽用?Java NotificationMessage使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


NotificationMessage類屬於org.eclipse.lsp4j.jsonrpc.messages包,在下文中一共展示了NotificationMessage類的13個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: handleCancellation

import org.eclipse.lsp4j.jsonrpc.messages.NotificationMessage; //導入依賴的package包/類
protected boolean handleCancellation(NotificationMessage notificationMessage) {
	if (MessageJsonHandler.CANCEL_METHOD.getMethodName().equals(notificationMessage.getMethod())) {
		Object cancelParams = notificationMessage.getParams();
		if (cancelParams != null) {
			if (cancelParams instanceof CancelParams) {
				synchronized (receivedRequestMap) {
					String id = ((CancelParams) cancelParams).getId();
					CompletableFuture<?> future = receivedRequestMap.get(id);
					if (future != null)
						future.cancel(true);
					else
						LOG.warning("Unmatched cancel notification for request id " + id);
				}
				return true;
			} else {
				LOG.warning("Cancellation support disabled, since the '" + MessageJsonHandler.CANCEL_METHOD.getMethodName() + "' method has been registered explicitly.");
				return false;
			}
		} else {
			LOG.warning("Missing 'params' attribute of cancel notification.");
		}
	}
	return false;
}
 
開發者ID:smarr,項目名稱:SOMns-vscode,代碼行數:25,代碼來源:RemoteEndpoint.java

示例2: testNotification_AllOrders

import org.eclipse.lsp4j.jsonrpc.messages.NotificationMessage; //導入依賴的package包/類
@Test
public void testNotification_AllOrders() {
	Map<String, JsonRpcMethod> supportedMethods = new LinkedHashMap<>();
	supportedMethods.put("foo", JsonRpcMethod.request("foo",
			new TypeToken<Void>() {}.getType(),
			new TypeToken<Location>() {
			}.getType()));
	DebugMessageJsonHandler handler = new DebugMessageJsonHandler(supportedMethods);
	handler.setMethodProvider((id) -> "foo");
	String[] properties = new String[] {
			"\"seq\":2",
			"\"type\":\"event\"",
			"\"event\":\"foo\"",
			"\"body\": {\"uri\": \"dummy://mymodel.mydsl\"}"
			};
	testAllPermutations(properties, json -> {
		NotificationMessage message = (NotificationMessage) handler.parseMessage(json);
		Object params = message.getParams();
		Class<? extends Object> class1 = params.getClass();
		Assert.assertEquals(Location.class, class1);
		Assert.assertEquals("dummy://mymodel.mydsl", ((Location)params).uri);
	});
}
 
開發者ID:eclipse,項目名稱:lsp4j,代碼行數:24,代碼來源:DebugMessageJsonHandlerTest.java

示例3: testNotification_AllOrders

import org.eclipse.lsp4j.jsonrpc.messages.NotificationMessage; //導入依賴的package包/類
@Test
public void testNotification_AllOrders() {
	Map<String, JsonRpcMethod> supportedMethods = new LinkedHashMap<>();
	supportedMethods.put("foo", JsonRpcMethod.request("foo",
			new TypeToken<Void>() {}.getType(),
			new TypeToken<Location>() {
			}.getType()));
	MessageJsonHandler handler = new MessageJsonHandler(supportedMethods);
	handler.setMethodProvider((id) -> "foo");
	String[] properties = new String[] {
			"\"jsonrpc\":\"2.0\"",
			"\"method\":\"foo\"",
			"\"params\": {\"uri\": \"dummy://mymodel.mydsl\"}"
			};
	testAllPermutations(properties, json -> {
		NotificationMessage message = (NotificationMessage) handler.parseMessage(json);
		Object params = message.getParams();
		Class<? extends Object> class1 = params.getClass();
		Assert.assertEquals(Location.class, class1);
		Assert.assertEquals("dummy://mymodel.mydsl", ((Location)params).uri);
	});
}
 
開發者ID:eclipse,項目名稱:lsp4j,代碼行數:23,代碼來源:MessageJsonHandlerTest.java

示例4: testNotification

import org.eclipse.lsp4j.jsonrpc.messages.NotificationMessage; //導入依賴的package包/類
@Test public void testNotification() {
	TestEndpoint endp = new TestEndpoint();
	TestMessageConsumer consumer = new TestMessageConsumer();
	RemoteEndpoint endpoint = new RemoteEndpoint(consumer, endp);
	
	endpoint.consume(new NotificationMessage() {{
		setMethod("foo");
		setParams("myparam");
	}});
	
	NotificationMessage notificationMessage = endp.notifications.get(0);
	assertEquals("foo", notificationMessage.getMethod());
	assertEquals("myparam", notificationMessage.getParams());
	assertTrue(consumer.messages.isEmpty());
}
 
開發者ID:tracymiranda,項目名稱:dsp4e,代碼行數:16,代碼來源:DebugRemoteEndpointTest.java

示例5: notify

import org.eclipse.lsp4j.jsonrpc.messages.NotificationMessage; //導入依賴的package包/類
@Override
public void notify(String method, Object parameter) {
	NotificationMessage notificationMessage = new NotificationMessage();
	notificationMessage.setJsonrpc(MessageConstants.JSONRPC_VERSION);
	notificationMessage.setMethod(method);
	notificationMessage.setParams(parameter);
	out.consume(notificationMessage);
}
 
開發者ID:smarr,項目名稱:SOMns-vscode,代碼行數:9,代碼來源:RemoteEndpoint.java

示例6: consume

import org.eclipse.lsp4j.jsonrpc.messages.NotificationMessage; //導入依賴的package包/類
@Override
public void consume(Message message) {
	if (message instanceof NotificationMessage) {
		NotificationMessage notificationMessage = (NotificationMessage) message;
		handleNotification(notificationMessage);
	} else if (message instanceof RequestMessage) {
		RequestMessage requestMessage = (RequestMessage) message;
		handleRequest(requestMessage);
	} else if (message instanceof ResponseMessage) {
		ResponseMessage responseMessage = (ResponseMessage) message;
		handleResponse(responseMessage);
	}
}
 
開發者ID:smarr,項目名稱:SOMns-vscode,代碼行數:14,代碼來源:RemoteEndpoint.java

示例7: handleNotification

import org.eclipse.lsp4j.jsonrpc.messages.NotificationMessage; //導入依賴的package包/類
protected void handleNotification(NotificationMessage notificationMessage) {
	if (!handleCancellation(notificationMessage)) {
		try {
			localEndpoint.notify(notificationMessage.getMethod(), notificationMessage.getParams());
		} catch (RuntimeException e) {
			LOG.log(Level.WARNING, "Notification threw an exception: " + notificationMessage, e);
		}
	}
}
 
開發者ID:smarr,項目名稱:SOMns-vscode,代碼行數:10,代碼來源:RemoteEndpoint.java

示例8: testTelemetry

import org.eclipse.lsp4j.jsonrpc.messages.NotificationMessage; //導入依賴的package包/類
@Test
public void testTelemetry() {
  NotificationMessage _notificationMessage = new NotificationMessage();
  final Procedure1<NotificationMessage> _function = (NotificationMessage it) -> {
    it.setJsonrpc("2.0");
    it.setMethod(MessageMethods.TELEMETRY_EVENT);
    JsonSerializeTest.TestObject _testObject = new JsonSerializeTest.TestObject();
    it.setParams(_testObject);
  };
  final NotificationMessage message = ObjectExtensions.<NotificationMessage>operator_doubleArrow(_notificationMessage, _function);
  StringConcatenation _builder = new StringConcatenation();
  _builder.append("{");
  _builder.newLine();
  _builder.append("  ");
  _builder.append("\"jsonrpc\": \"2.0\",");
  _builder.newLine();
  _builder.append("  ");
  _builder.append("\"method\": \"telemetry/event\",");
  _builder.newLine();
  _builder.append("  ");
  _builder.append("\"params\": {");
  _builder.newLine();
  _builder.append("    ");
  _builder.append("\"foo\": 12.3,");
  _builder.newLine();
  _builder.append("    ");
  _builder.append("\"bar\": \"qwertz\"");
  _builder.newLine();
  _builder.append("  ");
  _builder.append("}");
  _builder.newLine();
  _builder.append("}");
  _builder.newLine();
  this.assertSerialize(message, _builder);
}
 
開發者ID:eclipse,項目名稱:lsp4j,代碼行數:36,代碼來源:JsonSerializeTest.java

示例9: testTelemetry

import org.eclipse.lsp4j.jsonrpc.messages.NotificationMessage; //導入依賴的package包/類
@Test
public void testTelemetry() {
  StringConcatenation _builder = new StringConcatenation();
  _builder.append("{");
  _builder.newLine();
  _builder.append("\t");
  _builder.append("\"jsonrpc\": \"2.0\",");
  _builder.newLine();
  _builder.append("\t");
  _builder.append("\"method\": \"telemetry/event\",");
  _builder.newLine();
  _builder.append("\t");
  _builder.append("\"params\": {");
  _builder.newLine();
  _builder.append("\t\t");
  _builder.append("\"foo\": 12.3,");
  _builder.newLine();
  _builder.append("\t\t");
  _builder.append("\"bar\": \"qwertz\"");
  _builder.newLine();
  _builder.append("\t");
  _builder.append("}");
  _builder.newLine();
  _builder.append("}");
  _builder.newLine();
  NotificationMessage _notificationMessage = new NotificationMessage();
  final Procedure1<NotificationMessage> _function = (NotificationMessage it) -> {
    it.setJsonrpc("2.0");
    it.setMethod(MessageMethods.TELEMETRY_EVENT);
    Pair<String, Double> _mappedTo = Pair.<String, Double>of("foo", Double.valueOf(12.3));
    Pair<String, String> _mappedTo_1 = Pair.<String, String>of("bar", "qwertz");
    it.setParams(CollectionLiterals.<String, Object>newLinkedHashMap(_mappedTo, _mappedTo_1));
  };
  NotificationMessage _doubleArrow = ObjectExtensions.<NotificationMessage>operator_doubleArrow(_notificationMessage, _function);
  this.assertParse(_builder, _doubleArrow);
}
 
開發者ID:eclipse,項目名稱:lsp4j,代碼行數:37,代碼來源:JsonParseTest.java

示例10: testNotification

import org.eclipse.lsp4j.jsonrpc.messages.NotificationMessage; //導入依賴的package包/類
@Test public void testNotification() {
	TestEndpoint endp = new TestEndpoint();
	TestMessageConsumer consumer = new TestMessageConsumer();
	RemoteEndpoint endpoint = new DebugRemoteEndpoint(consumer, endp);

	endpoint.consume(new NotificationMessage() {{
		setMethod("foo");
		setParams("myparam");
	}});

	NotificationMessage notificationMessage = endp.notifications.get(0);
	assertEquals("foo", notificationMessage.getMethod());
	assertEquals("myparam", notificationMessage.getParams());
	assertTrue(consumer.messages.isEmpty());
}
 
開發者ID:eclipse,項目名稱:lsp4j,代碼行數:16,代碼來源:DebugRemoteEndpointTest.java

示例11: createNotificationMessage

import org.eclipse.lsp4j.jsonrpc.messages.NotificationMessage; //導入依賴的package包/類
protected NotificationMessage createNotificationMessage(String method, Object parameter) {
	NotificationMessage notificationMessage = new NotificationMessage();
	notificationMessage.setJsonrpc(MessageConstants.JSONRPC_VERSION);
	notificationMessage.setMethod(method);
	notificationMessage.setParams(parameter);
	return notificationMessage;
}
 
開發者ID:eclipse,項目名稱:lsp4j,代碼行數:8,代碼來源:RemoteEndpoint.java

示例12: notify

import org.eclipse.lsp4j.jsonrpc.messages.NotificationMessage; //導入依賴的package包/類
public void notify(String method, Object parameter) {
	notifications.add(new NotificationMessage() {{
		setMethod(method);
		setParams(parameter);
	}});
}
 
開發者ID:tracymiranda,項目名稱:dsp4e,代碼行數:7,代碼來源:DebugRemoteEndpointTest.java

示例13: notify

import org.eclipse.lsp4j.jsonrpc.messages.NotificationMessage; //導入依賴的package包/類
@Override
public void notify(String method, Object parameter) {
	NotificationMessage notificationMessage = createNotificationMessage(method, parameter);
	out.consume(notificationMessage);
}
 
開發者ID:eclipse,項目名稱:lsp4j,代碼行數:6,代碼來源:RemoteEndpoint.java


注:本文中的org.eclipse.lsp4j.jsonrpc.messages.NotificationMessage類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。