@Override public Optional<QueryStats> handle(Request request, Response response) { if (response.getStatusCode() == HttpStatus.GONE.code()) { return Optional.empty(); } else if (response.getStatusCode() != HttpStatus.OK.code()) { throw new RuntimeException("unexpected error code " + response.getStatusCode() + "; reason=" + response.getStatusMessage()); } try { JsonNode rootNode = objectMapper.readTree(response.getInputStream()); JsonNode queryStatsNode = rootNode.get("queryStats"); if (queryStatsNode == null) { return Optional.empty(); } QueryStats queryStats = objectMapper.treeToValue(queryStatsNode, QueryStats.class); return Optional.of(queryStats); } catch (IOException e) { throw new UncheckedIOException(e); } } }
throw new PageTransportErrorException(format("Expected response code to be 200, but was %s %s:%n%s", response.getStatusCode(), response.getStatusMessage(), body.toString()));
@Override public String handle(Request request, Response response) throws Exception { return response.getStatusMessage(); } });
public UnexpectedResponseException(Request request, Response response) { this(String.format("%d: %s", response.getStatusCode(), response.getStatusMessage()), request, response.getStatusCode(), response.getStatusMessage(), ImmutableListMultimap.copyOf(response.getHeaders())); }
public UnexpectedResponseException(String message, Request request, Response response) { this(message, request, response.getStatusCode(), response.getStatusMessage(), ImmutableListMultimap.copyOf(response.getHeaders())); }
@Override public Void handle(Request request, Response response) { int statusCode = response.getStatusCode(); if (statusCode >= 200 && statusCode <= 299) { return null; } try { InputStream inputStream = response.getInputStream(); String responseBody = CharStreams.toString(new InputStreamReader(inputStream)); log.debug("Posting event to %s failed: status_code=%d status_line=%s body=%s", request.getUri(), statusCode, response.getStatusMessage(), responseBody); } catch (IOException bodyError) { log.debug("Posting event to %s failed: status_code=%d status_line=%s error=%s", request.getUri(), statusCode, response.getStatusMessage(), bodyError.getMessage()); } return null; } }
@Override public StatusResponse handle(Request request, Response response) { return new StatusResponse(response.getStatusCode(), response.getStatusMessage(), response.getHeaders()); }
@Override public Void handle(Request request, Response response) { int statusCode = response.getStatusCode(); if (statusCode >= 200 && statusCode <= 299) { return null; } try { InputStream inputStream = response.getInputStream(); String responseBody = CharStreams.toString(new InputStreamReader(inputStream)); log.debug("Posting event to %s failed: status_code=%d status_line=%s body=%s", request.getUri(), statusCode, response.getStatusMessage(), responseBody); } catch (IOException bodyError) { log.debug("Posting event to %s failed: status_code=%d status_line=%s error=%s", request.getUri(), statusCode, response.getStatusMessage(), bodyError.getMessage()); } return null; } }
@Override public Void handle(Request request, Response response) { int statusCode = response.getStatusCode(); if (statusCode >= 200 && statusCode <= 299) { return null; } try { InputStream inputStream = response.getInputStream(); String responseBody = CharStreams.toString(new InputStreamReader(inputStream)); log.debug("Posting event to %s failed: status_code=%d status_line=%s body=%s", request.getUri(), statusCode, response.getStatusMessage(), responseBody); } catch (IOException bodyError) { log.debug("Posting event to %s failed: status_code=%d status_line=%s error=%s", request.getUri(), statusCode, response.getStatusMessage(), bodyError.getMessage()); } return null; } }
private static StatusResponse createStatusResponse(Response response) { return new StatusResponse(response.getStatusCode(), response.getStatusMessage(), response.getHeaders()); } }
private static StatusResponse createStatusResponse(Response response) { return new StatusResponse(response.getStatusCode(), response.getStatusMessage(), response.getHeaders()); } }
@Override public StringResponse handle(Request request, Response response) { try { String contentType = response.getHeader(CONTENT_TYPE); if (contentType != null) { MediaType mediaType = MediaType.parse(contentType); return new StringResponse( response.getStatusCode(), response.getStatusMessage(), response.getHeaders(), new String(ByteStreams.toByteArray(response.getInputStream()), mediaType.charset().or(UTF_8))); } return new StringResponse( response.getStatusCode(), response.getStatusMessage(), response.getHeaders(), new String(ByteStreams.toByteArray(response.getInputStream()), UTF_8)); } catch (IOException e) { throw new UncheckedIOException(e); } }
@Override public Void handle(Request request, Response response) { int statusCode = response.getStatusCode(); if (statusCode >= 200 && statusCode <= 299) { return null; } try { InputStream inputStream = response.getInputStream(); String responseBody = CharStreams.toString(new InputStreamReader(inputStream)); log.debug("Posting event to %s failed: status_code=%d status_line=%s body=%s", request.getUri(), statusCode, response.getStatusMessage(), responseBody); } catch (IOException bodyError) { log.debug("Posting event to %s failed: status_code=%d status_line=%s error=%s", request.getUri(), statusCode, response.getStatusMessage(), bodyError.getMessage()); } return null; } }
@Override public JsonResponse<T> handle(Request request, Response response) { byte[] bytes = readResponseBytes(response); String contentType = response.getHeader(CONTENT_TYPE); if ((contentType == null) || !MediaType.parse(contentType).is(MEDIA_TYPE_JSON)) { return new JsonResponse<>(response.getStatusCode(), response.getStatusMessage(), response.getHeaders(), bytes); } return new JsonResponse<>(response.getStatusCode(), response.getStatusMessage(), response.getHeaders(), jsonCodec, bytes); }
String.format("Expected response code to be %s, but was %d: %s", successfulResponseCodes, response.getStatusCode(), response.getStatusMessage()), request, response);
throw new PageTransportErrorException(format("Expected response code to be 200, but was %s %s:%n%s", response.getStatusCode(), response.getStatusMessage(), body.toString()));
throw new PageTransportErrorException(format("Expected response code to be 200, but was %s %s:%n%s", response.getStatusCode(), response.getStatusMessage(), body.toString()));
throw new PageTransportErrorException(format("Expected response code to be 200, but was %s %s: %s", response.getStatusCode(), response.getStatusMessage(), request.getUri()));