Example usage for org.apache.http.impl.client HttpClients custom

List of usage examples for org.apache.http.impl.client HttpClients custom

Introduction

In this page you can find the example usage for org.apache.http.impl.client HttpClients custom.

Prototype

public static HttpClientBuilder custom() 

Source Link

Document

Creates builder object for construction of custom CloseableHttpClient instances.

Usage

From source file:com.xively.client.http.HttpClientBuilder.java

/**
 * @return an HttpClient with config as specified in this builder
 *//*w w w.j a v a  2s  .c o m*/
HttpClient getHttpClient() {
    if (httpClient == null) {
        httpClient = HttpClients.custom().setRetryHandler(retryHandler).build();
        if (retryHandler == null) {
            retryHandler = new DefaultHttpRequestRetryHandler(0, false);
        }

        //httpClient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, connectionTimeout);
        //httpClient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, socketTimeout);
    }
    return httpClient;
}

From source file:hu.dolphio.tprttapi.service.RttServiceImpl.java

@Override
public Collection<ReportElementTO> loadRttTrackingsFromReport()
        throws URISyntaxException, IOException, ClientException {

    if ((projectId == null && reportId == null) || (projectId != null && reportId != null)) {
        throw new ClientException("Project ID or Report ID must be set!");
    }/*from  w  ww  .j  av a2  s.  co m*/

    BasicCookieStore cookieStore = new BasicCookieStore();
    CloseableHttpClient httpclient = HttpClients.custom().setDefaultCookieStore(cookieStore)
            .setDefaultRequestConfig(config).build();

    HttpEntity httpEntity = new InputStreamEntity(new ByteArrayInputStream(
            new ObjectMapper().writerWithDefaultPrettyPrinter().writeValueAsString(new Object() {
                public String username = propertyReader.getRttUserName();
                public String password = propertyReader.getRttPassword();
            }).getBytes("UTF-8")));

    HttpUriRequest login = RequestBuilder.post().setUri(new URI(propertyReader.getRttHost() + "/login"))
            .setEntity(httpEntity).setHeader("Accept-Language", "sk,en-US;q=0.8,en;q=0.6,hu;q=0.4")
            .setHeader("Content-Type", "application/json;charset=utf-8").build();
    CloseableHttpResponse loginResponse = httpclient.execute(login);
    LOG.debug("RTT login response: " + loginResponse);

    if (HttpResponseStatus
            .getStatusByCode(loginResponse.getStatusLine().getStatusCode()) != HttpResponseStatus.SUCCESS) {
        throw new ClientException(
                "[" + loginResponse.getStatusLine().getStatusCode() + "] Login to RTT failed!");
    }

    EntityUtils.consume(loginResponse.getEntity());

    StringBuilder postUriBuilder = new StringBuilder().append(propertyReader.getRttHost())
            .append(reportId == null ? propertyReader.getRttReportByProjectUrl()
                    : propertyReader.getRttReportByReportUrl())
            .append(reportId == null ? projectId : reportId).append("/json?startDate=").append(dateFrom)
            .append("&endDate=").append(dateTo);

    LOG.trace("RTT report query: " + postUriBuilder.toString());

    HttpGet get = new HttpGet(postUriBuilder.toString());
    CloseableHttpResponse rttResponse = httpclient.execute(get);

    if (HttpResponseStatus
            .getStatusByCode(rttResponse.getStatusLine().getStatusCode()) != HttpResponseStatus.SUCCESS) {
        throw new ClientException("[" + rttResponse.getStatusLine().getStatusCode()
                + "] Downloading tracking information from RTT failed!");
    }
    String trackingsJson = IOUtils.toString(rttResponse.getEntity().getContent(), "utf-8");

    Collection<ReportElementTO> fromJson = new ObjectMapper().readValue(trackingsJson,
            new TypeReference<Collection<ReportElementTO>>() {
            });

    return fromJson;
}

From source file:com.quartzdesk.executor.core.job.UrlInvokerJob.java

@Override
protected void executeJob(final JobExecutionContext context) throws JobExecutionException {
    log.debug("Inside job: {}", context.getJobDetail().getKey());
    JobDataMap jobDataMap = context.getMergedJobDataMap();

    // url (required)
    final String url = jobDataMap.getString(JDM_KEY_URL);
    if (url == null) {
        throw new JobExecutionException("Missing required '" + JDM_KEY_URL + "' job data map parameter.");
    }//from   ww  w.  j ava2  s. c  o m

    // username (optional)
    String username = jobDataMap.getString(JDM_KEY_USERNAME);
    // password (optional)
    String password = jobDataMap.getString(JDM_KEY_PASSWORD);

    CloseableHttpClient httpClient;
    if (username != null && password != null) {
        // use HTTP basic authentication
        CredentialsProvider credsProvider = new BasicCredentialsProvider();
        credsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(username, password));

        httpClient = HttpClients.custom().setDefaultCredentialsProvider(credsProvider).build();
    } else {
        // use no HTTP authentication
        httpClient = HttpClients.custom().build();
    }

    try {
        HttpPost httpPost = new HttpPost(url);

        ResponseHandler<String> responseHandler = new ResponseHandler<String>() {
            @Override
            public String handleResponse(HttpResponse httpResponse) throws IOException {
                int status = httpResponse.getStatusLine().getStatusCode();

                //context.setResult( Integer.toString( status ) );

                if (status >= 200 && status < 300) {
                    HttpEntity entity = httpResponse.getEntity();
                    return entity == null ? null : EntityUtils.toString(entity);
                } else {
                    throw new ClientProtocolException(
                            "URL: " + url + " returned unexpected response status code: " + status);
                }
            }
        };

        log.debug("HTTP request line: {}", httpPost.getRequestLine());

        log.info("Invoking target URL: {}", url);
        String responseText = httpClient.execute(httpPost, responseHandler);

        log.debug("Response text: {}", responseText);

        if (!responseText.trim().isEmpty()) {
            /*
             * We use the HTTP response text as the Quartz job execution result. This code can then be easily
             * viewed in the Execution History in the QuartzDesk GUI and it can be, for example, used to trigger
             * execution notifications.
             */
            context.setResult(responseText);
        }

    } catch (IOException e) {
        throw new JobExecutionException("Error invoking URL: " + url, e);
    } finally {
        try {
            httpClient.close();
        } catch (IOException e) {
            log.error("Error closing HTTP client.", e);
        }
    }
}

From source file:org.springframework.http.server.reactive.ServerHttpsRequestIntegrationTests.java

@Before
public void setup() throws Exception {
    this.server.setHandler(new CheckRequestHandler());
    this.server.afterPropertiesSet();
    this.server.start();

    // Set dynamically chosen port
    this.port = this.server.getPort();

    SSLContextBuilder builder = new SSLContextBuilder();
    builder.loadTrustMaterial(new TrustSelfSignedStrategy());
    SSLConnectionSocketFactory socketFactory = new SSLConnectionSocketFactory(builder.build(),
            NoopHostnameVerifier.INSTANCE);
    CloseableHttpClient httpclient = HttpClients.custom().setSSLSocketFactory(socketFactory).build();
    HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(
            httpclient);//from   w  w  w  .  j  av a 2 s .c o m
    this.restTemplate = new RestTemplate(requestFactory);
}

From source file:name.martingeisse.servlet_httpclient.sidekicks.fakecdn.FakeCdn.java

/**
 * /*from  w  w w. j  a v a 2  s. co  m*/
 */
private HttpResponse fetchResponse(String url) throws IOException {
    HttpClientConnectionManager connectionManager = new BasicHttpClientConnectionManager();
    HttpClient client = HttpClients.custom().setConnectionManager(connectionManager)
            .setDefaultCookieStore(new NullCookieStore()).build();
    while (true) {
        HttpUriRequest request = new HttpGet(url);
        HttpResponse response = client.execute(request);
        int statusCode = response.getStatusLine().getStatusCode();
        if (statusCode < 300 || statusCode >= 400) {
            return response;
        }
        url = response.getFirstHeader("Location").getValue();
        if (url == null) {
            throw new IOException("redirect without location header");
        }
    }
}

From source file:io.fabric8.kit.build.service.docker.access.hc.util.AbstractNativeClientBuilder.java

@Override
public CloseableHttpClient buildBasicClient() throws IOException {
    BasicHttpClientConnectionManager manager = new BasicHttpClientConnectionManager(registry, null, null,
            dnsResolver);//from   ww  w.  j  a  v  a 2  s.  c om
    return HttpClients.custom().setConnectionManager(manager).build();
}

From source file:org.pentaho.di.core.util.HttpClientManager.java

public CloseableHttpClient createDefaultClient() {
    return HttpClients.custom().setConnectionManager(manager).build();
}

From source file:com.dnastack.bob.service.fetcher.util.HttpUtils.java

@PostConstruct
private void init() {
    RequestConfig config = RequestConfig.custom().setSocketTimeout(REQUEST_TIMEOUT * 1000)
            .setConnectTimeout(REQUEST_TIMEOUT * 1000).setConnectionRequestTimeout(REQUEST_TIMEOUT * 1000)
            .build();/*from   www  . j  a va 2  s  . co  m*/
    httpClient = HttpClients.custom().setDefaultRequestConfig(config).build();
}

From source file:org.apache.sling.etcd.testing.EtcdHandlerTest.java

@Before
public void setUp() {
    connectionManager = new PoolingHttpClientConnectionManager();
    final RequestConfig requestConfig = RequestConfig.custom().setSocketTimeout(10000).setConnectTimeout(10000)
            .setRedirectsEnabled(true).setStaleConnectionCheckEnabled(true).build();
    httpClient = HttpClients.custom().setConnectionManager(connectionManager)
            .setDefaultRequestConfig(requestConfig).build();
}

From source file:com.intuit.wasabi.export.rest.impl.DefaultRestDriver.java

private HttpClientBuilder createHttpClientBuilder(final Driver.Configuration configuration) {
    PoolingHttpClientConnectionManager poolingHttpClientConnectionManager = new PoolingHttpClientConnectionManager();

    poolingHttpClientConnectionManager.setMaxTotal(200);
    poolingHttpClientConnectionManager.setDefaultMaxPerRoute(50);

    RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(configuration.getConnectionTimeout())
            .setSocketTimeout(configuration.getSocketTimeout()).build();

    return HttpClients.custom().setConnectionManager(poolingHttpClientConnectionManager)
            .setDefaultRequestConfig(requestConfig);
}