List of usage examples for org.apache.http.client.entity EntityBuilder setBinary
public EntityBuilder setBinary(final byte[] binary)
From source file:org.sakaiproject.contentreview.urkund.util.UrkundAPIUtil.java
public static String postDocument(String baseUrl, String receiverAddress, String externalId, UrkundSubmission submission, String urkundUsername, String urkundPassword, int timeout) { String ret = null;/*from w w w . java 2 s.c o m*/ RequestConfig.Builder requestBuilder = RequestConfig.custom(); requestBuilder = requestBuilder.setConnectTimeout(timeout); requestBuilder = requestBuilder.setConnectionRequestTimeout(timeout); HttpClientBuilder builder = HttpClientBuilder.create(); builder.setDefaultRequestConfig(requestBuilder.build()); try (CloseableHttpClient httpClient = builder.build()) { HttpPost httppost = new HttpPost(baseUrl + "submissions/" + receiverAddress + "/" + externalId); //------------------------------------------------------------ EntityBuilder eBuilder = EntityBuilder.create(); eBuilder.setBinary(submission.getContent()); httppost.setEntity(eBuilder.build()); //------------------------------------------------------------ if (StringUtils.isNotBlank(urkundUsername) && StringUtils.isNotBlank(urkundPassword)) { addAuthorization(httppost, urkundUsername, urkundPassword); } //------------------------------------------------------------ httppost.addHeader("Accept", "application/json"); httppost.addHeader("Content-Type", submission.getMimeType()); httppost.addHeader("Accept-Language", submission.getLanguage()); httppost.addHeader("x-urkund-filename", submission.getFilenameEncoded()); httppost.addHeader("x-urkund-submitter", submission.getSubmitterEmail()); httppost.addHeader("x-urkund-anonymous", Boolean.toString(submission.isAnon())); httppost.addHeader("x-urkund-subject", submission.getSubject()); httppost.addHeader("x-urkund-message", submission.getMessage()); //------------------------------------------------------------ HttpResponse response = httpClient.execute(httppost); HttpEntity resEntity = response.getEntity(); if (resEntity != null) { ret = EntityUtils.toString(resEntity); EntityUtils.consume(resEntity); } } catch (IOException e) { log.error("ERROR uploading File : ", e); } return ret; }
From source file:org.attribyte.api.http.impl.commons.Commons4Client.java
@Override public Response send(Request request, RequestOptions options) throws IOException { HttpUriRequest commonsRequest = null; switch (request.getMethod()) { case GET:/* w w w . j av a2s . co m*/ commonsRequest = new HttpGet(request.getURI()); break; case DELETE: commonsRequest = new HttpDelete(request.getURI()); break; case HEAD: commonsRequest = new HttpHead(request.getURI()); break; case POST: { HttpEntityEnclosingRequestBase entityEnclosingRequest = new HttpPost(request.getURI()); commonsRequest = entityEnclosingRequest; EntityBuilder entityBuilder = EntityBuilder.create(); if (request.getBody() != null) { entityBuilder.setBinary(request.getBody().toByteArray()); } else { Collection<Parameter> parameters = request.getParameters(); List<NameValuePair> nameValuePairs = Lists.newArrayListWithExpectedSize(parameters.size()); for (Parameter parameter : parameters) { String[] values = parameter.getValues(); for (String value : values) { nameValuePairs.add(new BasicNameValuePair(parameter.getName(), value)); } } } entityEnclosingRequest.setEntity(entityBuilder.build()); break; } case PUT: { HttpEntityEnclosingRequestBase entityEnclosingRequest = new HttpPut(request.getURI()); commonsRequest = entityEnclosingRequest; EntityBuilder entityBuilder = EntityBuilder.create(); if (request.getBody() != null) { entityBuilder.setBinary(request.getBody().toByteArray()); } entityEnclosingRequest.setEntity(entityBuilder.build()); break; } } Collection<Header> headers = request.getHeaders(); for (Header header : headers) { String[] values = header.getValues(); for (String value : values) { commonsRequest.setHeader(header.getName(), value); } } ResponseBuilder builder = new ResponseBuilder(); CloseableHttpResponse response = null; InputStream is = null; try { if (options.followRedirects != RequestOptions.DEFAULT_FOLLOW_REDIRECTS) { RequestConfig localConfig = RequestConfig.copy(defaultRequestConfig) .setRedirectsEnabled(options.followRedirects) .setMaxRedirects(options.followRedirects ? 5 : 0).build(); HttpClientContext localContext = HttpClientContext.create(); localContext.setRequestConfig(localConfig); response = httpClient.execute(commonsRequest, localContext); } else { response = httpClient.execute(commonsRequest); } builder.setStatusCode(response.getStatusLine().getStatusCode()); for (org.apache.http.Header header : response.getAllHeaders()) { builder.addHeader(header.getName(), header.getValue()); } HttpEntity entity = response.getEntity(); if (entity != null) { is = entity.getContent(); if (is != null) { builder.setBody(Request.bodyFromInputStream(is, options.maxResponseBytes)); } } } finally { if (is != null) { try { is.close(); } catch (IOException ioe) { //TODO? } } if (response != null) { response.close(); } } return builder.create(); }