public DefaultHttpClient(Context context) {
    super();
    setConnectTimeout(CONNECT_TIMEOUT_MILLIS, TimeUnit.MILLISECONDS);
    setReadTimeout(READ_TIMEOUT_MILLIS, TimeUnit.MILLISECONDS);

    HttpClientConfig.apply(this, context);
  }
  protected void initHttpClient(HttpClientConfig config) {
    HostConfiguration hostConfiguration = new HostConfiguration();
    hostConfiguration.setHost(config.getHost(), config.getPort());

    connectionManager = new MultiThreadedHttpConnectionManager();
    connectionManager.closeIdleConnections(config.getPollingIntervalTime() * 4000);

    HttpConnectionManagerParams params = new HttpConnectionManagerParams();
    params.setStaleCheckingEnabled(config.isConnectionStaleCheckingEnabled());
    params.setMaxConnectionsPerHost(hostConfiguration, config.getMaxHostConnections());
    params.setMaxTotalConnections(config.getMaxTotalConnections());
    params.setConnectionTimeout(config.getTimeout());
    params.setSoTimeout(60 * 1000);

    connectionManager.setParams(params);
    httpclient = new HttpClient(connectionManager);
    httpclient.setHostConfiguration(hostConfiguration);
  }
 /** Set configuration values */
 public void setConfig(HttpClientConfig config) {
   this.user = config.user() != null && !"".equals(config.user()) ? config.user() : null;
   this.pass = config.pass() != null && !"".equals(config.pass()) ? config.pass() : null;
   this.scopeport =
       config.scopeport() != null && !"".equals(config.scopeport()) ? config.scopeport() : 80;
   this.scopeserver =
       config.scopeserver() != null && !"".equals(config.scopeserver())
           ? config.scopeserver()
           : null;
   this.timeout = config.timeout() != null && !"".equals(config.timeout()) ? config.timeout() : 30;
 }