Example usage for org.apache.http.impl.cookie DefaultCookieSpec DefaultCookieSpec

List of usage examples for org.apache.http.impl.cookie DefaultCookieSpec DefaultCookieSpec

Introduction

In this page you can find the example usage for org.apache.http.impl.cookie DefaultCookieSpec DefaultCookieSpec.

Prototype

public DefaultCookieSpec() 

Source Link

Usage

From source file:com.ibm.twitter.TwitterInsights.java

public Sentiment getSentimentCount(String bookTitle, String bookAuthor, String sentimentType) {
    SentimentSearch returnedSentiment = new SentimentSearch();

    try {/*from  ww w . j  a  v  a 2  s.  com*/
        CredentialsProvider credentialsProvider = new BasicCredentialsProvider();
        credentialsProvider.setCredentials(new AuthScope(AuthScope.ANY_HOST, AuthScope.ANY_PORT),
                new UsernamePasswordCredentials(usernameTwitter, passwordTwitter));

        CookieStore cookieStore = new BasicCookieStore();
        CookieSpecProvider csf = new CookieSpecProvider() {
            @Override
            public CookieSpec create(HttpContext context) {
                return new DefaultCookieSpec() {
                    @Override
                    public void validate(Cookie cookie, CookieOrigin origin) throws MalformedCookieException {
                        // Allow all cookies
                    }
                };
            }
        };

        RequestConfig requestConfig = RequestConfig.custom().setCookieSpec("easy").setSocketTimeout(15 * 1000)
                .setConnectTimeout(15 * 1000).build();

        CloseableHttpClient httpClient = HttpClientBuilder.create()
                .setDefaultCredentialsProvider(credentialsProvider).setDefaultCookieStore(cookieStore)
                .setDefaultCookieSpecRegistry(RegistryBuilder.<CookieSpecProvider>create()
                        .register(CookieSpecs.DEFAULT, csf).register("easy", csf).build())
                .setDefaultRequestConfig(requestConfig).build();

        URIBuilder builder = new URIBuilder();
        builder.setScheme("https").setHost(baseURLTwitter).setPath("/api/v1/messages/count").setParameter("q",
                "\"" + bookTitle + "\"" + " AND " + "\"" + bookAuthor + "\"" + " AND " + "sentiment:"
                        + sentimentType);
        URI uri = builder.build();
        HttpGet httpGet = new HttpGet(uri);

        httpGet.setHeader("Content-Type", "text/plain");
        HttpResponse httpResponse = httpClient.execute(httpGet);

        if (httpResponse.getStatusLine().getStatusCode() == 200) {
            BufferedReader rd = new BufferedReader(
                    new InputStreamReader(httpResponse.getEntity().getContent(), "UTF-8"));

            // Read all the books from the best seller list
            ObjectMapper mapper = new ObjectMapper();
            returnedSentiment = mapper.readValue(rd, SentimentSearch.class);
        } else {
            logger.error("could not get tweets from IBM insights http code {}",
                    httpResponse.getStatusLine().getStatusCode());
        }

    } catch (Exception e) {
        logger.error("Twitter error: {}", e.getMessage());
    }

    return new Sentiment(sentimentType, returnedSentiment.getCount());
}

From source file:com.ibm.twitter.TwitterInsights.java

public TweetList getTweetList(String bookTitle, String bookAuthor) {
    TweetList returnedTweets = new TweetList();

    try {/*from  ww  w  . j  av  a  2  s .c  om*/

        CredentialsProvider credentialsProvider = new BasicCredentialsProvider();
        credentialsProvider.setCredentials(new AuthScope(AuthScope.ANY_HOST, AuthScope.ANY_PORT),
                new UsernamePasswordCredentials(usernameTwitter, passwordTwitter));

        CookieStore cookieStore = new BasicCookieStore();
        CookieSpecProvider csf = new CookieSpecProvider() {
            @Override
            public CookieSpec create(HttpContext context) {
                return new DefaultCookieSpec() {
                    @Override
                    public void validate(Cookie cookie, CookieOrigin origin) throws MalformedCookieException {
                        // Allow all cookies
                    }
                };
            }
        };

        RequestConfig requestConfig = RequestConfig.custom().setCookieSpec("easy").setSocketTimeout(10 * 1000)
                .setConnectTimeout(10 * 1000).build();

        CloseableHttpClient httpClient = HttpClientBuilder.create()
                .setDefaultCredentialsProvider(credentialsProvider).setDefaultCookieStore(cookieStore)
                .setDefaultCookieSpecRegistry(RegistryBuilder.<CookieSpecProvider>create()
                        .register(CookieSpecs.DEFAULT, csf).register("easy", csf).build())
                .setDefaultRequestConfig(requestConfig).build();

        URIBuilder builder = new URIBuilder();
        builder.setScheme("https").setHost(baseURLTwitter).setPath("/api/v1/messages/search")
                .setParameter("q", "\"" + bookTitle + "\"" + " AND " + "\"" + bookAuthor + "\"")
                .setParameter("size", "5");
        URI uri = builder.build();
        HttpGet httpGet = new HttpGet(uri);

        httpGet.setHeader("Content-Type", "text/plain");
        HttpResponse httpResponse = httpClient.execute(httpGet);

        if (httpResponse.getStatusLine().getStatusCode() == 200) {
            BufferedReader rd = new BufferedReader(
                    new InputStreamReader(httpResponse.getEntity().getContent(), "UTF-8"));

            // Read all the books from the best seller list
            ObjectMapper mapper = new ObjectMapper();
            returnedTweets = mapper.readValue(rd, TweetList.class);
        }
    } catch (Exception e) {
        logger.error("Twitter error: {}", e.getMessage());
    }

    return returnedTweets;
}

From source file:org.elasticsearch.xpack.security.authc.saml.SamlAuthenticationIT.java

private String getCookie(String name, HttpExchange http) throws IOException {
    try {/*  w w  w . ja v  a2 s  .co  m*/
        final String cookies = http.getRequestHeaders().getFirst("Cookie");
        if (cookies == null) {
            return null;
        }
        Header header = new BasicHeader("Cookie", cookies);
        final URI serverUri = getWebServerUri();
        final URI requestURI = http.getRequestURI();
        final CookieOrigin origin = new CookieOrigin(serverUri.getHost(), serverUri.getPort(),
                requestURI.getPath(), false);
        final List<Cookie> parsed = new DefaultCookieSpec().parse(header, origin);
        return parsed.stream().filter(c -> name.equals(c.getName())).map(c -> c.getValue()).findFirst()
                .orElse(null);
    } catch (MalformedCookieException e) {
        throw new IOException("Cannot read cookies", e);
    }
}