Java 类org.eclipse.lsp4j.jsonrpc.messages.ResponseErrorCode 实例源码
项目:dsp4e
文件:DebugRemoteEndpointTest.java
@Test public void testCancellation() {
TestEndpoint endp = new TestEndpoint();
TestMessageConsumer consumer = new TestMessageConsumer();
RemoteEndpoint endpoint = new RemoteEndpoint(consumer, endp);
endpoint.consume(new RequestMessage() {{
setId("1");
setMethod("foo");
setParams("myparam");
}});
Entry<RequestMessage, CompletableFuture<Object>> entry = endp.requests.entrySet().iterator().next();
entry.getValue().cancel(true);
ResponseMessage message = (ResponseMessage) consumer.messages.get(0);
assertNotNull(message);
ResponseError error = message.getError();
assertNotNull(error);
assertEquals(error.getCode(), ResponseErrorCode.RequestCancelled.getValue());
assertEquals(error.getMessage(), "The request (id: 1, method: 'foo') has been cancelled");
}
项目:SOMns-vscode
文件:ReflectiveMessageValidator.java
@Override
public void consume(Message message) {
List<String> result = new ArrayList<>();
try {
validate(message, result, new LinkedList<>());
} catch (Throwable e) {
LOG.log(Level.SEVERE, "Error during message validation: " + e.getMessage(), e);
result.add("The message validation failed, please look at the server's logs.");
}
if (!result.isEmpty()) {
ResponseError error = new ResponseError(ResponseErrorCode.InvalidParams,
result.stream().collect(Collectors.joining(", ")), message);
throw new InvalidMessageException(error.getMessage(), error, null);
} else if (delegate != null) {
delegate.consume(message);
}
}
项目:SOMns-vscode
文件:GenericEndpoint.java
@Override
public CompletableFuture<?> request(String method, Object parameter) {
Function<Object, CompletableFuture<Object>> handler = methodHandlers.get(method);
if (handler != null) {
return handler.apply(parameter);
}
if (delegate instanceof Endpoint) {
return ((Endpoint) delegate).request(method, parameter);
}
String message = "Unsupported request method: " + method;
if (isOptionalMethod(method)) {
LOG.log(Level.INFO, message);
return CompletableFuture.completedFuture(null);
}
LOG.log(Level.WARNING, message);
CompletableFuture<?> exceptionalResult = new CompletableFuture<Object>();
ResponseError error = new ResponseError(ResponseErrorCode.MethodNotFound, message, null);
exceptionalResult.completeExceptionally(new ResponseErrorException(error));
return exceptionalResult;
}
项目:lsp4j
文件:DebugRemoteEndpointTest.java
@Test public void testCancellation() {
TestEndpoint endp = new TestEndpoint();
TestMessageConsumer consumer = new TestMessageConsumer();
RemoteEndpoint endpoint = new DebugRemoteEndpoint(consumer, endp);
endpoint.consume(new RequestMessage() {{
setId("1");
setMethod("foo");
setParams("myparam");
}});
Entry<RequestMessage, CompletableFuture<Object>> entry = endp.requests.entrySet().iterator().next();
entry.getValue().cancel(true);
ResponseMessage message = (ResponseMessage) consumer.messages.get(0);
assertNotNull(message);
ResponseError error = message.getError();
assertNotNull(error);
assertEquals(error.getCode(), ResponseErrorCode.RequestCancelled.getValue());
assertEquals(error.getMessage(), "The request (id: 1, method: 'foo') has been cancelled");
}
项目:lsp4j
文件:ReflectiveMessageValidator.java
@Override
public void consume(Message message) {
List<String> result = new ArrayList<>();
try {
validate(message, result, new LinkedList<>());
} catch (Throwable e) {
LOG.log(Level.SEVERE, "Error during message validation: " + e.getMessage(), e);
result.add("The message validation failed, please look at the server's logs.");
}
if (!result.isEmpty()) {
ResponseError error = new ResponseError(ResponseErrorCode.InvalidParams,
result.stream().collect(Collectors.joining(", ")), message);
throw new InvalidMessageException(error.getMessage(), error, null);
} else if (delegate != null) {
delegate.consume(message);
}
}
项目:lsp4j
文件:GenericEndpoint.java
@Override
public CompletableFuture<?> request(String method, Object parameter) {
Function<Object, CompletableFuture<Object>> handler = methodHandlers.get(method);
if (handler != null) {
return handler.apply(parameter);
}
if (delegate instanceof Endpoint) {
return ((Endpoint) delegate).request(method, parameter);
}
String message = "Unsupported request method: " + method;
if (isOptionalMethod(method)) {
LOG.log(Level.INFO, message);
return CompletableFuture.completedFuture(null);
}
LOG.log(Level.WARNING, message);
CompletableFuture<?> exceptionalResult = new CompletableFuture<Object>();
ResponseError error = new ResponseError(ResponseErrorCode.MethodNotFound, message, null);
exceptionalResult.completeExceptionally(new ResponseErrorException(error));
return exceptionalResult;
}
项目:lsp4j
文件:RemoteEndpointTest.java
@Test public void testCancellation() {
TestEndpoint endp = new TestEndpoint();
TestMessageConsumer consumer = new TestMessageConsumer();
RemoteEndpoint endpoint = new RemoteEndpoint(consumer, endp);
endpoint.consume(new RequestMessage() {{
setId("1");
setMethod("foo");
setParams("myparam");
}});
Entry<RequestMessage, CompletableFuture<Object>> entry = endp.requests.entrySet().iterator().next();
entry.getValue().cancel(true);
ResponseMessage message = (ResponseMessage) consumer.messages.get(0);
assertNotNull(message);
ResponseError error = message.getError();
assertNotNull(error);
assertEquals(error.getCode(), ResponseErrorCode.RequestCancelled.getValue());
assertEquals(error.getMessage(), "The request (id: 1, method: 'foo') has been cancelled");
}
项目:xtext-core
文件:WorkspaceManager.java
protected IWorkspaceConfig getWorkspaceConfig() {
if ((this._workspaceConfig == null)) {
final ResponseError error = new ResponseError(ResponseErrorCode.serverNotInitialized,
"Workspace has not been initialized yet.", null);
throw new ResponseErrorException(error);
}
return this._workspaceConfig;
}
项目:lsp4j
文件:JsonSerializeTest.java
@Test
public void testResponseError() {
ResponseMessage _responseMessage = new ResponseMessage();
final Procedure1<ResponseMessage> _function = (ResponseMessage it) -> {
it.setJsonrpc("2.0");
it.setId("12");
ResponseError _responseError = new ResponseError();
final Procedure1<ResponseError> _function_1 = (ResponseError it_1) -> {
it_1.setCode(ResponseErrorCode.InvalidRequest);
it_1.setMessage("Could not parse request.");
};
ResponseError _doubleArrow = ObjectExtensions.<ResponseError>operator_doubleArrow(_responseError, _function_1);
it.setError(_doubleArrow);
};
final ResponseMessage message = ObjectExtensions.<ResponseMessage>operator_doubleArrow(_responseMessage, _function);
StringConcatenation _builder = new StringConcatenation();
_builder.append("{");
_builder.newLine();
_builder.append(" ");
_builder.append("\"jsonrpc\": \"2.0\",");
_builder.newLine();
_builder.append(" ");
_builder.append("\"id\": \"12\",");
_builder.newLine();
_builder.append(" ");
_builder.append("\"error\": {");
_builder.newLine();
_builder.append(" ");
_builder.append("\"code\": -32600,");
_builder.newLine();
_builder.append(" ");
_builder.append("\"message\": \"Could not parse request.\"");
_builder.newLine();
_builder.append(" ");
_builder.append("}");
_builder.newLine();
_builder.append("}");
_builder.newLine();
this.assertSerialize(message, _builder);
}
项目:lsp4j
文件:RemoteEndpoint.java
private static ResponseError fallbackResponseError(String header, Throwable throwable) {
LOG.log(Level.SEVERE, header + ": " + throwable.getMessage(), throwable);
ResponseError error = new ResponseError();
error.setMessage(header + ".");
error.setCode(ResponseErrorCode.InternalError);
ByteArrayOutputStream stackTrace = new ByteArrayOutputStream();
PrintWriter stackTraceWriter = new PrintWriter(stackTrace);
throwable.printStackTrace(stackTraceWriter);
stackTraceWriter.flush();
error.setData(stackTrace.toString());
return error;
}
项目:lsp4j
文件:RemoteEndpointTest.java
@Test public void testException() {
LogMessageAccumulator logMessages = new LogMessageAccumulator();
try {
// Don't show the exception in the test execution log
logMessages.registerTo(RemoteEndpoint.class);
TestEndpoint endp = new TestEndpoint() {
@Override
public CompletableFuture<Object> request(String method, Object parameter) {
throw new RuntimeException("BAAZ");
}
};
TestMessageConsumer consumer = new TestMessageConsumer();
RemoteEndpoint endpoint = new RemoteEndpoint(consumer, endp);
endpoint.consume(new RequestMessage() {{
setId("1");
setMethod("foo");
setParams("myparam");
}});
ResponseMessage response = (ResponseMessage) consumer.messages.get(0);
assertEquals("Internal error.", response.getError().getMessage());
assertEquals(ResponseErrorCode.InternalError.getValue(), response.getError().getCode());
String exception = (String) response.getError().getData();
String expected = "java.lang.RuntimeException: BAAZ\n\tat org.eclipse.lsp4j.jsonrpc.test.RemoteEndpointTest";
assertEquals(expected, exception.substring(0, expected.length()));
} finally {
logMessages.unregister();
}
}
项目:lsp4j
文件:RemoteEndpointTest.java
@Test public void testExceptionHandlerMisbehaving01() {
LogMessageAccumulator logMessages = new LogMessageAccumulator();
try {
// Don't show the exception in the test execution log
logMessages.registerTo(RemoteEndpoint.class);
TestEndpoint endp = new TestEndpoint() {
@Override
public CompletableFuture<Object> request(String method, Object parameter) {
throw new RuntimeException("BAAZ");
}
};
TestMessageConsumer consumer = new TestMessageConsumer();
// Misbehaving exception handler that returns null
RemoteEndpoint endpoint = new RemoteEndpoint(consumer, endp, (e) -> null);
endpoint.consume(new RequestMessage() {{
setId("1");
setMethod("foo");
setParams("myparam");
}});
assertEquals("Check some response received", 1, consumer.messages.size());
ResponseMessage response = (ResponseMessage) consumer.messages.get(0);
assertEquals(ResponseErrorCode.InternalError.getValue(), response.getError().getCode());
} finally {
logMessages.unregister();
}
}
项目:lsp4j
文件:RemoteEndpointTest.java
@Test public void testExceptionHandlerMisbehaving02() {
LogMessageAccumulator logMessages = new LogMessageAccumulator();
try {
// Don't show the exception in the test execution log
logMessages.registerTo(RemoteEndpoint.class);
TestEndpoint endp = new TestEndpoint() {
@Override
public CompletableFuture<Object> request(String method, Object parameter) {
return CompletableFuture.supplyAsync(() -> "baz");
}
};
TestMessageConsumer2 consumer = new TestMessageConsumer2();
// Misbehaving exception handler that returns null
RemoteEndpoint endpoint = new RemoteEndpoint(consumer, endp, (e) -> null);
endpoint.consume(new RequestMessage() {{
setId("1");
setMethod("foo");
setParams("myparam");
}});
assertEquals("Check some response received", 1, consumer.messages.size());
ResponseMessage response = (ResponseMessage) consumer.messages.get(0);
assertNotNull("Check response has error", response.getError());
assertEquals(ResponseErrorCode.InternalError.getValue(), response.getError().getCode());
} finally {
logMessages.unregister();
}
}