@Override public <T> void executeAsync( final Protocol<T> protocol, final InternalConnection connection, final SingleResultCallback<T> callback) { protocol.executeAsync( connection, errorHandlingCallback( new SingleResultCallback<T>() { @Override public void onResult(final T result, final Throwable t) { if (t != null) { handleThrowable(t); } callback.onResult(result, t); } })); }