private void ensureClientInitialized() {
if(configuration == null) throw new IllegalStateException("client must be initialized first.");
if (client != null) return;
client = new HttpClient(manager);
HttpConnectionManager connectionManager = client.getHttpConnectionManager();
HttpConnectionManagerParams params = connectionManager.getParams();
params.setConnectionTimeout(configuration.getDefaultTimeout());
params.setSoTimeout(configuration.getDefaultTimeout());
params.setMaxTotalConnections(configuration.getMaxConnections());
HostConfiguration hostConf = client.getHostConfiguration();