List of usage examples for org.apache.http.client.methods HttpUriRequest addHeader
void addHeader(Header header);
From source file:org.flowable.rest.dmn.service.api.BaseSpringDmnRestTestCase.java
protected CloseableHttpResponse internalExecuteRequest(HttpUriRequest request, int expectedStatusCode, boolean addJsonContentType) { CloseableHttpResponse response = null; try {// www .j av a 2 s . co m if (addJsonContentType && request.getFirstHeader(HttpHeaders.CONTENT_TYPE) == null) { // Revert to default content-type request.addHeader(new BasicHeader(HttpHeaders.CONTENT_TYPE, "application/json")); } response = client.execute(request); Assert.assertNotNull(response.getStatusLine()); int responseStatusCode = response.getStatusLine().getStatusCode(); if (expectedStatusCode != responseStatusCode) { log.info("Wrong status code : {}, but should be {}", responseStatusCode, expectedStatusCode); log.info("Response body: {}", IOUtils.toString(response.getEntity().getContent())); } Assert.assertEquals(expectedStatusCode, responseStatusCode); httpResponses.add(response); return response; } catch (ClientProtocolException e) { Assert.fail(e.getMessage()); } catch (IOException e) { Assert.fail(e.getMessage()); } return null; }
From source file:org.apache.hadoop.gateway.dispatch.HttpClientDispatch.java
protected HttpResponse executeKerberosDispatch(HttpUriRequest outboundRequest, DefaultHttpClient client) throws IOException, ClientProtocolException { HttpResponse inboundResponse;/*from ww w . j av a2s . c o m*/ outboundRequest.removeHeaders(COOKIE); String appCookie = appCookieManager.getCachedAppCookie(); if (appCookie != null) { outboundRequest.addHeader(new BasicHeader(COOKIE, appCookie)); } inboundResponse = client.execute(outboundRequest); // if inBoundResponse has status 401 and header WWW-Authenticate: Negoitate // refresh hadoop.auth.cookie and attempt one more time int statusCode = inboundResponse.getStatusLine().getStatusCode(); if (statusCode == HttpStatus.SC_UNAUTHORIZED) { Header[] wwwAuthHeaders = inboundResponse.getHeaders(WWW_AUTHENTICATE); if (wwwAuthHeaders != null && wwwAuthHeaders.length != 0 && wwwAuthHeaders[0].getValue().trim().startsWith(NEGOTIATE)) { appCookie = appCookieManager.getAppCookie(outboundRequest, true); outboundRequest.removeHeaders(COOKIE); outboundRequest.addHeader(new BasicHeader(COOKIE, appCookie)); client = new DefaultHttpClient(); inboundResponse = client.execute(outboundRequest); } else { // no supported authentication type found // we would let the original response propagate } } else { // not a 401 Unauthorized status code // we would let the original response propagate } return inboundResponse; }
From source file:org.mobicents.xcap.client.impl.XcapClientImpl.java
private XcapResponse execute(HttpUriRequest request, Header[] additionalRequestHeaders, Credentials credentials) throws IOException { if (additionalRequestHeaders != null) { for (Header header : additionalRequestHeaders) { request.addHeader(((HeaderImpl) header).getWrappedHeader()); }/*from www .j ava 2s. c om*/ } HttpContext httpContext = NULL_HTTP_CONTEXT; if (credentials != null) { httpContext = new BasicHttpContext(); httpContext.setAttribute(ClientContext.CREDS_PROVIDER, new SingleCredentialsProvider(((CredentialsImpl) credentials).getWrappedCredentials())); } final XcapResponseImpl response = client.execute(request, responseHandler, httpContext); if (log.isDebugEnabled()) { log.debug("Received:\n--BEGIN--\n" + response.toString() + "\n--END--"); } return response; }
From source file:org.activiti.rest.content.service.api.BaseSpringContentRestTestCase.java
protected CloseableHttpResponse internalExecuteRequest(HttpUriRequest request, int expectedStatusCode, boolean addJsonContentType) { CloseableHttpResponse response = null; try {//from w ww . j ava 2 s. c o m if (addJsonContentType && request.getFirstHeader(HttpHeaders.CONTENT_TYPE) == null) { // Revert to default content-type request.addHeader(new BasicHeader(HttpHeaders.CONTENT_TYPE, "application/json")); } response = client.execute(request); Assert.assertNotNull(response.getStatusLine()); int responseStatusCode = response.getStatusLine().getStatusCode(); if (expectedStatusCode != responseStatusCode) { log.info("Wrong status code : " + responseStatusCode + ", but should be " + expectedStatusCode); log.info("Response body: " + IOUtils.toString(response.getEntity().getContent())); } Assert.assertEquals(expectedStatusCode, responseStatusCode); httpResponses.add(response); return response; } catch (ClientProtocolException e) { Assert.fail(e.getMessage()); } catch (IOException e) { Assert.fail(e.getMessage()); } return null; }
From source file:nl.opengeogroep.filesetsync.client.FilesetSyncer.java
private void addExtraHeaders(HttpUriRequest r) { for (Header h : state.getRequestHeaders()) { r.addHeader(h); } }
From source file:org.openestate.is24.restapi.hc42.HttpComponents42Client.java
@Override protected Response sendXmlAttachmentRequest(URL url, RequestMethod method, String xml, InputStream input, String fileName, String mimeType) throws IOException, OAuthException { if (method == null) method = RequestMethod.POST;/*from w ww. j a va2s .c om*/ if (!RequestMethod.POST.equals(method) && !RequestMethod.PUT.equals(method)) throw new IllegalArgumentException("Invalid request method!"); xml = (RequestMethod.POST.equals(method) || RequestMethod.PUT.equals(method)) ? StringUtils.trimToNull(xml) : null; HttpUriRequest request = null; if (RequestMethod.POST.equals(method)) { request = new HttpPost(url.toString()); } else if (RequestMethod.PUT.equals(method)) { request = new HttpPut(url.toString()); } else { throw new IOException("Unsupported request method '" + method + "'!"); } MultipartEntity requestMultipartEntity = new MultipartEntity(); request.addHeader(requestMultipartEntity.getContentType()); request.setHeader("Content-Language", "en-US"); request.setHeader("Accept", "application/xml"); // add xml part to the multipart entity if (xml != null) { //StringBody xmlPart = new StringBody( // xml, "application/xml; name=body.xml", Charset.forName( getEncoding() ) ); InputStreamBody xmlPart = new InputStreamBody(new ByteArrayInputStream(xml.getBytes(getEncoding())), "application/xml", "body.xml"); requestMultipartEntity.addPart("metadata", xmlPart); } // add file part to the multipart entity if (input != null) { mimeType = StringUtils.trimToNull(mimeType); if (mimeType == null) mimeType = "application/octet-stream"; fileName = StringUtils.trimToNull(fileName); if (fileName == null) fileName = "upload.bin"; InputStreamBody filePart = new InputStreamBody(input, mimeType, fileName); requestMultipartEntity.addPart("attachment", filePart); } // add multipart entity to the request ((HttpEntityEnclosingRequest) request).setEntity(requestMultipartEntity); // sign request getAuthConsumer().sign(request); // send request HttpResponse response = httpClient.execute(request); // create response return createResponse(response); }
From source file:com.soundcloud.playerapi.ApiWrapper.java
/** Adds an OAuth2 header to a given request */ protected HttpUriRequest addAuthHeader(HttpUriRequest request) { if (!request.containsHeader(AUTH.WWW_AUTH_RESP)) { if (mToken != EMPTY_TOKEN) { request.addHeader(createOAuthHeader(mToken)); }//from w w w. j a va 2s . c o m } return request; }
From source file:org.openestate.is24.restapi.hc42.HttpComponents42Client.java
@Override protected Response sendVideoUploadRequest(URL url, RequestMethod method, String auth, InputStream input, String fileName, final long fileSize) throws IOException, OAuthException { if (method == null) method = RequestMethod.POST;//from w ww .ja v a2s .c o m if (!RequestMethod.POST.equals(method) && !RequestMethod.PUT.equals(method)) throw new IllegalArgumentException("Invalid request method!"); HttpUriRequest request = null; if (RequestMethod.POST.equals(method)) { request = new HttpPost(url.toString()); } else if (RequestMethod.PUT.equals(method)) { request = new HttpPut(url.toString()); } else { throw new IOException("Unsupported request method '" + method + "'!"); } MultipartEntity requestMultipartEntity = new MultipartEntity(); request.setHeader("MIME-Version", "1.0"); request.addHeader(requestMultipartEntity.getContentType()); request.setHeader("Content-Language", "en-US"); request.setHeader("Accept-Charset", "UTF-8"); request.setHeader("Accept-Encoding", "gzip,deflate"); request.setHeader("Connection", "close"); // add auth part to the multipart entity auth = StringUtils.trimToNull(auth); if (auth != null) { StringBody authPart = new StringBody(auth, Charset.forName(getEncoding())); requestMultipartEntity.addPart("auth", authPart); } // add file part to the multipart entity if (input != null) { fileName = StringUtils.trimToNull(fileName); if (fileName == null) fileName = "upload.bin"; //InputStreamBody filePart = new InputStreamBody( input, fileName ); InputStreamBody filePart = new InputStreamBodyWithLength(input, fileName, fileSize); requestMultipartEntity.addPart("videofile", filePart); } // add multipart entity to the request ((HttpEntityEnclosingRequest) request).setEntity(requestMultipartEntity); // sign request //getAuthConsumer().sign( request ); // send request HttpResponse response = httpClient.execute(request); // create response return createResponse(response); }
From source file:org.mobicents.slee.enabler.rest.client.RESTClientEnablerChildSbb.java
@Override public void execute(RESTClientEnablerRequest request) throws Exception { // validate request if (request == null) { throw new NullPointerException("request is null"); }//from w w w .j av a 2 s. com if (request.getType() == null) { throw new NullPointerException("request type is null"); } if (request.getUri() == null) { throw new NullPointerException("request uri is null"); } // create http request HttpUriRequest httpRequest = null; switch (request.getType()) { case DELETE: httpRequest = new HttpDelete(request.getUri()); break; case GET: httpRequest = new HttpGet(request.getUri()); break; case POST: httpRequest = new HttpPost(request.getUri()); break; case PUT: httpRequest = new HttpPut(request.getUri()); break; default: throw new IllegalArgumentException("unknown request type"); } // add headers, if any if (request.getHeaders() != null) { for (Header h : request.getHeaders()) { httpRequest.addHeader(h); } } // sign request using oauth, if needed if (request.getOAuthConsumer() != null) { request.getOAuthConsumer().sign(httpRequest); } // add content, if any if (request.getContent() != null) { if (!(httpRequest instanceof HttpEntityEnclosingRequest)) { throw new IllegalArgumentException("request includes content but type does not allows content"); } if (request.getContentType() == null) { throw new IllegalArgumentException("request includes content but no content type"); } BasicHttpEntity entity = new BasicHttpEntity(); entity.setContent(request.getContent()); if (request.getContentEncoding() != null) entity.setContentEncoding(request.getContentEncoding()); entity.setContentType(request.getContentType()); ((HttpEntityEnclosingRequest) httpRequest).setEntity(entity); } // get http client activity and attach to related aci HttpClientActivity activity = httpProvider.createHttpClientActivity(true, null); ActivityContextInterface aci = httpClientActivityContextInterfaceFactory .getActivityContextInterface(activity); aci.attach(this.sbbContext.getSbbLocalObject()); // execute request on the activity activity.execute(httpRequest, request); }
From source file:tv.arte.resteventapi.core.clients.RestEventApiRestClient.java
/** * Executes the REST request described by the {@link RestEvent} * /*from w w w . java2 s .c o m*/ * @param restEvent The {@link RestEvent} to process * @return A result of the execution * @throws RestEventApiRuntimeException In case of non managed errors */ public static RestClientExecutionResult execute(final RestEvent restEvent) throws RestEventApiRuntimeException { RestClientExecutionResult result = new RestClientExecutionResult(); String url = restEvent.getUrl(); CloseableHttpClient client = null; HttpUriRequest request = null; Integer responseCode = null; try { //Request custom configs RequestConfig.Builder requestBuilder = RequestConfig.custom(); requestBuilder = requestBuilder.setConnectTimeout(restEvent.getTimeout()); requestBuilder = requestBuilder.setConnectionRequestTimeout(restEvent.getTimeout()); client = HttpClientBuilder.create().setDefaultRequestConfig(requestBuilder.build()).build(); //Determine the method to execute switch (restEvent.getMethod()) { case GET: request = new HttpGet(url); break; case POST: request = new HttpPost(url); break; case PUT: request = new HttpPut(url); break; case DELETE: request = new HttpDelete(url); break; case PATCH: request = new HttpPatch(url); break; case HEAD: request = new HttpHead(url); break; default: throw new RestEventApiRuntimeException("RestEventAPI unsupported HTTP method"); } //Set the body for eligible methods if (restEvent.getBody() != null && request instanceof HttpEntityEnclosingRequestBase) { ((HttpEntityEnclosingRequestBase) request).setEntity(new StringEntity(restEvent.getBody())); } //Set headers if (CollectionUtils.isNotEmpty(restEvent.getHeaders())) { for (String strHeader : restEvent.getHeaders()) { CharArrayBuffer headerBuffer = new CharArrayBuffer(strHeader.length() + 1); headerBuffer.append(strHeader); request.addHeader(new BufferedHeader(headerBuffer)); } } HttpResponse response = client.execute(request); responseCode = response.getStatusLine().getStatusCode(); result.setState(RestClientCallState.OK); } catch (ConnectTimeoutException e) { result.setState(RestClientCallState.TIMEOUT); } catch (Exception e) { throw new RestEventApiRuntimeException("Un error occured while processing rest event", e); } finally { result.setResponseCode(responseCode); try { client.close(); } catch (Exception e2) { logger.warn("Unable to close HTTP client", e2); } } return result; }