this.httpResponse = httpClient.execute(request, context); } catch (UnknownHostException e) { request.reset(); throw new IOException("client connection failed: unknown host " + request.getURI().getHost()); } catch (SocketTimeoutException e){ request.reset(); throw new IOException("client connection timeout for request: " + request.getURI()); } catch (SSLHandshakeException e){ request.reset(); throw new IOException("client connection handshake error for domain " + request.getURI().getHost() + ": " + e.getMessage()); } catch (Throwable e) { request.reset(); throw new IOException("server fail: " + e.getMessage()); this.inputStream = new BufferedInputStream(httpEntity.getContent()); } catch (IOException e) { request.reset(); throw e; request.reset(); throw new IOException("client connection to " + request.getURI() + " fail: " + status + ": " + httpResponse.getStatusLine().getReasonPhrase()); request.reset(); throw new IOException("client connection to " + request.getURI() + " fail: no connection");
private String executeMethod(HttpRequestBase req, String path) { try { URI base = new URI(apiUrl); req.setURI(new URI(base.getScheme(), base.getUserInfo(), base.getHost(), base.getPort(), path, null, null)); } catch (URISyntaxException e) { s_logger.error("invalid API URL " + apiUrl + " path " + path, e); return null; } try { String content = null; try { content = getHttpClient().execute(req, new BasicResponseHandler()); s_logger.info("ssp api call: " + req); } catch (HttpResponseException e) { s_logger.info("ssp api call failed: " + req, e); if (e.getStatusCode() == HttpStatus.SC_UNAUTHORIZED && login()) { req.reset(); content = getHttpClient().execute(req, new BasicResponseHandler()); s_logger.info("ssp api retry call: " + req); } } return content; } catch (ClientProtocolException e) { // includes HttpResponseException s_logger.error("ssp api call failed: " + req, e); } catch (IOException e) { s_logger.error("ssp api call failed: " + req, e); } return null; }
/** * A convenience method to simplify migration from HttpClient 3.1 API. This method is * equivalent to {@link #reset()}. * * @since 4.2 */ public void releaseConnection() { reset(); }
/** * A convenience method to simplify migration from HttpClient 3.1 API. This method is * equivalent to {@link #reset()}. * * @since 4.2 */ public void releaseConnection() { reset(); }
/** * A convenience method to simplify migration from HttpClient 3.1 API. This method is * equivalent to {@link #reset()}. * * @since 4.2 */ public void releaseConnection() { reset(); }
/** * A convenience method to simplify migration from HttpClient 3.1 API. This method is * equivalent to {@link #reset()}. * * @since 4.2 */ public void releaseConnection() { reset(); }
/** * A convenience method to simplify migration from HttpClient 3.1 API. This method is * equivalent to {@link #reset()}. * * @since 4.2 */ public void releaseConnection() { reset(); }
/** * A convenience method to simplify migration from HttpClient 3.1 API. This method is * equivalent to {@link #reset()}. * * @since 4.2 */ public void releaseConnection() { reset(); }
public void release() throws IOException { if(response instanceof Closeable) ((Closeable)response).close(); method.reset(); }
protected void cleanupAfterRequest(org.apache.http.HttpResponse response, HttpRequestBase method) { method.reset(); if (response instanceof CloseableHttpResponse) { try { ((CloseableHttpResponse)response).close(); } catch (IOException e) { throw new RuntimeException("Unable to close connection", e); } } }
public static void execute(HttpClient client, HttpRequestBase request) throws IOException { try { HttpResponse response = client.execute(request); if (response.getStatusLine().getStatusCode() != HttpStatus.SC_OK) throw new IOException("Invalid response status: " + response.getStatusLine().getStatusCode() + ", reason=" + response.getStatusLine().getReasonPhrase()); } finally { request.reset(); } }
private void reset() { if (response != null) EntityUtils.consumeQuietly(response.getEntity()); request.reset(); isConnected = false; isClosed = false; isFailed = false; if (capturedResponseWriter != null) capturedResponseWriter.getBuffer().setLength(0); }
private void reset() { if (response != null) EntityUtils.consumeQuietly(response.getEntity()); request.reset(); isConnected = false; isClosed = false; isFailed = false; if (capturedResponseWriter != null) capturedResponseWriter.getBuffer().setLength(0); }
private void reset() { if (response != null) EntityUtils.consumeQuietly(response.getEntity()); request.reset(); isConnected = false; isClosed = false; isFailed = false; if (capturedResponseWriter != null) capturedResponseWriter.getBuffer().setLength(0); }
public static <T, E extends Exception> T handleResponse(HttpClient client, HttpRequestBase request, HttpResponseHandler4<T, E> handler) throws IOException, E { try { HttpResponse response = client.execute(request); if (response.getStatusLine().getStatusCode() != HttpStatus.SC_OK) throw new IOException("Invalid response status: " + response.getStatusLine().getStatusCode() + ", reason=" + response.getStatusLine().getReasonPhrase()); return handler.handle(response); } finally { request.reset(); } }
private String executeHttpMethod(HttpRequestBase request) { try { HttpResponse response = client.execute(request); if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { return getAsXmlString(response); } } catch (IOException e) { logger.error("error fetching data", e); } finally { request.reset(); } return null; }
public static void execute(HttpClient client, HttpRequestBase request, OutputStream out) throws IOException { try { HttpResponse response = client.execute(request); if (response.getStatusLine().getStatusCode() != HttpStatus.SC_OK) throw new IOException("Invalid response status: " + response.getStatusLine().getStatusCode() + ", reason=" + response.getStatusLine().getReasonPhrase() + ", content=" + readResult(response.getEntity().getContent())); StreamUtils.transfer(response.getEntity().getContent(), out); } finally { request.reset(); } }
private <T> T executeRequest(HttpRequest value, ValueTransformer<T> valueConverter) throws IOException { HttpRequestBase request = createRequest(value); try { HttpResponse response = client.execute(request); T returnValue = valueConverter.transform(response); return returnValue; } finally { request.reset(); } }
public static String getTextContent(HttpClient client, HttpRequestBase request, int retries) throws HttpException, IOException { try { HttpResponse response = executeWithRetries(client, request, retries); String body = readFullResponseBody(response); if (response.getStatusLine().getStatusCode() != HttpStatus.SC_OK) throw new HttpException("Invalid response code " + response.getStatusLine().getStatusCode() + ", reason=" + response.getStatusLine().getReasonPhrase() + ": " + body); return body; } finally { request.reset(); } }
private void retryIfPossible(Exception exception) { if (hostTuple.hosts.hasNext()) { //in case we are retrying, check whether maxRetryTimeout has been reached long timeElapsedMillis = TimeUnit.NANOSECONDS.toMillis(System.nanoTime() - startTime); long timeout = maxRetryTimeoutMillis - timeElapsedMillis; if (timeout <= 0) { IOException retryTimeoutException = new IOException( "request retries exceeded max retry timeout [" + maxRetryTimeoutMillis + "]"); listener.onDefinitiveFailure(retryTimeoutException); } else { listener.trackFailure(exception); request.reset(); performRequestAsync(startTime, hostTuple, request, ignoreErrorCodes, httpAsyncResponseConsumerFactory, listener); } } else { listener.onDefinitiveFailure(exception); } }