Example usage for org.apache.http.client.methods HttpUriRequest getAllHeaders

List of usage examples for org.apache.http.client.methods HttpUriRequest getAllHeaders

Introduction

In this page you can find the example usage for org.apache.http.client.methods HttpUriRequest getAllHeaders.

Prototype

Header[] getAllHeaders();

Source Link

Usage

From source file:org.jets3t.service.utils.SignatureUtils.java

/**
 * Build the canonical request string for a REST/HTTP request to a storage
 * service for the AWS Request Signature version 4.
 *
 * {@link "http://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-header-based-auth.html"}
 *
 * @param httpMethod//  w  ww  .j  av  a 2  s .  com
 * the request's HTTP method just prior to sending
 * @param requestPayloadHexSha256Hash
 * hex-encoded SHA256 hash of request's payload.
 * May be null or "" in which case the default SHA256 hash of an empty string is used.
 * May also be "UNSIGNED-PAYLOAD" for generating pre-signed request signatures.
 * @return canonical request string according to AWS Request Signature version 4
 */
public static String awsV4BuildCanonicalRequestString(HttpUriRequest httpMethod,
        String requestPayloadHexSha256Hash) {
    URI uri = httpMethod.getURI();
    String httpRequestMethod = httpMethod.getMethod();

    Map<String, String> headersMap = new HashMap<String, String>();
    Header[] headers = httpMethod.getAllHeaders();
    for (Header header : headers) {
        // Trim whitespace and make lower-case for header names
        String name = header.getName().trim().toLowerCase();
        // Trim whitespace for header values
        String value = header.getValue().trim();
        headersMap.put(name, value);
    }

    return awsV4BuildCanonicalRequestString(uri, httpRequestMethod, headersMap, requestPayloadHexSha256Hash);
}

From source file:com.cloudmine.api.rest.VolleyAsynchronousHttpClient.java

private Map<String, String> getHeadersAsMap(HttpUriRequest command) {
    final Map<String, String> headers = new HashMap<String, String>();
    for (Header header : command.getAllHeaders()) {
        headers.put(header.getName(), header.getValue());
    }/*from w ww .  j a v  a  2  s .  c  om*/
    return headers;
}

From source file:org.craftercms.engine.http.impl.HttpProxyImpl.java

protected void copyActualResponseHeaders(HttpUriRequest httpRequest, HttpServletResponse response) {
    Header[] headers = httpRequest.getAllHeaders();
    for (Header header : headers) {
        String headerName = header.getName();
        String headerValue = header.getValue();

        if (!headerName.equals("Transfer-Encoding") && !header.equals("chunked")) {
            if (logger.isTraceEnabled()) {
                logger.trace(getRequestDescription(httpRequest) + " copying response header " + headerName
                        + ": " + headerValue);
            }//from  w w w.  j a v a 2s .c om

            if (response.containsHeader(headerName)) {
                response.setHeader(headerName, headerValue);
            } else {
                response.addHeader(headerName, headerValue);
            }
        }
    }
}

From source file:com.google.android.apps.authenticator.timesync.NetworkTimeProviderTest.java

public void testRequest() throws Exception {
    withHttpRequestThrowing(new IOException("arbitrary"));
    try {/*from   w w w  .j  a  va 2 s.  co m*/
        mProvider.getNetworkTime();
    } catch (Exception expected) {
    }

    ArgumentCaptor<HttpUriRequest> requestCaptor = ArgumentCaptor.forClass(HttpUriRequest.class);
    verify(mMockHttpClient).execute(requestCaptor.capture());

    HttpUriRequest request = requestCaptor.getValue();
    assertEquals("HEAD", request.getMethod());
    assertEquals("https://www.google.com", request.getURI().toString());
    MoreAsserts.assertEmpty(Arrays.asList(request.getAllHeaders()));
}

From source file:org.ovirt.engine.sdk4.internal.HttpConnection.java

/**
 * Injects HTTP headers in to request/* w ww .  j  av  a 2  s.c  o  m*/
 *
 * @param request
 */
private void injectHeaders(HttpUriRequest request) {
    List<Header> updated = excludeNullHeaders(request.getAllHeaders());
    if (updated != null && !updated.isEmpty()) {
        request.setHeaders(updated.toArray(new Header[updated.size()]));
    }

    for (NameValuePair nameValuePair : URLEncodedUtils.parse(request.getURI(), HTTP.UTF_8)) {
        if (nameValuePair.getName().equalsIgnoreCase("all_content")) {
            request.addHeader("All-Content", nameValuePair.getValue());
        }
    }

    request.addHeader("Version", "4");
    request.addHeader("Content-type", "application/xml");
    request.addHeader("User-Agent", "JavaSDK");
    request.addHeader("Accept", "application/xml");
    request.addHeader("Authorization", "Bearer " + getAccessToken());
}

From source file:com.betfair.cougar.client.HttpClientCougarRequestFactoryTest.java

@Test
public void shouldAddNewHeadersWithoutDeleteTheExistingHeaders() {

    HttpUriRequest request = new HttpGet();
    request.setHeader("X-UUID", "1111-111-111-111");

    List<Header> headers = new ArrayList<>(1);
    headers.add(new BasicHeader("NEW-HEADER", "value"));
    factory.addHeaders(request, headers);

    assertEquals(2, request.getAllHeaders().length);
    assertEquals("1111-111-111-111", request.getFirstHeader("X-UUID").getValue());
    assertEquals("value", request.getFirstHeader("NEW-HEADER").getValue());
}

From source file:gobblin.http.ApacheHttpRequest.java

@Override
public String toString() {
    HttpUriRequest request = getRawRequest();
    StringBuilder outBuffer = new StringBuilder();
    String endl = "\n";
    outBuffer.append("ApacheHttpRequest Info").append(endl);
    outBuffer.append("type: HttpUriRequest").append(endl);
    outBuffer.append("uri: ").append(request.getURI().toString()).append(endl);
    outBuffer.append("headers: ");
    Arrays.stream(request.getAllHeaders()).forEach(header -> outBuffer.append("[").append(header.getName())
            .append(":").append(header.getValue()).append("] "));
    outBuffer.append(endl);//from w ww  .  j a  v  a  2 s . c om

    if (request instanceof HttpEntityEnclosingRequest) {
        try {
            String body = EntityUtils.toString(((HttpEntityEnclosingRequest) request).getEntity());
            outBuffer.append("body: ").append(body).append(endl);
        } catch (IOException e) {
            outBuffer.append("body: ").append(e.getMessage()).append(endl);
        }
    }
    return outBuffer.toString();
}

From source file:com.yahoo.validatar.execution.rest.JSON.java

/**
 * Makes the request and returns the String response using the given client, request and query.
 *
 * @param client The HttpClient to use.//from  w w  w  . j  a va  2 s  .  c o m
 * @param request The HttpUriRequest to make.
 * @param query The Query object being run.
 * @return The String response of the call, null if exception (query is failed).
 */
String makeRequest(HttpClient client, HttpUriRequest request, Query query) {
    try {
        log.info("{}ing to {} with headers {}", request.getMethod(), request.getURI(), request.getAllHeaders());
        HttpResponse response = client.execute(request);
        StatusLine line = response.getStatusLine();
        log.info("Received {}: {} with headers {}", line.getStatusCode(), line.getReasonPhrase(),
                response.getAllHeaders());
        String data = EntityUtils.toString(response.getEntity());
        log.info("Received response as string {}", data);
        return data;
    } catch (IOException ioe) {
        log.error("Could not execute request", ioe);
        query.setFailure("Could not execute request");
        query.addMessage(ioe.toString());
    } catch (NullPointerException npe) {
        log.error("Received no response", npe);
        query.setFailure("Received no response");
        query.addMessage(npe.toString());
    }
    return null;
}

From source file:com.betfair.cougar.client.HttpClientCougarRequestFactoryTest.java

@Test
public void shouldCreateGetRequest() {
    HttpUriRequest httpExchange = factory.create(uri, "GET", mockMessage, mockMarshaller, contentType,
            mockCallContext, mockTimeConstraints);

    assertTrue(httpExchange instanceof HttpGet);
    assertEquals("GET", httpExchange.getMethod());
    assertEquals(uri, httpExchange.getURI().toString());
    assertEquals(5, httpExchange.getAllHeaders().length);
}

From source file:com.betfair.cougar.client.HttpClientCougarRequestFactoryTest.java

@Test
public void shouldCreatePostRequest() throws Exception {
    HttpUriRequest httpExchange = factory.create(uri, "POST", mockMessage, mockMarshaller, contentType,
            mockCallContext, mockTimeConstraints);

    assertTrue(httpExchange instanceof HttpPost);
    assertEquals("POST", httpExchange.getMethod());
    assertEquals(uri, httpExchange.getURI().toString());
    assertEquals(5, httpExchange.getAllHeaders().length);
    assertEquals(contentType + "; charset=utf-8",
            ((HttpPost) httpExchange).getEntity().getContentType().getValue());
    assertEquals("some post data", IOUtils.toString(((HttpPost) httpExchange).getEntity().getContent()));
}