List of usage examples for org.apache.http.client.methods HttpUriRequest addHeader
void addHeader(String str, String str2);
From source file:com.pdfread.standardreader.net.AsyncHttpClient.java
protected void sendRequest(DefaultHttpClient client, HttpContext httpContext, HttpUriRequest uriRequest, String contentType, AsyncHttpResponseHandler responseHandler, Context context) { if (contentType != null) { uriRequest.addHeader("Content-Type", contentType); }//w ww. j a v a 2 s .c o m Future<?> request = threadPool .submit(new AsyncHttpRequest(client, httpContext, uriRequest, responseHandler)); if (context != null) { // Add request to request map List<WeakReference<Future<?>>> requestList = requestMap.get(context); if (requestList == null) { requestList = new LinkedList<WeakReference<Future<?>>>(); requestMap.put(context, requestList); } requestList.add(new WeakReference<Future<?>>(request)); // TODO: Remove dead weakrefs from requestLists? } }
From source file:com.floragunn.searchguard.HeaderAwareJestHttpClient.java
public Tuple<JestResult, HttpResponse> executeE(final Action clientRequest) throws IOException { final String elasticSearchRestUrl = getRequestURL(getElasticSearchServer(), clientRequest.getURI()); final HttpUriRequest request = constructHttpMethod(clientRequest.getRestMethodName(), elasticSearchRestUrl, clientRequest.getData(gson)); log.debug("reqeust method and restUrl - " + clientRequest.getRestMethodName() + " " + elasticSearchRestUrl); // add headers added to action if (!clientRequest.getHeaders().isEmpty()) { for (final Iterator<Entry> it = clientRequest.getHeaders().entrySet().iterator(); it.hasNext();) { final Entry header = it.next(); request.addHeader((String) header.getKey(), header.getValue().toString()); }//from ww w . jav a 2 s .c om } final HttpResponse response = httpClient.execute(request); // If head method returns no content, it is added according to response code thanks to https://github.com/hlassiege if (request.getMethod().equalsIgnoreCase("HEAD")) { if (response.getEntity() == null) { if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { response.setEntity(new StringEntity("{\"ok\" : true, \"found\" : true}")); } else if (response.getStatusLine().getStatusCode() == HttpStatus.SC_NOT_FOUND) { response.setEntity(new StringEntity("{\"ok\" : false, \"found\" : false}")); } } } return new Tuple(deserializeResponse(response, clientRequest), response); }
From source file:com.soundcloud.playerapi.ApiWrapper.java
/** Forces JSON */ protected HttpUriRequest addAcceptHeader(HttpUriRequest request) { if (!request.containsHeader("Accept")) { request.addHeader("Accept", getDefaultContentType()); }/*from w ww . java 2 s .c om*/ return request; }
From source file:com.chuannuo.tangguo.net.TGHttpClient.java
protected void sendRequest(DefaultHttpClient client, HttpContext httpContext, HttpUriRequest uriRequest, String contentType, TGHttpResponseHandler responseHandler, Context context) { if (contentType != null) { uriRequest.addHeader("Content-Type", contentType); }// www . ja v a2 s . c o m Future<?> request = threadPool .submit(new TGHttpRequest(client, httpContext, uriRequest, responseHandler, responseUrl)); if (context != null) { // Add request to request map List<WeakReference<Future<?>>> requestList = requestMap.get(context); if (requestList == null) { requestList = new LinkedList<WeakReference<Future<?>>>(); requestMap.put(context, requestList); } requestList.add(new WeakReference<Future<?>>(request)); // TODO: Remove dead weakrefs from requestLists? } }
From source file:com.petalmd.armor.HeaderAwareJestHttpClient.java
public Tuple<JestResult, HttpResponse> executeE(final Action clientRequest) throws IOException { final String elasticSearchRestUrl = getRequestURL(getNextServer(), clientRequest.getURI()); final HttpUriRequest request = constructHttpMethod(clientRequest.getRestMethodName(), elasticSearchRestUrl, clientRequest.getData(gson)); log.debug("reqeust method and restUrl - " + clientRequest.getRestMethodName() + " " + elasticSearchRestUrl); // add headers added to action if (!clientRequest.getHeaders().isEmpty()) { for (final Iterator<Entry> it = clientRequest.getHeaders().entrySet().iterator(); it.hasNext();) { final Entry header = it.next(); request.addHeader((String) header.getKey(), header.getValue().toString()); }//from w w w . j ava 2s. co m } final HttpResponse response = httpClient.execute(request); // If head method returns no content, it is added according to response code thanks to https://github.com/hlassiege if (request.getMethod().equalsIgnoreCase("HEAD")) { if (response.getEntity() == null) { if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { response.setEntity(new StringEntity("{\"ok\" : true, \"found\" : true}")); } else if (response.getStatusLine().getStatusCode() == HttpStatus.SC_NOT_FOUND) { response.setEntity(new StringEntity("{\"ok\" : false, \"found\" : false}")); } } } return new Tuple(deserializeResponse(response, clientRequest), response); }
From source file:org.graphity.core.util.jena.HttpOp.java
private static void exec(String url, HttpUriRequest request, String acceptHeader, HttpResponseHandler handler, HttpClient httpClient, HttpContext httpContext, HttpAuthenticator authenticator) { try {//from w ww. j av a 2 s . c o m if (handler == null) // This cleans up. handler = nullHandler; long id = counter.incrementAndGet(); String requestURI = determineRequestURI(url); String baseURI = determineBaseIRI(url); if (log.isDebugEnabled()) log.debug(format("[%d] %s %s", id, request.getMethod(), request.getURI().toString())); // Accept if (acceptHeader != null) request.addHeader(HttpNames.hAccept, acceptHeader); // Prepare and execute httpClient = ensureClient(httpClient, authenticator); httpContext = ensureContext(httpContext); applyAuthentication(asAbstractClient(httpClient), url, httpContext, authenticator); HttpResponse response = httpClient.execute(request, httpContext); // Response StatusLine statusLine = response.getStatusLine(); int statusCode = statusLine.getStatusCode(); if (HttpSC.isClientError(statusCode) || HttpSC.isServerError(statusCode)) { log.debug(format("[%d] %s %s", id, statusLine.getStatusCode(), statusLine.getReasonPhrase())); // Error responses can have bodies so it is important to clear up. EntityUtils.consume(response.getEntity()); throw new HttpException(statusLine.getStatusCode(), statusLine.getReasonPhrase()); } // Redirects are followed by HttpClient. if (handler != null) handler.handle(baseURI, response); } catch (IOException ex) { throw new HttpException(ex); } }
From source file:org.mule.modules.quickbooks.windows.api.DefaultQuickBooksWindowsClient.java
/** * Returns all the results from QB// ww w .j a v a 2 s .c o m * * @return List with all the results */ @SuppressWarnings({ "unchecked", "rawtypes" }) @Override public Iterable findObjects(final OAuthCredentials credentials, final WindowsEntityType type, Integer startPage, Integer chunkSize, final Object query) { Validate.notNull(type); List<Object> listOfResults = new ArrayList<Object>(); Boolean hasMoreResults = true; Boolean externalPagination = false; Integer pageNumber = 1; if (startPage != null && chunkSize != null) { setResultsPerPage(chunkSize); pageNumber = startPage; externalPagination = true; } HttpUriRequest httpRequest; Object responseObject; String str = String.format("%s/%s/v2/%s", credentials.getBaseUri(), type.getResouceName(), credentials.getRealmId()); while (hasMoreResults) { httpRequest = new HttpPost(str); httpRequest.addHeader("Content-Type", "text/xml"); ((QueryBase) query).setStartPage(BigInteger.valueOf(pageNumber)); ((QueryBase) query).setChunkSize(getResultsPerPage()); prepareToPost(query, httpRequest); try { responseObject = makeARequestToQuickbooks(httpRequest, credentials, false); if (responseObject instanceof ErrorResponse) { throw new QuickBooksRuntimeException(new ErrorInfo(responseObject)); } } catch (QuickBooksRuntimeException e) { if (e.isAExpiredTokenFault()) { destroyAccessToken(credentials); responseObject = makeARequestToQuickbooks(httpRequest, credentials, false); } else { throw e; } } List intuitList = getListFromIntuitResponse(responseObject, type); if (intuitList != null) { listOfResults.addAll(intuitList); hasMoreResults = (intuitList.size() >= getResultsPerPage()) && !externalPagination; pageNumber++; } else { hasMoreResults = false; } } return listOfResults; }
From source file:com.github.pascalgn.jiracli.web.HttpClient.java
private <T> T doExecute(HttpUriRequest request, boolean retry, Function<HttpEntity, T> function) { LOGGER.debug("Calling URL: {} [{}]", request.getURI(), request.getMethod()); // disable XSRF check: if (!request.containsHeader("X-Atlassian-Token")) { request.addHeader("X-Atlassian-Token", "nocheck"); }//from ww w . j a v a2s. c o m HttpResponse response; try { response = httpClient.execute(request, httpClientContext); } catch (IOException e) { if (Thread.interrupted()) { LOGGER.trace("Could not call URL: {}", request.getURI(), e); throw new InterruptedError(); } else { throw new IllegalStateException("Could not call URL: " + request.getURI(), e); } } LOGGER.debug("Response received ({})", response.getStatusLine().toString().trim()); HttpEntity entity = response.getEntity(); try { if (Thread.interrupted()) { throw new InterruptedError(); } int statusCode = response.getStatusLine().getStatusCode(); if (isSuccess(statusCode)) { T result; try { result = function.apply(entity, Hint.none()); } catch (NotAuthenticatedException e) { if (retry) { resetAuthentication(); setCredentials(); return doExecute(request, false, function); } else { throw e.getCause(); } } catch (RuntimeException e) { if (Thread.interrupted()) { LOGGER.trace("Could not call URL: {}", request.getURI(), e); throw new InterruptedError(); } else { throw e; } } if (Thread.interrupted()) { throw new InterruptedError(); } return result; } else { if (statusCode == HttpURLConnection.HTTP_UNAUTHORIZED) { resetAuthentication(); if (retry) { setCredentials(); return doExecute(request, false, function); } else { String error = readErrorResponse(request.getURI(), entity); LOGGER.debug("Unauthorized [401]: {}", error); throw new AccessControlException("Unauthorized [401]: " + request.getURI()); } } else if (statusCode == HttpURLConnection.HTTP_FORBIDDEN) { resetAuthentication(); checkAccountLocked(response); if (retry) { setCredentials(); return doExecute(request, false, function); } else { throw new AccessControlException("Forbidden [403]: " + request.getURI()); } } else { String status = response.getStatusLine().toString().trim(); String message; if (entity == null) { message = status; } else { String error = readErrorResponse(request.getURI(), entity); message = status + (error.isEmpty() ? "" : ": " + error); } if (Thread.interrupted()) { throw new InterruptedError(); } if (statusCode == HttpURLConnection.HTTP_NOT_FOUND) { throw new NoSuchElementException(message); } else { throw new IllegalStateException(message); } } } } finally { EntityUtils.consumeQuietly(entity); } }
From source file:com.createtank.payments.coinbase.RequestClient.java
private static JsonObject call(CoinbaseApi api, String method, RequestVerb verb, Map<String, String> params, boolean retry, String accessToken) throws IOException { if (api.allowSecure()) { HttpClient client = HttpClientBuilder.create().build(); String url = BASE_URL + method; HttpUriRequest request = null; if (verb == RequestVerb.POST || verb == RequestVerb.PUT) { switch (verb) { case POST: request = new HttpPost(url); break; case PUT: request = new HttpPut(url); break; default: throw new RuntimeException("RequestVerb not implemented: " + verb); }/*from w w w.j a v a 2 s . co m*/ List<BasicNameValuePair> paramsBody = new ArrayList<BasicNameValuePair>(); if (params != null) { List<BasicNameValuePair> convertedParams = convertParams(params); paramsBody.addAll(convertedParams); } ((HttpEntityEnclosingRequestBase) request).setEntity(new UrlEncodedFormEntity(paramsBody, "UTF-8")); } else { if (params != null) { url = url + "?" + createRequestParams(params); } if (verb == RequestVerb.GET) { request = new HttpGet(url); } else if (verb == RequestVerb.DELETE) { request = new HttpDelete(url); } } if (request == null) return null; if (accessToken != null) request.addHeader("Authorization", String.format("Bearer %s", accessToken)); System.out.println("auth header: " + request.getFirstHeader("Authorization")); HttpResponse response = client.execute(request); int code = response.getStatusLine().getStatusCode(); if (code == 401) { if (retry) { api.refreshAccessToken(); call(api, method, verb, params, false, api.getAccessToken()); } else { throw new IOException("Account is no longer valid"); } } else if (code != 200) { throw new IOException("HTTP response " + code + " to request " + method); } String responseString = EntityUtils.toString(response.getEntity()); if (responseString.startsWith("[")) { // Is an array responseString = "{response:" + responseString + "}"; } JsonParser parser = new JsonParser(); JsonObject resp = (JsonObject) parser.parse(responseString); System.out.println(resp.toString()); return resp; } String paramStr = createRequestParams(params); String url = BASE_URL + method; if (paramStr != null && verb == RequestVerb.GET || verb == RequestVerb.DELETE) url += "?" + paramStr; HttpURLConnection conn = (HttpURLConnection) new URL(url).openConnection(); conn.setRequestMethod(verb.name()); if (accessToken != null) conn.setRequestProperty("Authorization", String.format("Bearer %s", accessToken)); if (verb != RequestVerb.GET && verb != RequestVerb.DELETE && paramStr != null) { conn.setDoOutput(true); OutputStreamWriter writer = new OutputStreamWriter(conn.getOutputStream()); writer.write(paramStr); writer.flush(); writer.close(); } int code = conn.getResponseCode(); if (code == 401) { if (retry) { api.refreshAccessToken(); return call(api, method, verb, params, false, api.getAccessToken()); } else { throw new IOException("Account is no longer valid"); } } else if (code != 200) { throw new IOException("HTTP response " + code + " to request " + method); } String responseString = getResponseBody(conn.getInputStream()); if (responseString.startsWith("[")) { responseString = "{response:" + responseString + "}"; } JsonParser parser = new JsonParser(); return (JsonObject) parser.parse(responseString); }