/*******************************************************************************
 * Copyright (c) 2012 Symplectic Ltd. All rights reserved.
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
 ******************************************************************************/
package uk.co.symplectic.elements.api;

import org.apache.commons.httpclient.HttpConnectionManager;
import org.apache.commons.httpclient.MultiThreadedHttpConnectionManager;
import org.apache.commons.httpclient.params.HttpConnectionManagerParams;

class ElementsAPIConnectionManager {
    private static HttpConnectionManager connectionManager;
    private static HttpConnectionManagerParams params = null;

    private ElementsAPIConnectionManager() {}

    static HttpConnectionManager getInstance() {
        if (connectionManager == null) {
            ElementsAPIConnectionManager.initialize();
        }

        return connectionManager;
    }

    private static synchronized void initialize() {
        if (connectionManager == null) {
            connectionManager = new MultiThreadedHttpConnectionManager();
            if (params != null) {
                connectionManager.setParams(params);
            }
        }
    }
}

@@ -835,24 +835,145 @@
  = null;%0D%0A%0D%0A
+    static %7B%0D%0A        params = new HttpConnectionManagerParams();%0D%0A        params.setConnectionTimeout(30000);%0D%0A    %7D%0D%0A%0D%0A
     private 

Add connection timeout