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

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

Introduction

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

Prototype

public static CloseableHttpClient createDefault() 

Source Link

Document

Creates CloseableHttpClient instance with default configuration.

Usage

From source file:zz.pseas.ghost.login.weibo.SinaWeiboLogin.java

public static String getSinaCookie(String username, String password) throws Exception {

    StringBuilder sb = new StringBuilder();
    HtmlUnitDriver driver = new HtmlUnitDriver(true);
    // driver.setSocksProxy("127.0.0.1", 1080);
    // driver.setProxy("127.0.0.1", 1080);
    // HtmlOption htmlOption=new Ht
    // WebDriver driver = new FirefoxDriver();
    driver.setJavascriptEnabled(true);//from   w  w w . j av  a2  s  .co  m
    // user agent switcher//
    String loginAddress = "http://login.weibo.cn/login/";
    driver.get(loginAddress);
    WebElement ele = driver.findElementByCssSelector("img");
    String src = ele.getAttribute("src");
    String cookie = concatCookie(driver);

    CloseableHttpClient httpclient = HttpClients.createDefault();
    RequestConfig requestConfig = RequestConfig.custom().setSocketTimeout(1000).setConnectTimeout(1000)
            .setCookieSpec(cookie).build();

    HttpGet httpget = new HttpGet(src);
    httpget.setConfig(requestConfig);
    CloseableHttpResponse response = httpclient.execute(httpget);

    HttpEntity entity;
    String result = null;
    try {

        if (response.getStatusLine().getStatusCode() != HttpURLConnection.HTTP_OK) {
            // try again//
        }
        entity = response.getEntity();

        if (entity != null) {
            InputStream instream = entity.getContent();
            try {
                // do something useful
                InputStream inputStream = entity.getContent();
                BufferedImage img = ImageIO.read(inputStream);
                // deal with the weibo captcha //
                String picName = LoginUtils.getCurrentTime("yyyyMMdd-hhmmss");
                // captcha//
                LoginUtils.getCaptchaDir();
                picName = "./captcha/captcha-" + picName + ".png";
                ImageIO.write(img, "png", new File(picName));
                String userInput = new CaptchaFrame(img).getUserInput();
                WebElement mobile = driver.findElementByCssSelector("input[name=mobile]");
                mobile.sendKeys(username);
                WebElement pass = driver.findElementByCssSelector("input[name^=password]");
                pass.sendKeys(password);
                WebElement code = driver.findElementByCssSelector("input[name=code]");
                code.sendKeys(userInput);
                WebElement rem = driver.findElementByCssSelector("input[name=remember]");
                rem.click();
                WebElement submit = driver.findElementByCssSelector("input[name=submit]");
                // ?//
                submit.click();
                result = concatCookie(driver);
                driver.close();
            } finally {
                instream.close();
            }
        }
    } finally {
        response.close();
    }

    if (result.contains("gsid_CTandWM")) {
        return result;
    } else {
        // throw new Exception("weibo login failed");
        return null;
    }
}

From source file:com.brokenevent.nanotests.http.TestRequestImpl.java

TestRequestImpl(String resource) {
    client = HttpClients.createDefault();
    this.resource = resource;
}

From source file:org.wildfly.test.integration.microprofile.health.MicroProfileHealthHTTPEndpointTestCase.java

void checkGlobalOutcome(ManagementClient managementClient, boolean mustBeUP, String probeName)
        throws IOException {

    final String healthURL = "http://" + managementClient.getMgmtAddress() + ":"
            + managementClient.getMgmtPort() + "/health";

    try (CloseableHttpClient client = HttpClients.createDefault()) {

        CloseableHttpResponse resp = client.execute(new HttpGet(healthURL));
        assertEquals(mustBeUP ? 200 : 503, resp.getStatusLine().getStatusCode());

        String content = getContent(resp);
        resp.close();//from   ww  w. j a  v  a 2 s. c  o m

        try (JsonReader jsonReader = Json.createReader(new StringReader(content))) {
            JsonObject payload = jsonReader.readObject();
            String outcome = payload.getString("outcome");
            assertEquals(mustBeUP ? "UP" : "DOWN", outcome);

            if (probeName != null) {
                for (JsonValue check : payload.getJsonArray("checks")) {
                    if (probeName.equals(check.asJsonObject().getString("name"))) {
                        // probe name found
                        assertEquals(mustBeUP ? "UP" : "DOWN", check.asJsonObject().getString("state"));
                        return;
                    }
                }
                fail("Probe named " + probeName + " not found in " + content);
            }
        }
    }
}

From source file:org.modeshape.jcr.index.elasticsearch.client.EsClient.java

/**
 * Tests for the index existence with specified name.
 *
 * @param name the name of the index to test.
 * @return true if index with given name exists and false otherwise.
 * @throws IOException communication exception.
 *//* w ww .  j a  v a2 s. co  m*/
public boolean indexExists(String name) throws IOException {
    CloseableHttpClient client = HttpClients.createDefault();
    HttpHead head = new HttpHead(String.format("http://%s:%d/%s", host, port, name));
    try {
        CloseableHttpResponse response = client.execute(head);
        return response.getStatusLine().getStatusCode() == HttpStatus.SC_OK;
    } finally {
        head.releaseConnection();
    }
}

From source file:com.effektif.adapter.service.AbstractAdapterService.java

public Adapter refreshAdapter(String adapterId) {
    Adapter adapter = getAdapter(adapterId);
    if (adapter.url != null) {
        try {/*from w  w  w  .  j a v  a2s. c om*/
            CloseableHttpClient httpClient = HttpClients.createDefault();

            HttpGet request = new HttpGet(adapter.url + "/descriptors");
            CloseableHttpResponse response = httpClient.execute(request);
            int status = response.getStatusLine().getStatusCode();
            if (200 != status) {
                throw new RuntimeException("Adapter didn't get it and answered " + status);
            }

            HttpEntity httpEntity = response.getEntity();
            if (httpEntity != null) {
                InputStream inputStream = httpEntity.getContent();
                InputStreamReader reader = new InputStreamReader(inputStream);
                AdapterDescriptors adapterDescriptors = jsonMapper.read(reader, AdapterDescriptors.class);
                adapter.setActivityDescriptors(adapterDescriptors);
                saveAdapter(adapter);
            }

        } catch (IOException e) {
            log.error("Problem while connecting to adapter: " + e.getMessage(), e);
        }
    }
    return adapter;
}

From source file:uk.codingbadgers.bootstrap.tasks.TaskInstallerUpdateCheck.java

@Override
public void run(Bootstrap bootstrap) {
    try {/*from  www . ja  v  a2s  . com*/
        HttpClient client = HttpClients.createDefault();
        HttpGet request = new HttpGet(INSTALLER_UPDATE_URL);
        request.setHeader(new BasicHeader("Accept", GITHUB_MIME_TYPE));

        HttpResponse response = client.execute(request);

        StatusLine statusLine = response.getStatusLine();

        if (statusLine.getStatusCode() == HttpStatus.SC_OK) {
            HttpEntity entity = response.getEntity();

            String localVersion = null;

            if (bootstrap.getInstallerFile().exists()) {
                JarFile jar = new JarFile(bootstrap.getInstallerFile());
                Manifest manifest = jar.getManifest();
                localVersion = manifest.getMainAttributes().getValue(Attributes.Name.IMPLEMENTATION_VERSION);
                jar.close();
            }

            JsonArray json = PARSER.parse(new InputStreamReader(entity.getContent())).getAsJsonArray();
            JsonObject release = json.get(0).getAsJsonObject();

            JsonObject installerAsset = null;
            JsonObject librariesAsset = null;
            int i = 0;

            for (JsonElement element : release.get("assets").getAsJsonArray()) {
                JsonObject object = element.getAsJsonObject();
                if (INSTALLER_LABEL.equals(object.get("name").getAsString())) {
                    installerAsset = object;
                } else if (INSTALLER_LIBS_LABEL.equals(object.get("name").getAsString())) {
                    librariesAsset = object;
                }
            }

            if (VersionComparator.getInstance().compare(localVersion, release.get("name").getAsString()) < 0) {
                bootstrap.addDownload(DownloadType.INSTALLER, new EtagDownload(
                        installerAsset.get("url").getAsString(), bootstrap.getInstallerFile()));
                localVersion = release.get("name").getAsString();
            }

            File libs = new File(bootstrap.getInstallerFile() + ".libs");
            boolean update = true;

            if (libs.exists()) {
                FileReader reader = null;

                try {
                    reader = new FileReader(libs);
                    JsonElement parsed = PARSER.parse(reader);

                    if (parsed.isJsonObject()) {
                        JsonObject libsJson = parsed.getAsJsonObject();

                        if (libsJson.has("installer")) {
                            JsonObject installerJson = libsJson.get("installer").getAsJsonObject();
                            if (installerJson.get("version").getAsString().equals(localVersion)) {
                                update = false;
                            }
                        }
                    }
                } catch (JsonParseException ex) {
                    throw new BootstrapException(ex);
                } finally {
                    reader.close();
                }
            }

            if (update) {
                new EtagDownload(librariesAsset.get("url").getAsString(),
                        new File(bootstrap.getInstallerFile() + ".libs")).download();

                FileReader reader = null;
                FileWriter writer = null;

                try {
                    reader = new FileReader(libs);
                    JsonObject libsJson = PARSER.parse(reader).getAsJsonObject();

                    JsonObject versionJson = new JsonObject();
                    versionJson.add("version", new JsonPrimitive(localVersion));

                    libsJson.add("installer", versionJson);
                    writer = new FileWriter(libs);
                    new Gson().toJson(libsJson, writer);
                } catch (JsonParseException ex) {
                    throw new BootstrapException(ex);
                } finally {
                    reader.close();
                    writer.close();
                }
            }

            EntityUtils.consume(entity);
        } else if (statusLine.getStatusCode() == HttpStatus.SC_FORBIDDEN) {
            System.err.println("Hit rate limit, skipping update check");
        } else {
            throw new BootstrapException("Error sending request to github. Error " + statusLine.getStatusCode()
                    + statusLine.getReasonPhrase());
        }
    } catch (IOException e) {
        throw new BootstrapException(e);
    }
}

From source file:cl.tide.fm.sensonet.SensonetClient.java

public SensonetClient() {
    sensors = new ArrayList<>();
    variables = new ArrayList<>();
    connected = false;/* w  w w  .  ja  v  a2  s. co  m*/
    isLogged = false;
    stop = true;
    listener = null;
    client = HttpClients.createDefault();
    checkingNetwork();
}

From source file:com.google.appengine.tck.misc.servlet.LoaderTest.java

private void doPing(HttpUriRequest request) throws Exception {
    try (CloseableHttpClient client = HttpClients.createDefault()) {
        HttpResponse response = client.execute(request);
        Assert.assertEquals(content, EntityUtils.toString(response.getEntity()));
    }/*from  w  w  w.  ja  va2s .  c  om*/
}

From source file:com.wso2.code.quality.matrices.GraphQlApiCaller.java

/**
 * Calls the github graphQL API and returns the relevant JSON response received
 *
 * @param queryObject the JSONObject required for querying
 * @param gitHubToken github token for accessing github GraphQL API
 * @return Depending on the content return a JSONObject or a JSONArray
 * @throws IOException/*w  ww.j av a  2  s  .co m*/
 */
public Object callGraphQlApi(JSONObject queryObject, String gitHubToken) throws CodeQualityMatricesException {

    CloseableHttpClient client = null;
    CloseableHttpResponse response = null;
    BufferedReader bufferedReader = null;

    Object returnedObject = null;

    try {
        client = HttpClients.createDefault();
        HttpPost httpPost = new HttpPost("https://api.github.com/graphql");
        httpPost.addHeader("Authorization", "Bearer " + gitHubToken);
        httpPost.addHeader("Accept", "application/json");
        StringEntity entity = new StringEntity(queryObject.toString());
        httpPost.setEntity(entity);
        response = client.execute(httpPost);
        int responseCode = response.getStatusLine().getStatusCode();

        switch (responseCode) {
        case 200:

            bufferedReader = new BufferedReader(
                    new InputStreamReader(response.getEntity().getContent(), "UTF-8"));
            String line;
            StringBuilder stringBuilder = new StringBuilder();
            while ((line = bufferedReader.readLine()) != null) {
                stringBuilder.append(line);
            }

            String jsonText = stringBuilder.toString();
            logger.info("The response received from the Github GraphQL converted to a JSON text successfully");

            Object json = new JSONTokener(jsonText).nextValue(); // gives an object http://stackoverflow.com/questions/14685777/how-to-check-if-response-from-server-is-jsonaobject-or-jsonarray

            if (json instanceof JSONObject) {
                JSONObject jsonObject = (JSONObject) json;
                returnedObject = jsonObject;
                logger.info("JSONObject was returned successfully after calling the GraphQL API");
            } else if (json instanceof JSONArray) {
                JSONArray jsonArray = (JSONArray) json;
                returnedObject = jsonArray;
                logger.info("JSONArray was returned successfully after calling the GraphQL API");
            }
            break;

        case 401:
            // to handle Response code 401: Unauthorized
            throw new CodeQualityMatricesException("Response code 401 : Git hub access token is invalid");
        default:
            returnedObject = null;
        }
    } catch (UnsupportedEncodingException e) {
        throw new CodeQualityMatricesException("Encoding error occured before calling the github graphQL API",
                e);
    } catch (ClientProtocolException e) {
        throw new CodeQualityMatricesException(
                "Client protocol exception occurred when calling the github graphQL API", e);
    } catch (IOException e) {
        throw new CodeQualityMatricesException("IO Exception occured when calling the github graphQL API", e);
    } catch (Exception e) {
        throw new CodeQualityMatricesException(
                "Exception occurred when reading the response received from github graphQL API", e);
    } finally {
        if (bufferedReader != null) {
            try {
                bufferedReader.close();
            } catch (IOException e) {
                throw new CodeQualityMatricesException("IOException occurred when closing the buffered reader",
                        e);
            }
        }
    }
    return returnedObject;
}

From source file:com.signicat.hystrix.servlet.AsyncWrapperServletTest.java

@Test
public void require_That_Servlet_Timeout_Kicks_In_But_Hystrix_Timeout_Does_Not_Kick_In() throws Exception {
    CountDownLatch servletTimeout = new CountDownLatch(1);

    final AsyncTestServlet servlet = new AsyncTestServlet(new CountDownLatch(1), servletTimeout,
            new CountDownLatch(1), new CountDownLatch(1), new CountDownLatch(1), new CountDownLatch(1), null,
            new TimeoutServlet(servletTimeout), 1000L);
    try (TestServer server = new TestServer(0, servlet)) {
        server.start();/*from ww  w. j a  v a  2  s.c  o m*/
        try (CloseableHttpClient httpclient = HttpClients.createDefault()) {
            HttpGet httpGet = new HttpGet("http://localhost:" + server.getPort() + "/bananarama");
            try (CloseableHttpResponse httpResponse = httpclient.execute(httpGet)) {
                StatusLine statusLine = httpResponse.getStatusLine();
                assertThat(statusLine.getStatusCode(), equalTo(504));
                assertThat(statusLine.getReasonPhrase(), equalTo("Timeout from async listener"));
                EntityUtils.consume(httpResponse.getEntity());
                assertThat(servlet.servletTimeout.await(60, TimeUnit.SECONDS), is(true));
                assertThat(servlet.servletComplete.await(60, TimeUnit.SECONDS), is(true));
                assertThat(servlet.servletError.getCount(), equalTo(1L));
                assertThat(servlet.hystrixError.await(60, TimeUnit.SECONDS), is(true));
                assertThat(servlet.hystrixCompleted.getCount(), equalTo(1L));
                assertThat(servlet.hystrixNext.getCount(), equalTo(1L));
            }
        }
    }
}