Example usage for org.apache.http.conn ClientConnectionManager getSchemeRegistry

List of usage examples for org.apache.http.conn ClientConnectionManager getSchemeRegistry

Introduction

In this page you can find the example usage for org.apache.http.conn ClientConnectionManager getSchemeRegistry.

Prototype

SchemeRegistry getSchemeRegistry();

Source Link

Document

Obtains the scheme registry used by this manager.

Usage

From source file:com.stepsdk.android.api.APIClient.java

public HttpEntity httpGet(String url, Map<String, String> headerParams)
        throws NetworkDownException, HttpGetException {
    HttpEntity entity = null;//  ww  w .ja va 2s. c om

    mHttpclient = new DefaultHttpClient();

    ClientConnectionManager mgr = mHttpclient.getConnectionManager();
    HttpParams params = mHttpclient.getParams();
    if (WEB_USER_AGENT != null)
        params.setParameter(CoreProtocolPNames.USER_AGENT, WEB_USER_AGENT);
    int timeoutConnection = 3000;
    HttpConnectionParams.setConnectionTimeout(params, timeoutConnection);
    int timeoutSocket = 5000;
    HttpConnectionParams.setSoTimeout(params, timeoutSocket);
    mHttpclient = new DefaultHttpClient(new ThreadSafeClientConnManager(params, mgr.getSchemeRegistry()),
            params);

    // Allow redirection from server
    // ref: http://stackoverflow.com/questions/3658721/httpclient-4-error-302-how-to-redirect
    mHttpclient.setRedirectHandler(new DefaultRedirectHandler() {
        @Override
        public boolean isRedirectRequested(HttpResponse response, HttpContext context) {
            boolean isRedirect = super.isRedirectRequested(response, context);
            if (!isRedirect) {
                int responseCode = response.getStatusLine().getStatusCode();
                if (responseCode == 302) {
                    return true;
                }
            }
            return isRedirect;
        }
    });

    HttpGet get = new HttpGet(url);

    if (headerParams == null) {
        headerParams = new HashMap<String, String>();
    }

    Iterator<String> i = headerParams.keySet().iterator();

    while (i.hasNext()) {
        String key = i.next();
        get.addHeader(key, headerParams.get(key));
    }

    Integer retryRemaining = 3;

    while (entity == null) {
        try {

            if (!DeviceUtil.checkPermission(mContext, "android.permission.ACCESS_NETWORK_STATE"))
                throw new NetworkDownException(
                        "ACCESS_NETWORK_STATE permission not set in AndroidManifest.xml");

            if (!DeviceUtil.checkPermission(mContext, "android.permission.INTERNET"))
                throw new NetworkDownException("INTERNET permission not set in AndroidManifest.xml");

            if (!NetworkUtil.isOnline(mContext))
                throw new NetworkDownException();

            HttpResponse response = mHttpclient.execute(get);
            if (response.getStatusLine().getStatusCode() == 404)
                throw new HttpGetException("404");
            entity = response.getEntity();
        } catch (ClientProtocolException e) {
            if (retryRemaining-- != 0) {
                entity = null;
            } else {
                throw new HttpGetException(e.getMessage());
            }
        } catch (IOException e) {
            if (retryRemaining-- != 0) {
                entity = null;
            } else {
                throw new HttpGetException(e.getMessage());
            }
        }
    }

    return entity;
}

From source file:nl.esciencecenter.ptk.web.WebClient.java

protected void initHTTPS() throws CertificateStoreException {
    // Create SSL Socket factory with custom Certificate Store.
    // Default protocol is TLS (newer when SSL).
    // SSLContext sslContext = certStore.createSSLContext("SSLv3");
    SSLContext sslContext = certStore.createSSLContext(SslConst.PROTOCOL_TLS);
    AbstractVerifier verifier;//from   w w w .j a v a2s.  c o  m

    if (config.sslOptions.disable_strict_hostname_checking) {
        verifier = new AllowAllHostnameVerifier();
    } else {
        verifier = new StrictHostnameVerifier();
    }

    // Create and register HTTPS socket factory
    SSLSocketFactory socketFactory = new SSLSocketFactory(sslContext, verifier);
    SchemeRegistry schemeRegistry = new SchemeRegistry();
    schemeRegistry.register(new Scheme("https", config.getPort(), socketFactory));
    ClientConnectionManager manager = this.httpClient.getConnectionManager();
    manager.getSchemeRegistry().register(new Scheme("https", config.getPort(), socketFactory));
}

From source file:jp.mixi.android.sdk.MixiContainerImpl.java

private synchronized HttpClient getHttpClient() {
    if (mHttpClient != null) {
        return mHttpClient;
    }/* w ww  .j a  v a 2 s.co m*/
    DefaultHttpClient defaultHttpClient = new DefaultHttpClient();
    ClientConnectionManager mgr = defaultHttpClient.getConnectionManager();
    HttpParams params = defaultHttpClient.getParams();
    mHttpClient = new DefaultHttpClient(new ThreadSafeClientConnManager(params, mgr.getSchemeRegistry()),
            params);
    mHttpClient.getParams().setParameter(HTTP_PARAM_CONNECTION_TIMEOUT, mConnectionTimeout);
    mHttpClient.getParams().setParameter(HTTP_PARAM_SOCKET_TIMEOUT, mSocketTimeout);
    return mHttpClient;
}

From source file:illab.nabal.proxy.AbstractContext.java

/**
 * Get a singleton object of AndroidHttpClient.
 * /*w w  w .j  av  a 2 s.co  m*/
 * @return AndroidHttpClient
 */
protected AndroidHttpClient getHttpClient() {
    if (mHttpClient == null) {
        mHttpClient = AndroidHttpClient.newInstance(SystemProperties.USER_AGENT_ANDROID, mContext);

        ClientConnectionManager conMgr = mHttpClient.getConnectionManager();
        SchemeRegistry schReg = conMgr.getSchemeRegistry();
        for (String scheme : schReg.getSchemeNames()) {
            Log.i(TAG, "Scheme: " + scheme + ", port: " + schReg.getScheme(scheme).getDefaultPort()
                    + ", factory: " + schReg.getScheme(scheme).getSocketFactory().getClass().getName());
        }
    }
    return mHttpClient;
}

From source file:com.pari.ic.ICManager.java

public DefaultHttpClient getSecuredHttpClient(HttpClient httpClient) throws Exception {
    final X509Certificate[] _AcceptedIssuers = new X509Certificate[] {};
    try {//  ww w. java2  s  . c  om
        SSLContext ctx = SSLContext.getInstance("TLS");
        X509TrustManager tm = new X509TrustManager() {
            @Override
            public X509Certificate[] getAcceptedIssuers() {
                return _AcceptedIssuers;
            }

            @Override
            public void checkServerTrusted(X509Certificate[] chain, String authType) {
            }

            @Override
            public void checkClientTrusted(X509Certificate[] chain, String authType) {
            }
        };
        ctx.init(null, new TrustManager[] { tm }, new SecureRandom());
        SSLSocketFactory ssf = new SSLSocketFactory(ctx, SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
        ClientConnectionManager ccm = httpClient.getConnectionManager();
        SchemeRegistry sr = ccm.getSchemeRegistry();
        sr.register(new Scheme("https", 443, ssf));
        return new DefaultHttpClient(ccm, httpClient.getParams());
    } catch (Exception e) {
        throw e;
    }
}

From source file:org.bigmouth.nvwa.network.http.HttpClientHelper.java

@SuppressWarnings("deprecation")
private static HttpClient getHttpClient(File keystore, char[] pwd, ClientConnectionManager ccm, int port,
        int timeout) throws Exception {
    SchemeRegistry sr = ccm.getSchemeRegistry();
    KeyStore truststore = KeyStore.getInstance(KeyStore.getDefaultType());
    truststore.load(new FileInputStream(keystore), pwd);
    SSLSocketFactory socketFactory = new SSLSocketFactory(truststore);
    socketFactory.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);

    sr.register(new Scheme("https", port, socketFactory));
    HttpClient httpClient = new DefaultHttpClient(ccm);
    httpClient.getParams().setParameter(CoreConnectionPNames.SO_KEEPALIVE, true);
    httpClient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, timeout);
    httpClient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, timeout);
    return httpClient;
}

From source file:org.bigmouth.nvwa.network.http.HttpClientHelper.java

private static HttpClient getHttpClient(SSLContext ctx, ClientConnectionManager ccm, int port, int timeout) {
    SchemeRegistry sr = ccm.getSchemeRegistry();
    sr.register(/*  ww w  .  j a v a  2s  .co m*/
            new Scheme("https", port, new SSLSocketFactory(ctx, SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER)));
    HttpClient httpClient = new DefaultHttpClient(ccm);
    httpClient.getParams().setParameter(CoreConnectionPNames.SO_KEEPALIVE, true);
    httpClient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, timeout);
    httpClient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, timeout);
    return httpClient;
}

From source file:org.jboss.as.test.integration.management.api.web.ConnectorTestCase.java

public static HttpClient wrapClient(HttpClient base) {
    try {/*from w  w w. j a  v  a2s .com*/
        SSLContext ctx = SSLContext.getInstance("TLS");
        X509TrustManager tm = new X509TrustManager() {

            public void checkClientTrusted(X509Certificate[] xcs, String string) throws CertificateException {
            }

            public void checkServerTrusted(X509Certificate[] xcs, String string) throws CertificateException {
            }

            public X509Certificate[] getAcceptedIssuers() {
                return null;
            }
        };
        ctx.init(null, new TrustManager[] { tm }, null);
        SSLSocketFactory ssf = new SSLSocketFactory(ctx);
        ssf.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
        ClientConnectionManager ccm = base.getConnectionManager();
        SchemeRegistry sr = ccm.getSchemeRegistry();
        sr.register(new Scheme("https", ssf, 443));
        return new DefaultHttpClient(ccm, base.getParams());
    } catch (Exception ex) {
        ex.printStackTrace();
        return null;
    }
}