Example usage for org.apache.http.impl.conn.tsccm ThreadSafeClientConnManager ThreadSafeClientConnManager

List of usage examples for org.apache.http.impl.conn.tsccm ThreadSafeClientConnManager ThreadSafeClientConnManager

Introduction

In this page you can find the example usage for org.apache.http.impl.conn.tsccm ThreadSafeClientConnManager ThreadSafeClientConnManager.

Prototype

@Deprecated
public ThreadSafeClientConnManager(final HttpParams params, final SchemeRegistry schreg) 

Source Link

Document

Creates a new thread safe connection manager.

Usage

From source file:jsonbroker.library.client.http.HttpDispatcher.java

public HttpDispatcher(NetworkAddress networkAddress) {

    _networkAddress = networkAddress;//from  w  ww.  ja  v a 2 s.  c o m

    /*
      with ... 
      _client = new DefaultHttpClient();
      ... we get the following error ... 
      "Invalid use of SingleClientConnManager: connection still allocated.\nMake sure to release the connection before allocating another one."
      ... using a thread safe connecion manager ... 
      * http://hc.apache.org/httpcomponents-client-ga/tutorial/html/connmgmt.html
      * http://thinkandroid.wordpress.com/2009/12/31/creating-an-http-client-example/ 
     */

    //sets up parameters
    HttpParams params = new BasicHttpParams();

    HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
    HttpProtocolParams.setContentCharset(params, "utf-8");
    params.setBooleanParameter("http.protocol.expect-continue", false);

    // timeouts ... 
    HttpConnectionParams.setConnectionTimeout(params, 5 * 1000);
    HttpConnectionParams.setSoTimeout(params, 5 * 1000);

    //registers schemes for both http and https
    SchemeRegistry registry = new SchemeRegistry();
    registry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));
    final SSLSocketFactory sslSocketFactory = SSLSocketFactory.getSocketFactory();
    sslSocketFactory.setHostnameVerifier(SSLSocketFactory.BROWSER_COMPATIBLE_HOSTNAME_VERIFIER);
    registry.register(new Scheme("https", sslSocketFactory, 443));

    ThreadSafeClientConnManager manager = new ThreadSafeClientConnManager(params, registry);
    _client = new DefaultHttpClient(manager, params);

}

From source file:com.androidrocks.bex.zxing.client.android.AndroidHttpClient.java

/**
 * Create a new HttpClient with reasonable defaults (which you can update).
 *
 * @param userAgent to report in your HTTP requests.
 * @return AndroidHttpClient for you to use for all your requests.
 *///from   w  w w .  j a v a2 s  .c  om
public static AndroidHttpClient newInstance(String userAgent) {
    HttpParams params = new BasicHttpParams();

    // Turn off stale checking.  Our connections break all the time anyway,
    // and it's not worth it to pay the penalty of checking every time.
    HttpConnectionParams.setStaleCheckingEnabled(params, false);

    // Default connection and socket timeout of 20 seconds.  Tweak to taste.
    HttpConnectionParams.setConnectionTimeout(params, 20 * 1000);
    HttpConnectionParams.setSoTimeout(params, 20 * 1000);
    HttpConnectionParams.setSocketBufferSize(params, 8192);

    // Don't handle redirects -- return them to the caller.  Our code
    // often wants to re-POST after a redirect, which we must do ourselves.
    HttpClientParams.setRedirecting(params, false);

    // Set the specified user agent and register standard protocols.
    HttpProtocolParams.setUserAgent(params, userAgent);
    SchemeRegistry schemeRegistry = new SchemeRegistry();
    schemeRegistry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));
    schemeRegistry.register(new Scheme("https", SSLSocketFactory.getSocketFactory(), 443));
    ClientConnectionManager manager = new ThreadSafeClientConnManager(params, schemeRegistry);

    // We use a factory method to modify superclass initialization
    // parameters without the funny call-a-static-method dance.
    return new AndroidHttpClient(manager, params);
}

From source file:com.android.volley.toolbox.https.SslHttpClient.java

@Override
protected ClientConnectionManager createClientConnectionManager() {
    SchemeRegistry registry = new SchemeRegistry();

    PlainSocketFactory pfs = PlainSocketFactory.getSocketFactory();
    Scheme s = new Scheme(HTTP_SCHEME, pfs, HTTP_DEFAULT_PORT);
    registry.register(s);/* w w w . j  av a2s  . c o m*/

    ThreadSafeClientConnManager ret = null;
    try {
        KeyStore trustStore = KeyStore.getInstance(KeyStore.getDefaultType());
        trustStore.load(null, null);

        SSLSocketFactory sf = new MySSLSocketFactory(trustStore);
        sf.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
        registry.register(new Scheme(HTTP_SSL_SCHEME, sf, mHttpsPort));

        ret = new ThreadSafeClientConnManager(new BasicHttpParams(), registry);
    } catch (GeneralSecurityException e) {
        throw new IllegalStateException(e);
    } catch (IOException e) {
        e.printStackTrace();
    }

    return ret;
}

From source file:com.siahmsoft.soundroid.sdk7.util.HttpManager.java

public static DefaultHttpClient newInstance() {
    final HttpParams params = new BasicHttpParams();

    HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
    HttpProtocolParams.setUserAgent(params, "Soundroid/1.1");
    HttpProtocolParams.setContentCharset(params, "UTF-8");

    //HttpConnectionParams.setTcpNoDelay(params, true);
    HttpConnectionParams.setStaleCheckingEnabled(params, false);
    HttpConnectionParams.setConnectionTimeout(params, 20 * 1000);
    HttpConnectionParams.setSoTimeout(params, 20 * 1000);
    HttpConnectionParams.setSocketBufferSize(params, 8192);

    HttpClientParams.setRedirecting(params, true);

    SchemeRegistry schemeRegistry = new SchemeRegistry();
    schemeRegistry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));
    schemeRegistry.register(new Scheme("https", SSLSocketFactory.getSocketFactory(), 443));

    ClientConnectionManager manager = new ThreadSafeClientConnManager(params, schemeRegistry);
    DefaultHttpClient sClient = new DefaultHttpClient(manager, params);

    return sClient;
}

From source file:me.xiaopan.android.gohttp.HttpClientManager.java

public HttpClientManager(SchemeRegistry schemeRegistry) {
    BasicHttpParams httpParams = new BasicHttpParams();
    HttpConnectionParams.setTcpNoDelay(httpParams, true); //?TCP
    HttpProtocolParams.setVersion(httpParams, HttpVersion.HTTP_1_1); //Http??
    HttpProtocolParams.setUserAgent(httpParams, DEFAULT_USER_AGENT); //?
    httpContext = new SyncBasicHttpContext(new BasicHttpContext()); //?Http
    httpClient = new DefaultHttpClient(new ThreadSafeClientConnManager(httpParams, schemeRegistry), httpParams);
    httpClient.addRequestInterceptor(new GzipProcessRequestInterceptor());
    httpClient.addRequestInterceptor(new AddRequestHeaderRequestInterceptor(getHeaderMap()));
    httpClient.addResponseInterceptor(new GzipProcessResponseInterceptor());
    httpClient/*w w w.j  ava2 s.co  m*/
            .setHttpRequestRetryHandler(new RetryHandler(DEFAULT_MAX_RETRIES, DEFAULT_RETRY_SLEEP_TIME_MILLIS));
    clientHeaderMap = new HashMap<String, String>();
    setTimeout(DEFAULT_TIMEOUT);
    setMaxConnections(DEFAULT_MAX_CONNECTIONS);
    setSocketBufferSize(DEFAULT_SOCKET_BUFFER_SIZE);
}

From source file:com.wbtech.ums.NetworkUtil.java

public static MyMessage Post(String url, String data) {
    CobubLog.d(UmsConstants.LOG_TAG, NetworkUtil.class, "URL = " + url);
    CobubLog.d(UmsConstants.LOG_TAG, NetworkUtil.class, "LENGTH:" + data.length() + " *Data = " + data + "*");

    if (!hasInitSSL && UmsConstants.SDK_SECURITY_LEVEL.equals("2")) {
        initSSL();/*from w  w  w. jav  a  2s. c om*/
        hasInitSSL = true;
    }

    BasicHttpParams httpParams = new BasicHttpParams();
    HttpConnectionParams.setConnectionTimeout(httpParams, REQUEST_TIMEOUT);
    HttpConnectionParams.setSoTimeout(httpParams, SO_TIMEOUT);
    DefaultHttpClient httpclient = null;

    /*SDK??:
     * 1,CPOS:???sslSDK_SSL=true;??dn(?dnSDK_HTTPS_DNnone)
     * 2,HTTPS???????https?
     * 3,http
    */
    if (UmsConstants.SDK_SECURITY_LEVEL.equals("2")) {
        httpclient = new DefaultHttpClient(httpParams);
        // cpos with dn check
        if (!UmsConstants.SDK_HTTPS_DN.equals("none")) {
            SSLSocketFactory mysf = null;
            try {
                mysf = new CposSSLSocketFactory();
                if (serverUrl == null) {
                    serverUrl = new URL(url);
                    serverPort = ((serverUrl.getPort() == -1) ? serverUrl.getDefaultPort()
                            : serverUrl.getPort());
                }

                httpclient.getConnectionManager().getSchemeRegistry()
                        .register(new Scheme(serverUrl.getProtocol(), mysf, serverPort));

            } catch (Exception e) {
                CobubLog.d(UmsConstants.LOG_TAG, NetworkUtil.class, e.toString());
            }
        }
    } else if (UmsConstants.SDK_SECURITY_LEVEL.equals("1") && url.toLowerCase().startsWith("https")) {
        // for https with company cert
        if (serverPort < 0) {
            serverPort = getPort();
        }
        CobubLog.d(UmsConstants.LOG_TAG, NetworkUtil.class, "InitSSL port is:" + serverPort);
        SchemeRegistry schReg = new SchemeRegistry();
        schReg.register(new Scheme("https", SSLCustomSocketFactory.getSocketFactory(), serverPort));

        ClientConnectionManager connMgr = new ThreadSafeClientConnManager(httpParams, schReg);
        httpclient = new DefaultHttpClient(connMgr, httpParams);
    } else {
        httpclient = new DefaultHttpClient(httpParams);
    }
    processCookieRejected(httpclient);

    MyMessage message = new MyMessage();
    try {
        HttpPost httppost = new HttpPost(url);

        StringEntity se = new StringEntity("content=" + URLEncoder.encode(data), HTTP.UTF_8);
        se.setContentType("application/x-www-form-urlencoded");
        httppost.setEntity(se);

        HttpResponse response = httpclient.execute(httppost);
        CobubLog.d(UmsConstants.LOG_TAG, NetworkUtil.class,
                "Status code=" + response.getStatusLine().getStatusCode());

        String returnXML = EntityUtils.toString(response.getEntity());
        int status = response.getStatusLine().getStatusCode();
        String returnContent = URLDecoder.decode(returnXML, "UTF-8");
        CobubLog.d(UmsConstants.LOG_TAG, NetworkUtil.class, "returnString = " + returnContent);
        //TODO:???200okjson??????????flag<0
        //?flag???
        switch (status) {
        case 200:
            message.setSuccess(isJson(returnContent));
            message.setMsg(returnContent);
            break;
        default:
            Log.e("error", status + returnContent);
            message.setSuccess(false);
            message.setMsg(returnContent);
            break;
        }
    } catch (Exception e) {
        message.setSuccess(false);
        message.setMsg(e.toString());
    }
    return message;
}

From source file:com.ridgelineapps.wallpaper.photosite.FiveHundredPxUtils.java

private FiveHundredPxUtils() {
    final HttpParams params = new BasicHttpParams();
    HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
    HttpProtocolParams.setContentCharset(params, "UTF-8");

    final SchemeRegistry registry = new SchemeRegistry();
    try {/*from w  w w .  ja va2 s.com*/
        registry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));
        registry.register(new Scheme("https", new CustomSSLSocketFactory(), 443));
    } catch (Exception e) {
        e.printStackTrace();
    }
    final ThreadSafeClientConnManager manager = new ThreadSafeClientConnManager(params, registry);
    mClient = new DefaultHttpClient(manager, params);
}

From source file:com.android.providers.downloads.ui.network.SslHttpClient.java

@Override
protected ClientConnectionManager createClientConnectionManager() {
    SchemeRegistry registry = new SchemeRegistry();

    PlainSocketFactory pfs = PlainSocketFactory.getSocketFactory();
    Scheme s = new Scheme(HTTP_SCHEME, pfs, HTTP_DEFAULT_PORT);
    registry.register(s);//w  w  w .j  a v  a2 s.  co m

    ClientConnectionManager ret;
    try {
        registry.register(
                new Scheme(HTTP_SSL_SCHEME, new SslSocketFactory(mKeyStore, mKeyStorePassword), mHttpsPort));
        if (mParams == null) {
            mParams = new BasicHttpParams();
        }
        ret = new ThreadSafeClientConnManager(mParams, registry);
    } catch (GeneralSecurityException e) {
        throw new IllegalStateException(e);
    }

    return ret;
}

From source file:com.dmbstream.android.service.RESTMusicService.java

public RESTMusicService() {

    // Create and initialize default HTTP parameters
    HttpParams params = new BasicHttpParams();
    ConnManagerParams.setMaxTotalConnections(params, 20);
    ConnManagerParams.setMaxConnectionsPerRoute(params, new ConnPerRouteBean(20));
    HttpConnectionParams.setConnectionTimeout(params, SOCKET_CONNECT_TIMEOUT);
    HttpConnectionParams.setSoTimeout(params, SOCKET_READ_TIMEOUT_DEFAULT);

    // Turn off stale checking.  Our connections break all the time anyway,
    // and it's not worth it to pay the penalty of checking every time.
    HttpConnectionParams.setStaleCheckingEnabled(params, false);

    // Create and initialize scheme registry
    SchemeRegistry schemeRegistry = new SchemeRegistry();
    schemeRegistry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));

    // Create an HttpClient with the ThreadSafeClientConnManager.
    // This connection manager must be used if more than one thread will
    // be using the HttpClient.
    connManager = new ThreadSafeClientConnManager(params, schemeRegistry);
    httpClient = new DefaultHttpClient(connManager, params);
}

From source file:org.androdyne.StacktraceUploader.java

/**
 * Initialize HTTP client with common parameters.
 **//*from www. jav a2  s.c  o  m*/
private void setupHTTPClient() {
    // Create connection manager/client.
    if (null == mConnectionManager || null == mClient) {
        // Set up an HttpClient instance that can be used by multiple threads
        HttpParams params = new BasicHttpParams();
        HttpConnectionParams.setConnectionTimeout(params, HTTP_TIMEOUT);
        HttpProtocolParams.setVersion(params, HTTP_VERSION);

        SchemeRegistry registry = new SchemeRegistry();
        registry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));
        registry.register(new Scheme("https", SSLSocketFactory.getSocketFactory(), 443));

        mConnectionManager = new ThreadSafeClientConnManager(params, registry);
        mClient = new DefaultHttpClient(mConnectionManager, params);
    }
}