protected void handleResponseIssues(ResponseMessage responseMessage, List<MessageIssue> issues) { PendingRequestInfo requestInfo; synchronized (sentRequestMap) { requestInfo = sentRequestMap.remove(responseMessage.getId()); } if (requestInfo == null) { // We have no pending request information that matches the id given in the response LOG.log(Level.WARNING, "Unmatched response message: " + responseMessage); logIssues(responseMessage, issues); } else { requestInfo.future.completeExceptionally(new MessageIssueException(responseMessage, issues)); } }
protected void handleResponseIssues(ResponseMessage responseMessage, List<MessageIssue> issues) { PendingRequestInfo requestInfo; synchronized (sentRequestMap) { requestInfo = sentRequestMap.remove(responseMessage.getId()); } if (requestInfo == null) { // We have no pending request information that matches the id given in the response LOG.log(Level.WARNING, "Unmatched response message: " + responseMessage); logIssues(responseMessage, issues); } else { requestInfo.future.completeExceptionally(new MessageIssueException(responseMessage, issues)); } }
@Override public void handle(Message message, List<MessageIssue> issues) { if (issues.isEmpty()) { throw new IllegalArgumentException("The list of issues must not be empty."); } if (message instanceof RequestMessage) { RequestMessage requestMessage = (RequestMessage) message; handleRequestIssues(requestMessage, issues); } else if (message instanceof ResponseMessage) { ResponseMessage responseMessage = (ResponseMessage) message; handleResponseIssues(responseMessage, issues); } else { logIssues(message, issues); } }
@Override public void handle(Message message, List<MessageIssue> issues) { if (issues.isEmpty()) { throw new IllegalArgumentException("The list of issues must not be empty."); } if (message instanceof RequestMessage) { RequestMessage requestMessage = (RequestMessage) message; handleRequestIssues(requestMessage, issues); } else if (message instanceof ResponseMessage) { ResponseMessage responseMessage = (ResponseMessage) message; handleResponseIssues(responseMessage, issues); } else { logIssues(message, issues); } }