Example usage for org.springframework.http.client ClientHttpResponse getStatusCode

List of usage examples for org.springframework.http.client ClientHttpResponse getStatusCode

Introduction

In this page you can find the example usage for org.springframework.http.client ClientHttpResponse getStatusCode.

Prototype

HttpStatus getStatusCode() throws IOException;

Source Link

Document

Return the HTTP status code as an HttpStatus enum value.

Usage

From source file:de.zib.gndms.gndmc.test.gorfx.ESGFGet.java

@Override
protected void run() throws Exception {

    SetupSSL setupSSL = new SetupSSL();
    setupSSL.setKeyStoreLocation(keyStoreLocation);
    setupSSL.prepareKeyStore(passwd, passwd);
    setupSSL.setupDefaultSSLContext(passwd);

    final RestTemplate rt = new RestTemplate();

    rt.execute(url, HttpMethod.GET, null, new ResponseExtractor<Object>() {
        @Override/*from w w w  .j  a v a 2 s.co  m*/
        public Object extractData(final ClientHttpResponse response) throws IOException {

            String url = null;
            String cookieTmp = null;
            System.out.println(response.getStatusCode().toString());
            for (String s : response.getHeaders().keySet())
                for (String v : response.getHeaders().get(s)) {
                    System.out.println(s + ":" + v);
                    if ("Location".equals(s))
                        url = v;
                    else if ("Set-Cookie".equals(s))
                        cookieTmp = v;
                }
            final String cookie = cookieTmp.split(";")[0];

            if (url != null)
                rt.execute(decodeUrl(url), HttpMethod.GET, new RequestCallback() {
                    @Override
                    public void doWithRequest(final ClientHttpRequest request) throws IOException {

                        System.out.println("setting cookie: " + cookie);
                        request.getHeaders().set("Cookie", cookie);
                    }
                }, new ResponseExtractor<Object>() {
                    @Override
                    public Object extractData(final ClientHttpResponse response) throws IOException {

                        System.out.println(response.getStatusCode().toString());
                        System.out.println("Received data, copying");
                        InputStream is = response.getBody();
                        OutputStream os = new FileOutputStream(off);
                        StreamCopyNIO.copyStream(is, os);
                        System.out.println("Done");
                        return null;
                    }
                });

            return null;
        }
    });
}

From source file:org.springframework.social.cloudplaylists.api.impl.CloudPlaylistsErrorHandler.java

@Override
public void handleError(ClientHttpResponse response) throws IOException {

    Map errorDetails = extractErrorDetailsFromResponse(response);
    handleCloudPlaylistsError(response.getStatusCode(), errorDetails);
    handleUncategorizedError(response, errorDetails);
}

From source file:com.github.cric.common.service.cripapi.CricApiConfiguration.java

private ClientHttpRequestInterceptor outgoingCricApiRequestLoggerInterceptor() {

    return (request, body, execution) -> {

        String requestUrl = request.getURI().toString();
        LOG.debug("sending request to {}", requestUrl);

        StopWatch watch = new StopWatch();
        watch.start();//from w ww .j av  a 2  s .  c  om
        ClientHttpResponse clientResponse = execution.execute(request, body);
        watch.stop();

        LOG.debug("response received from {} status {} time taken {}", requestUrl,
                clientResponse.getStatusCode(), watch.getTime());
        return clientResponse;
    };
}

From source file:org.springframework.social.linkedin.api.impl.LinkedInErrorHandler.java

@Override
public void handleError(ClientHttpResponse response) throws IOException {
    Map<String, Object> errorDetails = extractErrorDetailsFromResponse(response);
    String message = (String) errorDetails.get("message");
    HttpStatus statusCode = response.getStatusCode();
    if (statusCode.equals(HttpStatus.UNAUTHORIZED)) {
        throw new NotAuthorizedException("linkedIn", message);
    } else if (statusCode.equals(HttpStatus.FORBIDDEN)) {
        if (message.contains("Throttle")) {
            throw new RateLimitExceededException("linkedin");
        } else {/*from w  w  w  .  j a v a2  s.c o m*/
            throw new InsufficientPermissionException("linkedin");
        }
    } else if (statusCode.equals(HttpStatus.NOT_FOUND)) {
        throw new ResourceNotFoundException("linkedin", message);
    }

    handleUncategorizedError(response);
}

From source file:org.springframework.social.wechat.api.impl.WechatErrorHandler.java

@Override
public void handleError(ClientHttpResponse response) throws IOException {
    Map<String, String> errorDetails = extractErrorDetailsFromResponse(response);
    handleWechatError(response.getStatusCode(), errorDetails);
    if (errorDetails == null) {
        handleUncategorizedError(response, errorDetails);
    }/*from  www .  jav  a 2  s  .c  o m*/

}

From source file:org.zalando.riptide.CaptureTest.java

@Test
public void shouldCaptureResponse() throws IOException {
    server.expect(requestTo(url)).andRespond(
            withSuccess().body(new ClassPathResource("account.json")).contentType(APPLICATION_JSON));

    final ClientHttpResponse response = unit.execute(GET, url)
            .dispatch(status(), on(OK).capture(), anyStatus().call(this::fail)).to(ClientHttpResponse.class);

    assertThat(response.getStatusCode(), is(OK));
    assertThat(response.getHeaders().getContentType(), is(APPLICATION_JSON));
}

From source file:org.bremersee.common.web.client.ResponseErrorHandlerImpl.java

@Override
public boolean hasError(final ClientHttpResponse response) throws IOException {
    boolean hasError;
    try {//  w  w w.j a  va2  s  . co m
        HttpStatus statusCode = response.getStatusCode();
        hasError = statusCode.series() == HttpStatus.Series.CLIENT_ERROR
                || statusCode.series() == HttpStatus.Series.SERVER_ERROR;

    } catch (Throwable t) { // NOSONAR
        hasError = response.getRawStatusCode() >= 400;
    }
    if (log.isTraceEnabled()) {
        log.trace("Response is error? " + hasError);
    }
    return hasError;
}

From source file:de.zib.gndms.gndmc.utils.HTTPGetter.java

private EnhancedResponseExtractor get(final HttpMethod method, final String url,
        final RequestCallback requestCallback) throws NoSuchAlgorithmException, KeyManagementException {
    CustomSSLContextRequestFactory requestFactory = new CustomSSLContextRequestFactory(sslContext);
    RestTemplate rt = new RestTemplate(requestFactory);
    requestFactory.setConnectTimeout(getTimeout());
    requestFactory.setReadTimeout(getTimeout());

    try {//w  w  w .  java2  s .c  o m
        return rt.execute(url, method, requestCallback, new ResponseExtractor<EnhancedResponseExtractor>() {

            // call the EnhancedResponseExtractor registered for this response.statusCode
            @Override
            public EnhancedResponseExtractor extractData(ClientHttpResponse response) throws IOException {
                int statusCode = response.getStatusCode().value();

                EnhancedResponseExtractor enhancedResponseExtractor = extractorMap.get(statusCode);
                if (null == enhancedResponseExtractor)
                    enhancedResponseExtractor = extractorMap.get(statusCode / 100);
                if (null == enhancedResponseExtractor)
                    enhancedResponseExtractor = extractorMap.get(0);
                if (null == enhancedResponseExtractor)
                    throw new IllegalStateException(
                            "No default ResponseExtractor registered. THIS IS NOT HAPPENING :/");

                enhancedResponseExtractor.extractData(url, response);

                return enhancedResponseExtractor;
            }

        });
    } catch (ResourceAccessException e) {
        throw new RuntimeException("Could not connect to " + url + ": " + e.getMessage(), e);
    }
}

From source file:client.PerfRequestSyncInterceptor.java

@Override
public ClientHttpResponse intercept(HttpRequest hr, byte[] bytes, ClientHttpRequestExecution chre)
        throws IOException {
    stopwatch.start();/*w  ww  .j  a v  a 2 s. co m*/
    long time = System.currentTimeMillis();
    ClientHttpResponse response = chre.execute(hr, bytes);
    stopwatch.stop();

    LOG.info(hr.getMethod() + "@ uri=" + hr.getURI() + " payload(kB)= " + (bytes.length / 1024)
            + ", response_time=" + stopwatch.elapsedTime(TimeUnit.MILLISECONDS) + ", response_code="
            + response.getStatusCode().value());

    return response;
}

From source file:org.springframework.social.weibo.api.impl.WeiboErrorHandler.java

@Override
public void handleError(ClientHttpResponse response) throws IOException {
    Map<String, String> errorDetails = extractErrorDetailsFromResponse(response);
    if (errorDetails == null) {
        handleUncategorizedError(response, errorDetails);
    }//from  w w  w  .j ava2s.  c o m
    handleWeiboError(response.getStatusCode(), errorDetails);

    // if not otherwise handled, do default handling and wrap with UncategorizedApiException
    handleUncategorizedError(response, errorDetails);
}