private <T> Future<T> asyncSubmit(AsyncClientHttpEngine asyncHttpEngine, boolean buffered, InvocationCallback<T> callback, final AsyncClientHttpEngine.ResultExtractor<T> extractor) final ClientRequestContextImpl requestContext = new ClientRequestContextImpl(this); Providers current = pushProvidersContext(); try
private ClientResponse filterRequest(ClientRequestContextImpl requestContext) { ClientRequestFilter[] requestFilters = getRequestFilters(); ClientResponse aborted = null; if (requestFilters != null && requestFilters.length > 0) { for (ClientRequestFilter filter : requestFilters) { try { filter.filter(requestContext); if (requestContext.getAbortedWithResponse() != null) { aborted = new AbortedResponse(configuration, requestContext.getAbortedWithResponse()); break; } } catch (ProcessingException e) { throw e; } catch (Throwable e) { throw new ProcessingException(e); } } } return aborted; }
@Override public ClientResponse invoke() { Providers current = pushProvidersContext(); try { ClientRequestContextImpl requestContext = new ClientRequestContextImpl(this); ClientResponse aborted = filterRequest(requestContext); // spec requires that aborted response go through filter/interceptor chains. ClientResponse response = (aborted != null) ? aborted : (ClientResponse)client.httpEngine().invoke(this); return filterResponse(requestContext, response); } catch (ResponseProcessingException e) { if (e.getResponse() != null) { e.getResponse().close(); } throw e; } finally { popProvidersContext(current); } }
private ClientResponse filterRequest(ClientRequestContextImpl requestContext) { ClientRequestFilter[] requestFilters = getRequestFilters(); ClientResponse aborted = null; if (requestFilters != null && requestFilters.length > 0) { for (ClientRequestFilter filter : requestFilters) { try { filter.filter(requestContext); if (requestContext.getAbortedWithResponse() != null) { aborted = new AbortedResponse(configuration, requestContext.getAbortedWithResponse()); break; } } catch (ProcessingException e) { throw e; } catch (Throwable e) { throw new ProcessingException(e); } } } return aborted; }
@Override public ClientResponse invoke() { Providers current = pushProvidersContext(); try { ClientRequestContextImpl requestContext = new ClientRequestContextImpl(this); ClientResponse aborted = filterRequest(requestContext); // spec requires that aborted response go through filter/interceptor chains. ClientResponse response = (aborted != null) ? aborted : client.httpEngine().invoke(this); return filterResponse(requestContext, response); } finally { popProvidersContext(current); } }
private ClientResponse filterRequest(ClientRequestContextImpl requestContext) { ClientRequestFilter[] requestFilters = getRequestFilters(); ClientResponse aborted = null; if (requestFilters != null && requestFilters.length > 0) { for (ClientRequestFilter filter : requestFilters) { try { filter.filter(requestContext); if (requestContext.getAbortedWithResponse() != null) { aborted = new AbortedResponse(configuration, requestContext.getAbortedWithResponse()); break; } } catch (ProcessingException e) { throw e; } catch (Throwable e) { throw new ProcessingException(e); } } } return aborted; }
private <T> Future<T> asyncSubmit(AsyncClientHttpEngine asyncHttpEngine, boolean buffered, InvocationCallback<T> callback, final AsyncClientHttpEngine.ResultExtractor<T> extractor) final ClientRequestContextImpl requestContext = new ClientRequestContextImpl(this); Providers current = pushProvidersContext(); try
private <T> Future<T> asyncSubmit(AsyncClientHttpEngine asyncHttpEngine, boolean buffered, InvocationCallback<T> callback, final AsyncClientHttpEngine.ResultExtractor<T> extractor) final ClientRequestContextImpl requestContext = new ClientRequestContextImpl(this); Providers current = pushProvidersContext(); try
@Override public ClientResponse invoke() { Providers current = pushProvidersContext(); try { ClientRequestContextImpl requestContext = new ClientRequestContextImpl(this); ClientResponse aborted = filterRequest(requestContext); // spec requires that aborted response go through filter/interceptor chains. ClientResponse response = (aborted != null) ? aborted : client.httpEngine().invoke(this); return filterResponse(requestContext, response); } catch (ResponseProcessingException e) { if (e.getResponse() != null) { e.getResponse().close(); } throw e; } finally { popProvidersContext(current); } }