Example usage for org.apache.http.impl.client BasicResponseHandler BasicResponseHandler

List of usage examples for org.apache.http.impl.client BasicResponseHandler BasicResponseHandler

Introduction

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

Prototype

BasicResponseHandler

Source Link

Usage

From source file:it.polimi.meteocal.ejb.HandleAuthFacebookImpl.java

@Override
public boolean doLoginFacebook(String faceCode) {
    if (faceCode != null && !"".equals(faceCode)) {
        String redirectUrl = URL_BASE + "/MeteoCal-web/loginFacebook.xhtml";
        String newUrl = "https://graph.facebook.com/oauth/access_token?client_id=" + APP_ID + "&redirect_uri="
                + redirectUrl + "&client_secret=" + APPSECRET + "&code=" + faceCode;
        LOGGER.log(Level.INFO, "URL FB: " + newUrl);
        CloseableHttpClient httpclient = HttpClientBuilder.create().build();
        try {/*from   w w  w.ja va 2 s . c  om*/
            HttpGet httpget = new HttpGet(newUrl);
            ResponseHandler<String> responseHandler = new BasicResponseHandler();
            String responseBody = httpclient.execute(httpget, responseHandler);
            LOGGER.log(Level.INFO, "Response Body: " + responseBody);
            accessToken = StringUtils.removeStart(responseBody, "access_token=");
            int i = accessToken.indexOf("&");
            accessToken = accessToken.substring(0, i);
            LOGGER.log(Level.INFO, "AccessToken: " + accessToken);

            facebookClient = new DefaultFacebookClient(accessToken, APPSECRET, Version.VERSION_2_5);
            com.restfb.types.User userFB = facebookClient.fetchObject("me", com.restfb.types.User.class);

            if (!AuthUtil.isUserLogged()) {
                // Save the new data of the user
                User utente;
                TypedQuery<User> q = em.createNamedQuery(User.FIND_BY_FACEBOOK_ID, User.class);
                q.setParameter("facebookId", userFB.getId());

                TypedQuery<User> q2 = em.createNamedQuery(User.FIND_BY_EMAIL, User.class);
                q2.setParameter("email", userFB.getEmail());

                if (q.getResultList().isEmpty() && q2.getResultList().isEmpty()) {
                    // The userFB isn't in the system
                    utente = setupNewUser(userFB);
                    em.persist(utente);
                    em.flush();
                    em.refresh(utente);
                } else if (!q.getResultList().isEmpty()) {
                    // The User is already in the system with fb
                    LOGGER.log(Level.INFO, "User already registered with Facebook");
                    utente = q.getResultList().get(0);
                    if (utente.getFacebookToken().equals(accessToken)) {
                        LOGGER.log(Level.INFO, "Facebook token no needed change");
                    } else {
                        LOGGER.log(Level.INFO, "Facebook token updated");
                        utente.setFacebookToken(accessToken);
                        em.merge(utente);
                        em.flush();
                    }

                } else {
                    LOGGER.log(Level.INFO, "User already registered with classic method");
                    utente = q2.getResultList().get(0);
                    //TODO merge informazioni da facebook mancanti

                    em.merge(utente);
                    em.flush();

                }

                // Make the session for the user
                AuthUtil.makeUserSession(utente.getId());

            } else {
                // User already logged in the system
                User utente = em.find(User.class, AuthUtil.getUserID());

                TypedQuery<User> q = em.createNamedQuery(User.FIND_BY_FACEBOOK_ID, User.class);
                q.setParameter("facebookId", userFB.getId());
                if (q.getResultList().isEmpty()) {
                    // The user account isn't already present in the db so set the new FB data
                    utente.setFacebookId(userFB.getId());
                    utente.setFacebookToken(accessToken);
                    em.merge(utente);
                    em.flush();
                } else {

                    // User account already in the system
                    LOGGER.log(Level.INFO, "User already registered with Facebook");
                    User oldUser = q.getResultList().get(0);
                    if (!Objects.equals(utente.getId(), oldUser.getId())) {
                        // Need to merge the two account
                        utente = HandleUserImpl.mergeUserAccount(utente, oldUser);

                        // set the new facebook data
                        utente.setFacebookId(userFB.getId());
                        utente.setFacebookToken(accessToken);

                        em.merge(utente);
                        em.flush();

                        // Transfer all the data that can block the old user remove
                        HandleUserImpl.mergeOldUserNewUser(em, utente, oldUser);

                        em.remove(oldUser);
                        em.flush();
                    }
                }

            }

        } catch (ClientProtocolException e) {
            LOGGER.log(Level.ERROR, e);
        } catch (IOException e) {
            LOGGER.log(Level.ERROR, e);
        } finally {
            try {
                httpclient.close();
            } catch (IOException e) {

                LOGGER.log(Level.WARN, e);
            }
        }
    }

    return true;
}

From source file:com.adobe.acs.commons.http.impl.HttpClientFactoryImplTest.java

@Test
public void testAuthenticatedGet() throws Exception {
    config.put("username", username);
    config.put("password", password);
    impl.activate(config);//from   w  ww . j a v  a 2  s.  c  om

    Request get = impl.get("/auth");
    Executor exec = impl.getExecutor();
    String str = exec.execute(get).handleResponse(new BasicResponseHandler());
    assertThat(str, is("OK"));
}

From source file:com.lullabot.android.apps.iosched.ui.TwitterStreamFragment.java

public ArrayList<Tweet> getTweets(String searchTerm, int page) {
    String searchUrl = "http://search.twitter.com/search.json?q=#" + searchTerm + "&rpp=50&page=" + page;

    ArrayList<Tweet> tweets = new ArrayList<Tweet>();

    HttpClient client = new DefaultHttpClient();
    HttpGet get = new HttpGet(searchUrl);

    ResponseHandler<String> responseHandler = new BasicResponseHandler();

    String responseBody = null;//from   w ww .  jav a 2s.  c o m
    try {
        responseBody = client.execute(get, responseHandler);
    } catch (Exception ex) {
        ex.printStackTrace();
    }

    JSONObject jsonObject = null;
    JSONParser parser = new JSONParser();

    try {
        Object obj = parser.parse(responseBody);
        jsonObject = (JSONObject) obj;
    } catch (Exception ex) {
        Log.v("TEST", "Exception: " + ex.getMessage());
    }

    JSONArray arr = null;

    try {
        Object j = jsonObject.get("results");
        arr = (JSONArray) j;
    } catch (Exception ex) {
        Log.v("TEST", "Exception: " + ex.getMessage());
    }

    for (Object t : arr) {
        Tweet tweet = new Tweet(((JSONObject) t).get("from_user").toString(),
                ((JSONObject) t).get("text").toString(), ((JSONObject) t).get("profile_image_url").toString());
        tweets.add(tweet);
    }

    return tweets;
}

From source file:dk.i2m.drupal.resource.NodeResource.java

public List<NodeMessage> index(Map<Object, Object> params) throws HttpResponseException, IOException {
    URLBuilder builder = new URLBuilder(getDc().getHostname());
    builder.add(getDc().getEndpoint());/*  w w  w .ja  v  a  2s.  c o  m*/
    builder.add(getAlias());
    builder.addQuery(params);

    HttpGet method = new HttpGet(builder.toURI());

    ResponseHandler<String> handler = new BasicResponseHandler();
    String response = getDc().getHttpClient().execute(method, handler);

    return new Gson().fromJson(response, new TypeToken<List<NodeMessage>>() {
    }.getType());
}

From source file:net.openfiretechnologies.veloxcontrol.github.tasks.GetCommitsInProjectTask.java

protected Void doInBackground(String... params) {
    PROJECT_ = params[0];//from ww w . j  a  va 2 s  .  c om
    LAST_SHA_ = params[1];
    String requestCommits;
    if (LAST_SHA_ == null) {
        mCategory.removeAll();
        requestCommits = String.format(mConfig.INITIAL_COMMITS_REQUEST_FORMAT, PROJECT_);
    } else {
        requestCommits = String.format(mConfig.COMMITS_REQUEST_FORMAT, PROJECT_, LAST_SHA_);
    }
    if (BRANCH_ == null)
        BRANCH_ = DEFAULT_BRANCH;
    try {
        HttpClient httpClient = new DefaultHttpClient();
        Log.i(TAG, "attempting to connect to: " + requestCommits);
        HttpGet requestWebsite = new HttpGet(requestCommits);
        ResponseHandler<String> responseHandler = new BasicResponseHandler();
        JSONArray projectCommitsArray = new JSONArray(httpClient.execute(requestWebsite, responseHandler));

        // debugging
        if (DEBUG)
            Log.d(TAG, "projectCommitsArray.length() is: " + projectCommitsArray.length());

        String lastSha = null;
        // make a PreferenceScreen for all commits in package
        for (int i = 0; i < projectCommitsArray.length(); i++) {
            // make an object of each commit
            try {
                final CommitObject commitObject = new GithubObject(projectCommitsArray.getJSONObject(i));
                // if we are looking for the next set the we skip the first commit
                // as it is represented as the last commit from the first commit
                // loading loop
                //if (LAST_SHA_ != null && i == 1) {
                //continue;
                //}
                // debugging
                if (Config.StaticVars.JSON_SPEW)
                    Log.d(TAG, "commitObject.toString() is: " + commitObject.toString());

                PreferenceScreen mCommit = mCategory.getPreferenceManager().createPreferenceScreen(mContext);
                // apply info to our preference screen
                mCommit.setKey(commitObject.getCommitHash());
                mCommit.setTitle(commitObject.getSubject());
                mCommit.setSummary(commitObject.getAuthorName());
                mCommit.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
                    @Override
                    public boolean onPreferenceClick(Preference p) {
                        mAlertDialog.setCommitAndShow(commitObject);
                        return true;
                    }
                });
                mCategory.addPreference(mCommit);
                // most recent non null sha hash will be to iterate throught commits list
                if (commitObject.getCommitHash() != null) {
                    lastSha = commitObject.getCommitHash();
                }
            } catch (JSONException je) {
                // no author found for commit
                if (DEBUG)
                    Log.d(TAG, "encountered a null value", je);
            }
        }

        if (projectCommitsArray.length() == 100) {
            // append next 100 commits onClick()
            final PreferenceScreen mNext = mCategory.getPreferenceManager().createPreferenceScreen(mContext);
            mNext.setTitle(mContext.getString(R.string.next_commits_page_title));
            mNext.setSummary(mContext.getString(R.string.next_commits_page_summary));
            final String finalString = lastSha;
            mNext.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
                @Override
                public boolean onPreferenceClick(Preference p) {
                    GetCommitsInProjectTask nextList = new GetCommitsInProjectTask(mContext, mCategory,
                            mAlertDialog);
                    Log.d(TAG, "Sending project: " + PROJECT_ + " with last sha of " + finalString);
                    nextList.execute(PROJECT_, finalString);
                    // remove last entry it will be first entry in next list
                    mCategory.removePreference(mCategory.findPreference(finalString));
                    // don't keep in list after we click
                    mCategory.removePreference(mNext);
                    return true;
                }
            });
            mCategory.addPreference(mNext);
        }
    } catch (JSONException je) {
        if (DEBUG)
            Log.e(TAG, "Bad json interaction...", je);
    } catch (IOException ioe) {
        if (DEBUG)
            Log.e(TAG, "IOException...", ioe);
    } catch (NullPointerException ne) {
        if (DEBUG)
            Log.e(TAG, "NullPointer...", ne);
    }
    return null;
}

From source file:org.prx.prp.utility.HttpHelper.java

public HttpHelper() {
    this.responseHandler = new BasicResponseHandler();
}

From source file:net.sourceforge.subsonic.service.sonos.SonosServiceRegistration.java

private String executeRequest(HttpUriRequest request) throws IOException {
    HttpClient client = new DefaultHttpClient();
    HttpConnectionParams.setConnectionTimeout(client.getParams(), 10000);
    HttpConnectionParams.setSoTimeout(client.getParams(), 10000);

    try {//  w ww  .j  ava  2  s. com
        ResponseHandler<String> responseHandler = new BasicResponseHandler();
        return client.execute(request, responseHandler);

    } finally {
        client.getConnectionManager().shutdown();
    }
}

From source file:org.epop.dataprovider.msacademic.MicrosoftAcademicSearch.java

@Override
protected Reader getHTMLDoc(String htmlParams, int pageTurnLimit, boolean initialWait) {

    // http://academic.research.microsoft.com/Search/?query=author:(%22Angelo%20gargantini%22)&start=1&end=10000
    // List<NameValuePair> qparams = new ArrayList<NameValuePair>();
    // qparams.add(new BasicNameValuePair("query","author:(\""+
    // q.getCompleteAuthorName()+"\")"));//with quotation marks
    // qparams.add(new BasicNameValuePair("query", "author:("
    // + q.getCompleteAuthorName() + ")"));// without quotation marks
    // qparams.add(new BasicNameValuePair("start", "1"));
    // qparams.add(new BasicNameValuePair("end",
    // String.valueOf(searchStep)));

    URI uri;//from  w  ww  . j a v a  2  s  .  c o m
    String responseBody = "";

    try {

        if (initialWait)
            Thread.sleep(DELAY);

        uri = URIUtils.createURI("http", MS_ACADEMIC_SEARCH, -1, "", htmlParams, null);
        HttpGet httpget = new HttpGet(uri);
        System.out.println(httpget.getURI());
        HttpClient httpclient = new DefaultHttpClient();
        ResponseHandler<String> responseHandler = new BasicResponseHandler();
        responseBody = httpclient.execute(httpget, responseHandler);

        if (pageTurnLimit == 0)
            return new StringReader(responseBody);

        int counter = 1;
        String newResponseBody = responseBody;
        while (newResponseBody.contains(
                "<a id=\"ctl00_MainContent_PaperList_Next\" title=\"Go to Next Page\" class=\"nextprev\"")) {

            Thread.sleep(DELAY);

            URI newUri = URIUtils.createURI("http", MS_ACADEMIC_SEARCH, -1, "",
                    htmlParams + "&start=" + String.valueOf((counter * searchStep) + 1) + "&end="
                            + String.valueOf((counter + 1) * searchStep),
                    null);

            httpget = new HttpGet(newUri);
            System.out.println(httpget.getURI());
            httpclient = new DefaultHttpClient();
            newResponseBody = httpclient.execute(httpget, responseHandler);
            // System.out.println(newResponseBody);
            responseBody = responseBody + newResponseBody;

            if (pageTurnLimit == counter)
                return new StringReader(responseBody);

            counter++;

        }

    } catch (URISyntaxException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (ClientProtocolException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (InterruptedException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    // return the result as string
    return new StringReader(responseBody);
}

From source file:org.jasig.cas.util.http.SimpleHttpClient.java

@Override
public boolean sendMessageToEndPoint(final HttpMessage message) {
    Assert.notNull(this.httpClient);

    try {/*from   w  w w.j  a  v a 2 s.  c om*/
        final HttpPost request = new HttpPost(message.getUrl().toURI());
        request.addHeader("Content-Type", message.getContentType());

        final StringEntity entity = new StringEntity(message.getMessage(),
                ContentType.create(message.getContentType()));
        request.setEntity(entity);

        final HttpRequestFutureTask<String> task = this.requestExecutorService.execute(request,
                HttpClientContext.create(), new BasicResponseHandler());

        if (message.isAsynchronous()) {
            return true;
        }

        return StringUtils.isNotBlank(task.get());
    } catch (final RejectedExecutionException e) {
        LOGGER.warn(e.getMessage(), e);
        return false;
    } catch (final Exception e) {
        LOGGER.trace(e.getMessage(), e);
        return false;
    }
}

From source file:org.sociotech.communitymashup.source.readability.apiwrapper.ReadabilityAPIWrapper.java

/**
 * Does a get request at the given url and returns the result as string.
 * /*from  w  ww . j av a2  s .c o m*/
 * @param url
 *            Url to get
 * @return The result as string null in error case.
 */
private String doGet(String url) {
    // System.out.println("calling: " + url);

    String result = null;

    HttpClient httpClient = new DefaultHttpClient();

    HttpGet get = new HttpGet(url);

    ResponseHandler<String> responseHandler = new BasicResponseHandler();

    try {
        result = httpClient.execute(get, responseHandler);
    } catch (Exception e) {
        // do nothing
    } finally {
        // client is no longer needed
        httpClient.getConnectionManager().shutdown();
    }

    // System.out.println("got: " + result);

    return result;
}