X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/a8bbdb54d006f157a009ece0cae5bf72fb636ced..e7a4bc5ef151ce217fad6b19babc38184567f191:/src/main/java/org/asamk/signal/jsonrpc/JsonRpcReader.java diff --git a/src/main/java/org/asamk/signal/jsonrpc/JsonRpcReader.java b/src/main/java/org/asamk/signal/jsonrpc/JsonRpcReader.java index 67fced0d..64220a38 100644 --- a/src/main/java/org/asamk/signal/jsonrpc/JsonRpcReader.java +++ b/src/main/java/org/asamk/signal/jsonrpc/JsonRpcReader.java @@ -41,13 +41,14 @@ public class JsonRpcReader { JsonRpcMessage message = readMessage(); if (message == null) break; - if (message instanceof JsonRpcRequest) { - final var response = handleRequest(requestHandler, (JsonRpcRequest) message); + if (message instanceof final JsonRpcRequest jsonRpcRequest) { + logger.debug("Received json rpc request, method: " + jsonRpcRequest.method); + final var response = handleRequest(requestHandler, jsonRpcRequest); if (response != null) { jsonRpcSender.sendResponse(response); } - } else if (message instanceof JsonRpcResponse) { - responseHandler.accept((JsonRpcResponse) message); + } else if (message instanceof JsonRpcResponse jsonRpcResponse) { + responseHandler.accept(jsonRpcResponse); } else { final var responseList = ((JsonRpcBulkMessage) message).getMessages().stream().map(jsonNode -> { final JsonRpcRequest request; @@ -70,10 +71,17 @@ public class JsonRpcReader { final var result = requestHandler.apply(request.getMethod(), request.getParams()); if (request.getId() != null) { return JsonRpcResponse.forSuccess(result, request.getId()); + } else { + logger.debug("Command '{}' succeeded but client didn't specify an id, dropping response", + request.getMethod()); } } catch (JsonRpcException e) { if (request.getId() != null) { return JsonRpcResponse.forError(e.getError(), request.getId()); + } else { + logger.debug("Command '{}' failed but client didn't specify an id, dropping error: {}", + request.getMethod(), + e.getMessage()); } } return null;