@Override public <T> T request(HttpRequestBase request, final ResponseParser<T> responseParser) { return request( request, (request1, response, entity) -> baseHandleResponse(request1, response, entity, entity1 -> { // Gets the content as a string String content = entity1 != null ? EntityUtils.toString(entity1, "UTF-8") : null; // Parses the response return responseParser.parse(content); }) ); }
@Override public Document download(String path, Object... parameters) { HttpGet get = new HttpGet(getUrl(path)); return request(get, (request, response, entity) -> { return handleErrorCode(request, response, () -> { // Gets the content as bytes byte[] bytes; try { bytes = EntityUtils.toByteArray(entity); } catch (IOException e) { throw new ClientIOException(request, e); } if (bytes == null || bytes.length == 0) { return Document.EMPTY; } // OK return new Document( entity.getContentType().getValue(), bytes ); }); }); }
protected <T> T baseHandleResponse(HttpRequestBase request, HttpResponse response, HttpEntity entity, EntityParser<T> entityParser) throws ParseException, IOException { return handleErrorCode(request, response, () -> { try { return entityParser.parse(entity); } catch (IOException e) { throw new ClientIOException(request, e); } }); }
return supplier.get(); } else if (statusCode == HttpStatus.SC_BAD_REQUEST) { throw new ClientValidationException(getMessage(response)); } else if (statusCode == HttpStatus.SC_UNAUTHORIZED) { throw new ClientCannotLoginException(request); throw new ClientForbiddenException(request); } else if (statusCode == HttpStatus.SC_NOT_FOUND) { throw new ClientNotFoundException(getMessage(response)); } else if (statusCode == HttpStatus.SC_NO_CONTENT) { return null; } else if (statusCode == HttpStatus.SC_INTERNAL_SERVER_ERROR) { String content = getMessage(response); if (StringUtils.isNotBlank(content)) { throw new ClientMessageException(content);
}; return new OTHttpClientImpl(url, host, httpClientSupplier, httpContext, clientLogger);
@Override public Document download(String path, Object... parameters) { HttpGet get = new HttpGet(getUrl(path)); return request(get, (request, response, entity) -> { return handleErrorCode(request, response, () -> { // Gets the content as bytes byte[] bytes; try { bytes = EntityUtils.toByteArray(entity); } catch (IOException e) { throw new ClientIOException(request, e); } if (bytes == null || bytes.length == 0) { return Document.EMPTY; } // OK return new Document( entity.getContentType().getValue(), bytes ); }); }); }
protected <T> T baseHandleResponse(HttpRequestBase request, HttpResponse response, HttpEntity entity, EntityParser<T> entityParser) throws ParseException, IOException { return handleErrorCode(request, response, () -> { try { return entityParser.parse(entity); } catch (IOException e) { throw new ClientIOException(request, e); } }); }
return supplier.get(); } else if (statusCode == HttpStatus.SC_BAD_REQUEST) { throw new ClientValidationException(getMessage(response)); } else if (statusCode == HttpStatus.SC_UNAUTHORIZED) { throw new ClientCannotLoginException(request); throw new ClientForbiddenException(request); } else if (statusCode == HttpStatus.SC_NOT_FOUND) { throw new ClientNotFoundException(getMessage(response)); } else if (statusCode == HttpStatus.SC_NO_CONTENT) { return null; } else if (statusCode == HttpStatus.SC_INTERNAL_SERVER_ERROR) { String content = getMessage(response); if (StringUtils.isNotBlank(content)) { throw new ClientMessageException(content);
}; return new OTHttpClientImpl(url, host, httpClientSupplier, httpContext, clientLogger);
@Override public <T> T request(HttpRequestBase request, final ResponseParser<T> responseParser) { return request( request, (request1, response, entity) -> baseHandleResponse(request1, response, entity, entity1 -> { // Gets the content as a string String content = entity1 != null ? EntityUtils.toString(entity1, "UTF-8") : null; // Parses the response return responseParser.parse(content); }) ); }
@Override public <T> T upload(ResponseParser<T> responseParser, String name, Document document, String fileName, String path, Object... parameters) { HttpPost post = new HttpPost(getUrl(path)); // Sets the content post.setEntity( MultipartEntityBuilder.create() .addBinaryBody( name, document.getContent(), ContentType.parse(document.getType()), fileName ) .build() ); // OK return request(post, responseParser); }
@Override public <T> T upload(ResponseParser<T> responseParser, String name, Document document, String fileName, String path, Object... parameters) { HttpPost post = new HttpPost(getUrl(path)); // Sets the content post.setEntity( MultipartEntityBuilder.create() .addBinaryBody( name, document.getContent(), ContentType.parse(document.getType()), fileName ) .build() ); // OK return request(post, responseParser); }