@Override public void sendResponse(Exception exception) throws IOException { service.onResponseSent(requestId, action, exception); final TransportResponseHandler handler = service.responseHandlers.onResponseReceived(requestId, service); // ignore if its null, the service logs it if (handler != null) { final RemoteTransportException rtx = wrapInRemote(exception); final String executor = handler.executor(); if (ThreadPool.Names.SAME.equals(executor)) { processException(handler, rtx); } else { threadPool.executor(handler.executor()).execute(new Runnable() { @Override public void run() { processException(handler, rtx); } @Override public String toString() { return "delivery of failure response to [" + requestId + "][" + action + "]: " + exception; } }); } } }
@Override public void sendResponse(Throwable error) throws IOException { final TransportResponseHandler handler = adapter.onResponseReceived(requestId); // ignore if its null, the adapter logs it if (handler != null) { final RemoteTransportException rtx = wrapInRemote(error); final String executor = handler.executor(); if (ThreadPool.Names.SAME.equals(executor)) { processException(handler, rtx); } else { threadPool.executor(handler.executor()).execute(new Runnable() { @SuppressWarnings({"unchecked"}) @Override public void run() { processException(handler, rtx); } }); } } }
@Override public void sendResponse(Exception exception) throws IOException { adapter.onResponseSent(requestId, action, exception); final TransportResponseHandler handler = adapter.onResponseReceived(requestId); // ignore if its null, the adapter logs it if (handler != null) { final RemoteTransportException rtx = wrapInRemote(exception); final String executor = handler.executor(); if (ThreadPool.Names.SAME.equals(executor)) { processException(handler, rtx); } else { threadPool.executor(handler.executor()).execute(new Runnable() { @SuppressWarnings({"unchecked"}) @Override public void run() { processException(handler, rtx); } }); } } }
@Override public void sendResponse(Exception exception) throws IOException { service.onResponseSent(requestId, action, exception); final TransportResponseHandler handler = service.responseHandlers.onResponseReceived(requestId, service); // ignore if its null, the service logs it if (handler != null) { final RemoteTransportException rtx = wrapInRemote(exception); final String executor = handler.executor(); if (ThreadPool.Names.SAME.equals(executor)) { processException(handler, rtx); } else { threadPool.executor(handler.executor()).execute(new Runnable() { @Override public void run() { processException(handler, rtx); } @Override public String toString() { return "delivery of failure response to [" + requestId + "][" + action + "]: " + exception; } }); } } }
@SuppressWarnings("unchecked") protected void processResponse(TransportResponseHandler handler, TransportResponse response) { try { handler.handleResponse(response); } catch (Exception e) { processException(handler, wrapInRemote(new ResponseHandlerFailureTransportException(e))); } }
@SuppressWarnings("unchecked") protected void processResponse(TransportResponseHandler handler, TransportResponse response) { try { handler.handleResponse(response); } catch (Exception e) { processException(handler, wrapInRemote(new ResponseHandlerFailureTransportException(e))); } }
@SuppressWarnings({"unchecked"}) @Override public void run() { processException(handler, rtx); } });
@SuppressWarnings({"unchecked"}) @Override public void run() { processException(handler, rtx); } });
@SuppressWarnings("unchecked") protected void processResponse(TransportResponseHandler handler, TransportResponse response) { try { handler.handleResponse(response); } catch (Throwable e) { processException(handler, wrapInRemote(new ResponseHandlerFailureTransportException(e))); } }
@Override public void run() { processException(handler, rtx); }
@Override public void run() { processException(handler, rtx); }
@SuppressWarnings("unchecked") protected void processResponse(TransportResponseHandler handler, TransportResponse response) { try { handler.handleResponse(response); } catch (Exception e) { processException(handler, wrapInRemote(new ResponseHandlerFailureTransportException(e))); } }