cleanup: remove test/src-not-used/ (#9007)

diff --git a/test/src-not-used/main/java/com/cloud/sample/UserCloudAPIExecutor.java b/test/src-not-used/main/java/com/cloud/sample/UserCloudAPIExecutor.java
deleted file mode 100644
index 6baadb8..0000000
--- a/test/src-not-used/main/java/com/cloud/sample/UserCloudAPIExecutor.java
+++ /dev/null
@@ -1,188 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.sample;
-
-import java.io.FileInputStream;
-import java.net.URLEncoder;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Properties;
-import java.util.StringTokenizer;
-
-import javax.crypto.Mac;
-import javax.crypto.spec.SecretKeySpec;
-
-import org.apache.commons.codec.binary.Base64;
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.HttpMethod;
-import org.apache.commons.httpclient.methods.GetMethod;
-
-/**
- *
- *
- *
- *
- *
- *
- *
- *
- *
- */
-
-/**
- * Sample CloudStack Management User API Executor.
- *
- * Prerequisites: - Edit usercloud.properties to include your host, apiUrl, apiKey, and secretKey - Use ./executeUserAPI.sh to
- * execute this test class
- *
- *
- */
-public class UserCloudAPIExecutor {
-    public static void main(String[] args) {
-        // Host
-        String host = null;
-
-        // Fully qualified URL with http(s)://host:port
-        String apiUrl = null;
-
-        // ApiKey and secretKey as given by your CloudStack vendor
-        String apiKey = null;
-        String secretKey = null;
-
-        try {
-            Properties prop = new Properties();
-            prop.load(new FileInputStream("usercloud.properties"));
-
-            // host
-            host = prop.getProperty("host");
-            if (host == null) {
-                System.out.println("Please specify a valid host in the format of http(s)://:/client/api in your usercloud.properties file.");
-            }
-
-            // apiUrl
-            apiUrl = prop.getProperty("apiUrl");
-            if (apiUrl == null) {
-                System.out.println("Please specify a valid API URL in the format of command=&param1=&param2=... in your usercloud.properties file.");
-            }
-
-            // apiKey
-            apiKey = prop.getProperty("apiKey");
-            if (apiKey == null) {
-                System.out.println("Please specify your API Key as provided by your CloudStack vendor in your usercloud.properties file.");
-            }
-
-            // secretKey
-            secretKey = prop.getProperty("secretKey");
-            if (secretKey == null) {
-                System.out.println("Please specify your secret Key as provided by your CloudStack vendor in your usercloud.properties file.");
-            }
-
-            if (apiUrl == null || apiKey == null || secretKey == null) {
-                return;
-            }
-
-            System.out.println("Constructing API call to host = '" + host + "' with API command = '" + apiUrl + "' using apiKey = '" + apiKey + "' and secretKey = '" +
-                secretKey + "'");
-
-            // Step 1: Make sure your APIKey is URL encoded
-            String encodedApiKey = URLEncoder.encode(apiKey, "UTF-8");
-
-            // Step 2: URL encode each parameter value, then sort the parameters and apiKey in
-            // alphabetical order, and then toLowerCase all the parameters, parameter values and apiKey.
-            // Please note that if any parameters with a '&' as a value will cause this test client to fail since we are using
-            // '&' to delimit
-            // the string
-            List<String> sortedParams = new ArrayList<String>();
-            sortedParams.add("apikey=" + encodedApiKey.toLowerCase());
-            StringTokenizer st = new StringTokenizer(apiUrl, "&");
-            String url = null;
-            boolean first = true;
-            while (st.hasMoreTokens()) {
-                String paramValue = st.nextToken();
-                String param = paramValue.substring(0, paramValue.indexOf("="));
-                String value = URLEncoder.encode(paramValue.substring(paramValue.indexOf("=") + 1, paramValue.length()), "UTF-8");
-                if (first) {
-                    url = param + "=" + value;
-                    first = false;
-                } else {
-                    url = url + "&" + param + "=" + value;
-                }
-                sortedParams.add(param.toLowerCase() + "=" + value.toLowerCase());
-            }
-            Collections.sort(sortedParams);
-
-            System.out.println("Sorted Parameters: " + sortedParams);
-
-            // Step 3: Construct the sorted URL and sign and URL encode the sorted URL with your secret key
-            String sortedUrl = null;
-            first = true;
-            for (String param : sortedParams) {
-                if (first) {
-                    sortedUrl = param;
-                    first = false;
-                } else {
-                    sortedUrl = sortedUrl + "&" + param;
-                }
-            }
-            System.out.println("sorted URL : " + sortedUrl);
-            String encodedSignature = signRequest(sortedUrl, secretKey);
-
-            // Step 4: Construct the final URL we want to send to the CloudStack Management Server
-            // Final result should look like:
-            // http(s)://://client/api?&apiKey=&signature=
-            String finalUrl = host + "?" + url + "&apiKey=" + apiKey + "&signature=" + encodedSignature;
-            System.out.println("final URL : " + finalUrl);
-
-            // Step 5: Perform a HTTP GET on this URL to execute the command
-            HttpClient client = new HttpClient();
-            HttpMethod method = new GetMethod(finalUrl);
-            int responseCode = client.executeMethod(method);
-            if (responseCode == 200) {
-                // SUCCESS!
-                System.out.println("Successfully executed command");
-            } else {
-                // FAILED!
-                System.out.println("Unable to execute command with response code: " + responseCode);
-            }
-
-        } catch (Throwable t) {
-            System.out.println(t);
-        }
-    }
-
-    /**
-     * 1. Signs a string with a secret key using SHA-1 2. Base64 encode the result 3. URL encode the final result
-     *
-     * @param request
-     * @param key
-     * @return
-     */
-    public static String signRequest(String request, String key) {
-        try {
-            Mac mac = Mac.getInstance("HmacSHA1");
-            SecretKeySpec keySpec = new SecretKeySpec(key.getBytes(), "HmacSHA1");
-            mac.init(keySpec);
-            mac.update(request.getBytes());
-            byte[] encryptedBytes = mac.doFinal();
-            return URLEncoder.encode(Base64.encodeBase64String(encryptedBytes), "UTF-8");
-        } catch (Exception ex) {
-            System.out.println(ex);
-        }
-        return null;
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/longrun/BuildGuestNetwork.java b/test/src-not-used/main/java/com/cloud/test/longrun/BuildGuestNetwork.java
deleted file mode 100644
index 3a823ab..0000000
--- a/test/src-not-used/main/java/com/cloud/test/longrun/BuildGuestNetwork.java
+++ /dev/null
@@ -1,123 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.longrun;
-
-import java.util.Arrays;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Random;
-
-import org.apache.log4j.Logger;
-
-public class BuildGuestNetwork {
-
-    public static final Logger s_logger = Logger.getLogger(BuildGuestNetwork.class.getClass());
-    private static final int ApiPort = 8096;
-    private static final int DeveloperPort = 8080;
-    private static final String ApiUrl = "/client/api";
-    private static int numVM = 1;
-    private static long zoneId = -1L;
-    private static long templateId = 3;
-    private static long serviceOfferingId = 1;
-
-    public static void main(String[] args) {
-
-        List<String> argsList = Arrays.asList(args);
-        Iterator<String> iter = argsList.iterator();
-        String host = "http://localhost";
-        int numThreads = 1;
-
-        while (iter.hasNext()) {
-            String arg = iter.next();
-            if (arg.equals("-h")) {
-                host = "http://" + iter.next();
-            }
-            if (arg.equals("-t")) {
-                numThreads = Integer.parseInt(iter.next());
-            }
-            if (arg.equals("-n")) {
-                numVM = Integer.parseInt(iter.next());
-            }
-            if (arg.equals("-z")) {
-                zoneId = Integer.parseInt(iter.next());
-            }
-
-            if (arg.equals("-e")) {
-                templateId = Integer.parseInt(iter.next());
-            }
-
-            if (arg.equals("-s")) {
-                serviceOfferingId = Integer.parseInt(iter.next());
-            }
-        }
-
-        final String server = host + ":" + ApiPort + "/";
-        final String developerServer = host + ":" + DeveloperPort + ApiUrl;
-        s_logger.info("Starting test in " + numThreads + " thread(s). Each thread is launching " + numVM + " VMs");
-
-        for (int i = 0; i < numThreads; i++) {
-            new Thread(new Runnable() {
-                @Override
-                public void run() {
-                    try {
-
-                        String username = null;
-                        String singlePrivateIp = null;
-                        Random ran = new Random();
-                        username = Math.abs(ran.nextInt()) + "-user";
-
-                        //Create User
-                        User myUser = new User(username, username, server, developerServer);
-                        try {
-                            myUser.launchUser();
-                            myUser.registerUser();
-                        } catch (Exception e) {
-                            s_logger.warn("Error code: ", e);
-                        }
-
-                        if (myUser.getUserId() != null) {
-                            s_logger.info("User " + myUser.getUserName() + " was created successfully, starting VM creation");
-                            //create VMs for the user
-                            for (int i = 0; i < numVM; i++) {
-                                //Create a new VM, add it to the list of user's VMs
-                                VirtualMachine myVM = new VirtualMachine(myUser.getUserId());
-                                myVM.deployVM(zoneId, serviceOfferingId, templateId, myUser.getDeveloperServer(), myUser.getApiKey(), myUser.getSecretKey());
-                                myUser.getVirtualMachines().add(myVM);
-                                singlePrivateIp = myVM.getPrivateIp();
-
-                                if (singlePrivateIp != null) {
-                                    s_logger.info("VM with private Ip " + singlePrivateIp + " was successfully created");
-                                } else {
-                                    s_logger.info("Problems with VM creation for a user" + myUser.getUserName());
-                                    s_logger.info("Deployment failed");
-                                    break;
-                                }
-                            }
-
-                            s_logger.info("Deployment done..." + numVM + " VMs were created.");
-                        }
-
-                    } catch (Exception e) {
-                        s_logger.error(e);
-                    }
-                }
-            }).start();
-
-        }
-    }
-
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/longrun/GuestNetwork.java b/test/src-not-used/main/java/com/cloud/test/longrun/GuestNetwork.java
deleted file mode 100644
index 226e31a..0000000
--- a/test/src-not-used/main/java/com/cloud/test/longrun/GuestNetwork.java
+++ /dev/null
@@ -1,107 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.longrun;
-
-import java.util.ArrayList;
-import java.util.Random;
-
-import org.apache.log4j.Logger;
-import org.apache.log4j.NDC;
-
-import com.trilead.ssh2.Connection;
-import com.trilead.ssh2.Session;
-
-public class GuestNetwork implements Runnable {
-    public static final Logger s_logger = Logger.getLogger(GuestNetwork.class.getClass());
-
-    private String publicIp;
-    private ArrayList<VirtualMachine> virtualMachines;
-    private int retryNum;
-
-    public GuestNetwork(String publicIp, int retryNum) {
-        this.publicIp = publicIp;
-        this.retryNum = retryNum;
-    }
-
-    public ArrayList<VirtualMachine> getVirtualMachines() {
-        return virtualMachines;
-    }
-
-    public void setVirtualMachines(ArrayList<VirtualMachine> virtualMachines) {
-        this.virtualMachines = virtualMachines;
-    }
-
-    @Override
-    public void run() {
-        NDC.push("Following thread has started" + Thread.currentThread().getName());
-        int retry = 0;
-
-        //Start copying files between machines in the network
-        s_logger.info("The size of the array is " + this.virtualMachines.size());
-        while (true) {
-            try {
-                if (retry > 0) {
-                    s_logger.info("Retry attempt : " + retry + " ...sleeping 120 seconds before next attempt");
-                    Thread.sleep(120000);
-                }
-                for (VirtualMachine vm : this.virtualMachines) {
-
-                    s_logger.info("Attempting to SSH into linux host " + this.publicIp + " with retry attempt: " + retry);
-                    Connection conn = new Connection(this.publicIp);
-                    conn.connect(null, 600000, 600000);
-
-                    s_logger.info("SSHed successfully into linux host " + this.publicIp);
-
-                    boolean isAuthenticated = conn.authenticateWithPassword("root", "password");
-
-                    if (isAuthenticated == false) {
-                        s_logger.info("Authentication failed");
-                    }
-                    //execute copy command
-                    Session sess = conn.openSession();
-                    String fileName;
-                    Random ran = new Random();
-                    fileName = Math.abs(ran.nextInt()) + "-file";
-                    String copyCommand = new String("./scpScript " + vm.getPrivateIp() + " " + fileName);
-                    s_logger.info("Executing " + copyCommand);
-                    sess.execCommand(copyCommand);
-                    Thread.sleep(120000);
-                    sess.close();
-
-                    //execute wget command
-                    sess = conn.openSession();
-                    String downloadCommand =
-                        new String("wget http://172.16.0.220/scripts/checkDiskSpace.sh; chmod +x *sh; ./checkDiskSpace.sh; rm -rf checkDiskSpace.sh");
-                    s_logger.info("Executing " + downloadCommand);
-                    sess.execCommand(downloadCommand);
-                    Thread.sleep(120000);
-                    sess.close();
-
-                    //close the connection
-                    conn.close();
-                }
-            } catch (Exception ex) {
-                s_logger.error(ex);
-                retry++;
-                if (retry == retryNum) {
-                    s_logger.info("Performance Guest Network test failed with error " + ex.getMessage());
-                }
-            }
-        }
-
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/longrun/PerformanceWithAPI.java b/test/src-not-used/main/java/com/cloud/test/longrun/PerformanceWithAPI.java
deleted file mode 100644
index f1a3725..0000000
--- a/test/src-not-used/main/java/com/cloud/test/longrun/PerformanceWithAPI.java
+++ /dev/null
@@ -1,190 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.longrun;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URLEncoder;
-import java.util.Arrays;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Random;
-
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.HttpMethod;
-import org.apache.commons.httpclient.methods.GetMethod;
-import org.apache.log4j.Logger;
-
-import com.cloud.test.stress.TestClientWithAPI;
-
-public class PerformanceWithAPI {
-
-    public static final Logger s_logger = Logger.getLogger(PerformanceWithAPI.class.getClass());
-    private static final int Retry = 10;
-    private static final int ApiPort = 8096;
-    private static int s_numVM = 2;
-    private static final long ZoneId = -1L;
-    private static final long TemplateId = 3;
-    private static final long ServiceOfferingId = 1;
-    private static final String ApiUrl = "/client/api";
-    private static final int DeveloperPort = 8080;
-
-    public static void main(String[] args) {
-
-        List<String> argsList = Arrays.asList(args);
-        Iterator<String> iter = argsList.iterator();
-        String host = "http://localhost";
-        int numThreads = 1;
-
-        while (iter.hasNext()) {
-            String arg = iter.next();
-            if (arg.equals("-h")) {
-                host = "http://" + iter.next();
-            }
-            if (arg.equals("-t")) {
-                numThreads = Integer.parseInt(iter.next());
-            }
-            if (arg.equals("-n")) {
-                s_numVM = Integer.parseInt(iter.next());
-            }
-        }
-
-        final String server = host + ":" + ApiPort + "/";
-        final String developerServer = host + ":" + DeveloperPort + ApiUrl;
-
-        s_logger.info("Starting test in " + numThreads + " thread(s). Each thread is launching " + s_numVM + " VMs");
-
-        for (int i = 0; i < numThreads; i++) {
-            new Thread(new Runnable() {
-                @Override
-                public void run() {
-                    try {
-
-                        String username = null;
-                        String singlePrivateIp = null;
-                        String singlePublicIp = null;
-                        Random ran = new Random();
-                        username = Math.abs(ran.nextInt()) + "-user";
-
-                        //Create User
-                        User myUser = new User(username, username, server, developerServer);
-                        try {
-                            myUser.launchUser();
-                            myUser.registerUser();
-                        } catch (Exception e) {
-                            s_logger.warn("Error code: ", e);
-                        }
-
-                        if (myUser.getUserId() != null) {
-                            s_logger.info("User " + myUser.getUserName() + " was created successfully, starting VM creation");
-                            //create VMs for the user
-                            for (int i = 0; i < s_numVM; i++) {
-                                //Create a new VM, add it to the list of user's VMs
-                                VirtualMachine myVM = new VirtualMachine(myUser.getUserId());
-                                myVM.deployVM(ZoneId, ServiceOfferingId, TemplateId, myUser.getDeveloperServer(), myUser.getApiKey(), myUser.getSecretKey());
-                                myUser.getVirtualMachines().add(myVM);
-                                singlePrivateIp = myVM.getPrivateIp();
-
-                                if (singlePrivateIp != null) {
-                                    s_logger.info("VM with private Ip " + singlePrivateIp + " was successfully created");
-                                } else {
-                                    s_logger.info("Problems with VM creation for a user" + myUser.getUserName());
-                                    break;
-                                }
-
-                                //get public IP address for the User
-                                myUser.retrievePublicIp(ZoneId);
-                                singlePublicIp = myUser.getPublicIp().get(myUser.getPublicIp().size() - 1);
-                                if (singlePublicIp != null) {
-                                    s_logger.info("Successfully got public Ip " + singlePublicIp + " for user " + myUser.getUserName());
-                                } else {
-                                    s_logger.info("Problems with getting public Ip address for user" + myUser.getUserName());
-                                    break;
-                                }
-
-                                //create ForwardProxy rules for user's VMs
-                                int responseCode = CreateForwardingRule(myUser, singlePrivateIp, singlePublicIp, "22", "22");
-                                if (responseCode == 500)
-                                    break;
-                            }
-
-                            s_logger.info("Deployment successful..." + s_numVM + " VMs were created. Waiting for 5 min before performance test");
-                            Thread.sleep(300000L); // Wait
-
-                            //Start performance test for the user
-                            s_logger.info("Starting performance test for Guest network that has " + myUser.getPublicIp().size() + " public IP addresses");
-                            for (int j = 0; j < myUser.getPublicIp().size(); j++) {
-                                s_logger.info("Starting test for user which has " + myUser.getVirtualMachines().size() + " vms. Public IP for the user is " +
-                                    myUser.getPublicIp().get(j) + " , number of retries is " + Retry + " , private IP address of the machine is" +
-                                    myUser.getVirtualMachines().get(j).getPrivateIp());
-                                GuestNetwork myNetwork = new GuestNetwork(myUser.getPublicIp().get(j), Retry);
-                                myNetwork.setVirtualMachines(myUser.getVirtualMachines());
-                                new Thread(myNetwork).start();
-                            }
-
-                        }
-                    } catch (Exception e) {
-                        s_logger.error(e);
-                    }
-                }
-            }).start();
-
-        }
-    }
-
-    private static int CreateForwardingRule(User myUser, String privateIp, String publicIp, String publicPort, String privatePort) throws IOException {
-        String encodedPrivateIp = URLEncoder.encode("" + privateIp, "UTF-8");
-        String encodedPublicIp = URLEncoder.encode("" + publicIp, "UTF-8");
-        String encodedPrivatePort = URLEncoder.encode("" + privatePort, "UTF-8");
-        String encodedPublicPort = URLEncoder.encode("" + publicPort, "UTF-8");
-        String encodedApiKey = URLEncoder.encode(myUser.getApiKey(), "UTF-8");
-        int responseCode = 500;
-
-        String requestToSign =
-            "apiKey=" + encodedApiKey + "&command=createOrUpdateIpForwardingRule&privateIp=" + encodedPrivateIp + "&privatePort=" + encodedPrivatePort +
-                "&protocol=tcp&publicIp=" + encodedPublicIp + "&publicPort=" + encodedPublicPort;
-
-        requestToSign = requestToSign.toLowerCase();
-        s_logger.info("Request to sign is " + requestToSign);
-
-        String signature = TestClientWithAPI.signRequest(requestToSign, myUser.getSecretKey());
-        String encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-        String url =
-            myUser.getDeveloperServer() + "?command=createOrUpdateIpForwardingRule" + "&publicIp=" + encodedPublicIp + "&publicPort=" + encodedPublicPort +
-                "&privateIp=" + encodedPrivateIp + "&privatePort=" + encodedPrivatePort + "&protocol=tcp&apiKey=" + encodedApiKey + "&signature=" + encodedSignature;
-
-        s_logger.info("Trying to create IP forwarding rule: " + url);
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(url);
-        responseCode = client.executeMethod(method);
-        s_logger.info("create ip forwarding rule response code: " + responseCode);
-        if (responseCode == 200) {
-            s_logger.info("The rule is created successfully");
-        } else if (responseCode == 500) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> errorInfo = TestClientWithAPI.getSingleValueFromXML(is, new String[] {"errorCode", "description"});
-            s_logger.error("create ip forwarding rule (linux) test failed with errorCode: " + errorInfo.get("errorCode") + " and description: " +
-                errorInfo.get("description"));
-        } else {
-            s_logger.error("internal error processing request: " + method.getStatusText());
-        }
-        return responseCode;
-    }
-
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/longrun/User.java b/test/src-not-used/main/java/com/cloud/test/longrun/User.java
deleted file mode 100644
index 06234c8..0000000
--- a/test/src-not-used/main/java/com/cloud/test/longrun/User.java
+++ /dev/null
@@ -1,202 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.longrun;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URLEncoder;
-import java.util.ArrayList;
-import java.util.Map;
-
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.HttpException;
-import org.apache.commons.httpclient.HttpMethod;
-import org.apache.commons.httpclient.methods.GetMethod;
-import org.apache.log4j.Logger;
-
-import com.cloud.test.stress.TestClientWithAPI;
-
-public class User {
-    public static final Logger s_logger = Logger.getLogger(User.class.getClass());
-
-    private ArrayList<VirtualMachine> virtualMachines;
-    private ArrayList<String> publicIp;
-    private String server;
-    private String developerServer;
-    private String userName;
-    private String userId;
-    private String apiKey;
-    private String secretKey;
-    private String password;
-    private String encryptedPassword;
-
-    public User(String userName, String password, String server, String developerServer) {
-        this.server = server;
-        this.developerServer = developerServer;
-        this.userName = userName;
-        this.password = password;
-        this.virtualMachines = new ArrayList<VirtualMachine>();
-        this.publicIp = new ArrayList<String>();
-    }
-
-    public ArrayList<VirtualMachine> getVirtualMachines() {
-        return virtualMachines;
-    }
-
-    public void setVirtualMachines(ArrayList<VirtualMachine> virtualMachines) {
-        this.virtualMachines = virtualMachines;
-    }
-
-    public String getUserId() {
-        return userId;
-    }
-
-    public void setUserId(String userId) {
-        this.userId = userId;
-    }
-
-    public ArrayList<String> getPublicIp() {
-        return publicIp;
-    }
-
-    public void setPublicIp(ArrayList<String> publicIp) {
-        this.publicIp = publicIp;
-    }
-
-    public String getServer() {
-        return server;
-    }
-
-    public void setServer(String server) {
-        this.server = server;
-    }
-
-    public String getUserName() {
-        return userName;
-    }
-
-    public void setUserName(String userName) {
-        this.userName = userName;
-    }
-
-    public String getApiKey() {
-        return apiKey;
-    }
-
-    public void setApiKey(String apiKey) {
-        this.apiKey = apiKey;
-    }
-
-    public String getPassword() {
-        return password;
-    }
-
-    public void setPassword(String password) {
-        this.password = password;
-    }
-
-    public String getSecretKey() {
-        return secretKey;
-    }
-
-    public void setSecretKey(String secretKey) {
-        this.secretKey = secretKey;
-    }
-
-    public String getDeveloperServer() {
-        return developerServer;
-    }
-
-    public void setDeveloperServer(String developerServer) {
-        this.developerServer = developerServer;
-    }
-
-    public void launchUser() throws IOException {
-        String encodedUsername = URLEncoder.encode(this.getUserName(), "UTF-8");
-        this.encryptedPassword = TestClientWithAPI.createMD5Password(this.getPassword());
-        String encodedPassword = URLEncoder.encode(this.encryptedPassword, "UTF-8");
-        String url =
-            this.server + "?command=createUser&username=" + encodedUsername + "&password=" + encodedPassword +
-                "&firstname=Test&lastname=Test&email=alena@vmops.com&domainId=1";
-        String userIdStr = null;
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(url);
-        int responseCode = client.executeMethod(method);
-
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> userIdValues = TestClientWithAPI.getSingleValueFromXML(is, new String[] {"id"});
-            userIdStr = userIdValues.get("id");
-            if ((userIdStr != null) && (Long.parseLong(userIdStr) != -1)) {
-                this.setUserId(userIdStr);
-            }
-        }
-    }
-
-    public void retrievePublicIp(long zoneId) throws IOException {
-
-        String encodedApiKey = URLEncoder.encode(this.apiKey, "UTF-8");
-        String encodedZoneId = URLEncoder.encode("" + zoneId, "UTF-8");
-        String requestToSign = "apiKey=" + encodedApiKey + "&command=associateIpAddress" + "&zoneId=" + encodedZoneId;
-        requestToSign = requestToSign.toLowerCase();
-        String signature = TestClientWithAPI.signRequest(requestToSign, this.secretKey);
-        String encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-        String url = this.developerServer + "?command=associateIpAddress" + "&apiKey=" + encodedApiKey + "&zoneId=" + encodedZoneId + "&signature=" + encodedSignature;
-
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(url);
-        int responseCode = client.executeMethod(method);
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> values = TestClientWithAPI.getSingleValueFromXML(is, new String[] {"ipaddress"});
-            this.getPublicIp().add(values.get("ipaddress"));
-            s_logger.info("Ip address is " + values.get("ipaddress"));
-        } else if (responseCode == 500) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> errorInfo = TestClientWithAPI.getSingleValueFromXML(is, new String[] {"errorcode", "description"});
-            s_logger.error("associate ip test failed with errorCode: " + errorInfo.get("errorCode") + " and description: " + errorInfo.get("description"));
-        } else {
-            s_logger.error("internal error processing request: " + method.getStatusText());
-        }
-
-    }
-
-    public void registerUser() throws HttpException, IOException {
-
-        String encodedUsername = URLEncoder.encode(this.userName, "UTF-8");
-        String encodedPassword = URLEncoder.encode(this.password, "UTF-8");
-        String url = server + "?command=register&username=" + encodedUsername + "&domainid=1";
-        s_logger.info("registering: " + this.userName + " with url " + url);
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(url);
-        int responseCode = client.executeMethod(method);
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> requestKeyValues = TestClientWithAPI.getSingleValueFromXML(is, new String[] {"apikey", "secretkey"});
-            this.setApiKey(requestKeyValues.get("apikey"));
-            this.setSecretKey(requestKeyValues.get("secretkey"));
-        } else if (responseCode == 500) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> errorInfo = TestClientWithAPI.getSingleValueFromXML(is, new String[] {"errorcode", "description"});
-            s_logger.error("registration failed with errorCode: " + errorInfo.get("errorCode") + " and description: " + errorInfo.get("description"));
-        } else {
-            s_logger.error("internal error processing request: " + method.getStatusText());
-        }
-    }
-
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/longrun/VirtualMachine.java b/test/src-not-used/main/java/com/cloud/test/longrun/VirtualMachine.java
deleted file mode 100644
index eaed0a2..0000000
--- a/test/src-not-used/main/java/com/cloud/test/longrun/VirtualMachine.java
+++ /dev/null
@@ -1,95 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.longrun;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URLEncoder;
-import java.util.Map;
-
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.HttpMethod;
-import org.apache.commons.httpclient.methods.GetMethod;
-import org.apache.log4j.Logger;
-
-import com.cloud.test.stress.TestClientWithAPI;
-
-public class VirtualMachine {
-    public static final Logger s_logger = Logger.getLogger(VirtualMachine.class.getClass());
-
-    private String privateIp;
-    private String userId;
-
-    public VirtualMachine(String userId) {
-        this.userId = userId;
-    }
-
-    public String getPrivateIp() {
-        return privateIp;
-    }
-
-    public void setPrivateIp(String privateIp) {
-        this.privateIp = privateIp;
-    }
-
-    public String getUserId() {
-        return userId;
-    }
-
-    public void setUserId(String userId) {
-        this.userId = userId;
-    }
-
-    public void deployVM(long zoneId, long serviceOfferingId, long templateId, String server, String apiKey, String secretKey) throws IOException {
-
-        String encodedZoneId = URLEncoder.encode("" + zoneId, "UTF-8");
-        String encodedServiceOfferingId = URLEncoder.encode("" + serviceOfferingId, "UTF-8");
-        String encodedTemplateId = URLEncoder.encode("" + templateId, "UTF-8");
-        String encodedApiKey = URLEncoder.encode(apiKey, "UTF-8");
-        String requestToSign =
-            "apiKey=" + encodedApiKey + "&command=deployVirtualMachine&serviceOfferingId=" + encodedServiceOfferingId + "&templateId=" + encodedTemplateId + "&zoneId=" +
-                encodedZoneId;
-
-        requestToSign = requestToSign.toLowerCase();
-        String signature = TestClientWithAPI.signRequest(requestToSign, secretKey);
-        String encodedSignature = URLEncoder.encode(signature, "UTF-8");
-        String url =
-            server + "?command=deployVirtualMachine" + "&zoneId=" + encodedZoneId + "&serviceOfferingId=" + encodedServiceOfferingId + "&templateId=" +
-                encodedTemplateId + "&apiKey=" + encodedApiKey + "&signature=" + encodedSignature;
-
-        s_logger.info("Sending this request to deploy a VM: " + url);
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(url);
-        int responseCode = client.executeMethod(method);
-        s_logger.info("deploy linux vm response code: " + responseCode);
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> values = TestClientWithAPI.getSingleValueFromXML(is, new String[] {"id", "ipaddress"});
-            long linuxVMId = Long.parseLong(values.get("id"));
-            s_logger.info("got linux virtual machine id: " + linuxVMId);
-            this.setPrivateIp(values.get("ipaddress"));
-
-        } else if (responseCode == 500) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> errorInfo = TestClientWithAPI.getSingleValueFromXML(is, new String[] {"errorcode", "description"});
-            s_logger.error("deploy linux vm test failed with errorCode: " + errorInfo.get("errorCode") + " and description: " + errorInfo.get("description"));
-        } else {
-            s_logger.error("internal error processing request: " + method.getStatusText());
-        }
-    }
-
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/regression/ApiCommand.java b/test/src-not-used/main/java/com/cloud/test/regression/ApiCommand.java
deleted file mode 100644
index 9c9fc83..0000000
--- a/test/src-not-used/main/java/com/cloud/test/regression/ApiCommand.java
+++ /dev/null
@@ -1,848 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.regression;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.InputStream;
-import java.net.URLEncoder;
-import java.sql.Connection;
-import java.sql.ResultSet;
-import java.sql.Statement;
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Properties;
-import java.util.Random;
-import java.util.Set;
-import java.util.TreeMap;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.HttpMethod;
-import org.apache.commons.httpclient.methods.GetMethod;
-import org.apache.log4j.Logger;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-import com.cloud.test.utils.UtilsForTest;
-
-public class ApiCommand {
-    public static final Logger s_logger = Logger.getLogger(ApiCommand.class.getName());
-
-    public static enum CommandType {
-        HTTP, MYSQL, SCRIPT;
-    }
-
-    public static enum ResponseType {
-        ERROR, EMPTY;
-    }
-
-    private Element xmlCommand;
-    private String commandName;
-    private String testCaseInfo;
-    private boolean isUserCommand;
-    private boolean isAsync = false;
-    private CommandType commandType;
-    private ResponseType responseType;
-
-    private TreeMap<String, String> urlParam;
-    private HashMap<String, String> verifyParam = new HashMap<String, String>();;
-    private HashMap<String, String> setParam = new HashMap<String, String>();;
-    private int responseCode;
-    private Element responseBody;
-
-    private String command;
-    private String host;
-    private boolean list;
-    private Element listName;
-    private Element listId;
-    private boolean required = false;
-    private ResultSet result;
-
-    public ApiCommand(Element fstElmnt, HashMap<String, String> param, HashMap<String, String> commands) {
-        this.setXmlCommand(fstElmnt);
-        this.setCommandName();
-        this.setResponseType();
-        this.setUserCommand();
-        this.setCommandType();
-        this.setTestCaseInfo();
-        this.setUrlParam(param);
-        this.setVerifyParam(param);
-        this.setHost("http://" + param.get("hostip"));
-        this.setCommand(param);
-        String async = commands.get(this.getName());
-        if (async != null && async.equals("yes")) {
-            this.isAsync = true;
-
-        }
-    }
-
-    public Element getXmlCommand() {
-        return xmlCommand;
-    }
-
-    public void setXmlCommand(Element xmlCommand) {
-        this.xmlCommand = xmlCommand;
-    }
-
-    // ================FOLLOWING METHODS USE INPUT XML FILE=======================//
-    public void setCommandName() {
-        NodeList commandName = this.xmlCommand.getElementsByTagName("name");
-        Element commandElmnt = (Element)commandName.item(0);
-        NodeList commandNm = commandElmnt.getChildNodes();
-        this.commandName = (commandNm.item(0).getNodeValue());
-    }
-
-    public String getName() {
-        return commandName;
-    }
-
-    public void setTestCaseInfo() {
-        this.testCaseInfo = getElementByName("testcase");
-    }
-
-    public String getHost() {
-        return host;
-    }
-
-    public void setHost(String host) {
-        this.host = host;
-    }
-
-    public void setResponseType() {
-        boolean result = verifyTagValue("error", "true");
-        if (result) {
-            this.responseType = ResponseType.ERROR;
-            return;
-        }
-        result = verifyTagValue("empty", "true");
-        if (result) {
-            this.responseType = ResponseType.EMPTY;
-        }
-    }
-
-    public void setResponseType(ResponseType responseType) {
-        this.responseType = responseType;
-    }
-
-    public ResponseType getResponseType() {
-        return responseType;
-    }
-
-    public void setUserCommand() {
-        boolean result = verifyTagValue("usercommand", "true");
-        this.isUserCommand = result;
-    }
-
-    public void setCommandType() {
-        boolean result = verifyTagValue("mysql", "true");
-        if (result) {
-            this.commandType = CommandType.MYSQL;
-            return;
-        }
-        result = verifyTagValue("script", "true");
-        if (result) {
-            this.commandType = CommandType.SCRIPT;
-            return;
-        }
-        this.commandType = CommandType.HTTP;
-    }
-
-    public CommandType getCommandType() {
-        return commandType;
-    }
-
-    public String getTestCaseInfo() {
-        return testCaseInfo;
-    }
-
-    public Boolean getRequired() {
-        return required;
-    }
-
-    public void setUrlParam(HashMap<String, String> param) {
-        this.urlParam = new TreeMap<String, String>();
-        NodeList parameterLst = this.xmlCommand.getElementsByTagName("parameters");
-        if (parameterLst != null) {
-            for (int j = 0; j < parameterLst.getLength(); j++) {
-                Element parameterElement = (Element)parameterLst.item(j);
-                NodeList itemLst = parameterElement.getElementsByTagName("item");
-                for (int k = 0; k < itemLst.getLength(); k++) {
-                    Node item = itemLst.item(k);
-                    if (item.getNodeType() == Node.ELEMENT_NODE) {
-                        Element itemElement = (Element)item;
-                        NodeList itemName = itemElement.getElementsByTagName("name");
-                        Element itemNameElement = (Element)itemName.item(0);
-
-                        // get value
-                        Element itemValueElement = null;
-                        if ((itemElement.getElementsByTagName("value") != null) && (itemElement.getElementsByTagName("value").getLength() != 0)) {
-                            NodeList itemValue = itemElement.getElementsByTagName("value");
-                            itemValueElement = (Element)itemValue.item(0);
-                        }
-
-                        Element itemParamElement = null;
-                        // getparam
-                        if ((itemElement.getElementsByTagName("param") != null) && (itemElement.getElementsByTagName("param").getLength() != 0)) {
-                            NodeList itemParam = itemElement.getElementsByTagName("param");
-                            itemParamElement = (Element)itemParam.item(0);
-                        }
-
-                        if ((itemElement.getAttribute("getparam").equals("true")) && (itemParamElement != null)) {
-                            this.urlParam.put(itemNameElement.getTextContent(), param.get(itemParamElement.getTextContent()));
-                        } else if (itemValueElement != null) {
-                            this.urlParam.put(itemNameElement.getTextContent(), itemValueElement.getTextContent());
-                        } else if (itemElement.getAttribute("random").equals("true")) {
-                            Random ran = new Random();
-                            String randomString = Math.abs(ran.nextInt()) + "-randomName";
-                            this.urlParam.put(itemNameElement.getTextContent(), randomString);
-                            if ((itemElement.getAttribute("setparam").equals("true")) && (itemParamElement != null)) {
-                                param.put(itemParamElement.getTextContent(), randomString);
-                            }
-                        } else if (itemElement.getAttribute("randomnumber").equals("true")) {
-                            Random ran = new Random();
-                            Integer randomNumber = Math.abs(ran.nextInt(65535));
-                            this.urlParam.put(itemNameElement.getTextContent(), randomNumber.toString());
-                            if ((itemElement.getAttribute("setparam").equals("true")) && (itemParamElement != null)) {
-                                param.put(itemParamElement.getTextContent(), randomNumber.toString());
-                            }
-                        }
-                    }
-                }
-            }
-        }
-    }
-
-    // Set command URL
-    public void setCommand(HashMap<String, String> param) {
-
-        if (this.getCommandType() == CommandType.SCRIPT) {
-            String temp = "bash xen/" + this.commandName;
-            Set<?> c = this.urlParam.entrySet();
-            Iterator<?> it = c.iterator();
-            while (it.hasNext()) {
-                Map.Entry<?, ?> me = (Map.Entry<?, ?>)it.next();
-                String key = (String)me.getKey();
-                String value = (String)me.getValue();
-                try {
-                    temp = temp + " -" + key + " " + value;
-                } catch (Exception ex) {
-                    s_logger.error("Unable to set parameter " + key + " for the command " + this.getName());
-                }
-            }
-            this.command = temp;
-        } else if (this.getCommandType() == CommandType.MYSQL) {
-            String temp = this.commandName + " where ";
-            Set<?> c = this.urlParam.entrySet();
-            Iterator<?> it = c.iterator();
-            while (it.hasNext()) {
-                Map.Entry<?, ?> me = (Map.Entry<?, ?>)it.next();
-                String key = (String)me.getKey();
-                String value = (String)me.getValue();
-                try {
-                    temp = temp + key + "=" + value;
-                } catch (Exception ex) {
-                    s_logger.error("Unable to set parameter " + key + " for the command " + this.getName());
-                }
-            }
-            this.command = temp;
-            s_logger.info("The command is " + this.command);
-
-        } else {
-            if ((param.get("apikey") == null) || (param.get("secretkey") == null) || (this.isUserCommand == false)) {
-                String temp = this.host + ":8096/?command=" + this.commandName;
-                Set<?> c = this.urlParam.entrySet();
-                Iterator<?> it = c.iterator();
-                while (it.hasNext()) {
-                    Map.Entry<?, ?> me = (Map.Entry<?, ?>)it.next();
-                    String key = (String)me.getKey();
-                    String value = (String)me.getValue();
-                    try {
-                        temp = temp + "&" + key + "=" + URLEncoder.encode(value, "UTF-8");
-                    } catch (Exception ex) {
-                        s_logger.error("Unable to set parameter " + key + " for the command " + this.getName());
-                    }
-                }
-                this.command = temp;
-            } else if (isUserCommand == true) {
-                String apiKey = param.get("apikey");
-                String secretKey = param.get("secretkey");
-
-                String temp = "";
-                this.urlParam.put("apikey", apiKey);
-                this.urlParam.put("command", this.commandName);
-
-                // sort url hash map by key
-                Set<?> c = this.urlParam.entrySet();
-                Iterator<?> it = c.iterator();
-                while (it.hasNext()) {
-                    Map.Entry<?, ?> me = (Map.Entry<?, ?>)it.next();
-                    String key = (String)me.getKey();
-                    String value = (String)me.getValue();
-                    try {
-                        temp = temp + key + "=" + URLEncoder.encode(value, "UTF-8") + "&";
-                    } catch (Exception ex) {
-                        s_logger.error("Unable to set parameter " + value + " for the command " + this.getName());
-                    }
-
-                }
-                temp = temp.substring(0, temp.length() - 1);
-                String requestToSign = temp.toLowerCase();
-                String signature = UtilsForTest.signRequest(requestToSign, secretKey);
-                String encodedSignature = "";
-                try {
-                    encodedSignature = URLEncoder.encode(signature, "UTF-8");
-                } catch (Exception ex) {
-                    s_logger.error(ex);
-                }
-                this.command = this.host + ":8080/client/api/?" + temp + "&signature=" + encodedSignature;
-            }
-        }
-    }
-
-    public void setVerifyParam(HashMap<String, String> param) {
-        NodeList returnLst = this.xmlCommand.getElementsByTagName("returnvalue");
-        if (returnLst != null) {
-            for (int m = 0; m < returnLst.getLength(); m++) {
-                Element returnElement = (Element)returnLst.item(m);
-                if (returnElement.getAttribute("list").equals("true")) {
-                    this.list = true;
-                    NodeList elementLst = returnElement.getElementsByTagName("element");
-                    this.listId = (Element)elementLst.item(0);
-                    NodeList elementName = returnElement.getElementsByTagName("name");
-                    this.listName = (Element)elementName.item(0);
-                } else {
-                    this.list = false;
-                }
-
-                NodeList itemLst1 = returnElement.getElementsByTagName("item");
-                if (itemLst1 != null) {
-                    for (int n = 0; n < itemLst1.getLength(); n++) {
-                        Node item = itemLst1.item(n);
-                        if (item.getNodeType() == Node.ELEMENT_NODE) {
-                            Element itemElement = (Element)item;
-                            // get parameter name
-                            NodeList itemName = itemElement.getElementsByTagName("name");
-                            Element itemNameElement = (Element)itemName.item(0);
-
-                            // Get parameters for future use
-                            if (itemElement.getAttribute("setparam").equals("true")) {
-                                NodeList itemVariable = itemElement.getElementsByTagName("param");
-                                Element itemVariableElement = (Element)itemVariable.item(0);
-                                setParam.put(itemVariableElement.getTextContent(), itemNameElement.getTextContent());
-                                this.required = true;
-                            } else if (itemElement.getAttribute("getparam").equals("true")) {
-                                NodeList itemVariable = itemElement.getElementsByTagName("param");
-                                Element itemVariableElement = (Element)itemVariable.item(0);
-                                this.verifyParam.put(itemNameElement.getTextContent(), param.get(itemVariableElement.getTextContent()));
-                            } else if ((itemElement.getElementsByTagName("value") != null) && (itemElement.getElementsByTagName("value").getLength() != 0)) {
-                                NodeList itemVariable = itemElement.getElementsByTagName("value");
-                                Element itemVariableElement = (Element)itemVariable.item(0);
-                                this.verifyParam.put(itemNameElement.getTextContent(), itemVariableElement.getTextContent());
-                            } else {
-                                this.verifyParam.put(itemNameElement.getTextContent(), "no value");
-                            }
-                        }
-                    }
-                }
-            }
-        }
-    }
-
-    public int getResponseCode() {
-        return responseCode;
-    }
-
-    // Send api command to the server
-    public void sendCommand(HttpClient client, Connection conn) {
-        if (TestCaseEngine.s_printUrl == true) {
-            s_logger.info("url is " + this.command);
-        }
-
-        if (this.getCommandType() == CommandType.SCRIPT) {
-            try {
-                s_logger.info("Executing command " + this.command);
-                Runtime rtime = Runtime.getRuntime();
-                Process child = rtime.exec(this.command);
-                Thread.sleep(10000);
-                int retCode = child.waitFor();
-                if (retCode != 0) {
-                    this.responseCode = retCode;
-                } else {
-                    this.responseCode = 200;
-                }
-
-            } catch (Exception ex) {
-                s_logger.error("Unable to execute a command " + this.command, ex);
-            }
-        } else if (this.getCommandType() == CommandType.MYSQL) {
-            try {
-                Statement stmt = conn.createStatement();
-                this.result = stmt.executeQuery(this.command);
-                this.responseCode = 200;
-            } catch (Exception ex) {
-                this.responseCode = 400;
-                s_logger.error("Unable to execute mysql query " + this.command, ex);
-            }
-        } else {
-            HttpMethod method = new GetMethod(this.command);
-            try {
-                this.responseCode = client.executeMethod(method);
-
-                if (this.responseCode == 200) {
-                    InputStream is = method.getResponseBodyAsStream();
-                    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
-                    DocumentBuilder builder = factory.newDocumentBuilder();
-                    Document doc = builder.parse(is);
-                    doc.getDocumentElement().normalize();
-
-                    if (!(this.isAsync)) {
-                        this.responseBody = doc.getDocumentElement();
-                    } else {
-                        // get async job result
-                        Element jobTag = (Element)doc.getDocumentElement().getElementsByTagName("jobid").item(0);
-                        String jobId = jobTag.getTextContent();
-                        Element responseBodyAsyncEl = queryAsyncJobResult(jobId);
-                        if (responseBodyAsyncEl == null) {
-                            s_logger.error("Can't get a async result");
-                        } else {
-                            this.responseBody = responseBodyAsyncEl;
-                            // get status of the job
-                            Element jobStatusTag = (Element)responseBodyAsyncEl.getElementsByTagName("jobstatus").item(0);
-                            String jobStatus = jobStatusTag.getTextContent();
-                            if (!jobStatus.equals("1")) { // Need to modify with different error codes for jobAsync
-// results
-                                // set fake response code by now
-                                this.responseCode = 400;
-                            }
-                        }
-                    }
-                }
-
-                if (TestCaseEngine.s_printUrl == true) {
-                    s_logger.info("Response code is " + this.responseCode);
-                }
-            } catch (Exception ex) {
-                s_logger.error("Command " + command + " failed with exception " + ex.getMessage());
-            } finally {
-                method.releaseConnection();
-            }
-        }
-    }
-
-    // verify if response is empty (contains only root element)
-    public boolean isEmpty() {
-        boolean result = false;
-        if (!this.responseBody.hasChildNodes())
-            result = true;
-        return result;
-    }
-
-    // ================FOLLOWING METHODS USE RETURN XML FILE=======================//
-
-    public boolean setParam(HashMap<String, String> param) {
-        if ((this.responseBody == null) && (this.commandType == CommandType.HTTP)) {
-            s_logger.error("Response body is empty");
-            return false;
-        }
-        Boolean result = true;
-
-        if (this.getCommandType() == CommandType.MYSQL) {
-            Set<?> set = this.setParam.entrySet();
-            Iterator<?> it = set.iterator();
-            while (it.hasNext()) {
-                Map.Entry<?, ?> me = (Map.Entry<?, ?>)it.next();
-                String key = (String)me.getKey();
-                String value = (String)me.getValue();
-                try {
-                    String itemName = null;
-                    while (this.result.next()) {
-                        itemName = this.result.getString(value);
-                    }
-                    if (itemName != null) {
-                        param.put(key, itemName);
-                    } else {
-                        s_logger.error("Following return parameter is missing: " + value);
-                        result = false;
-                    }
-                } catch (Exception ex) {
-                    s_logger.error("Unable to set parameter " + value, ex);
-                }
-            }
-        } else if (this.getCommandType() == CommandType.HTTP) {
-            if (this.list == false) {
-                Set<?> set = this.setParam.entrySet();
-                Iterator<?> it = set.iterator();
-
-                while (it.hasNext()) {
-                    Map.Entry<?, ?> me = (Map.Entry<?, ?>)it.next();
-                    String key = (String)me.getKey();
-                    String value = (String)me.getValue();
-                    // set parameters needed for the future use
-                    NodeList itemName = this.responseBody.getElementsByTagName(value);
-                    if ((itemName != null) && (itemName.getLength() != 0)) {
-                        for (int i = 0; i < itemName.getLength(); i++) {
-                            Element itemNameElement = (Element)itemName.item(i);
-                            if (itemNameElement.getChildNodes().getLength() <= 1) {
-                                param.put(key, itemNameElement.getTextContent());
-                                break;
-                            }
-                        }
-                    } else {
-                        s_logger.error("Following return parameter is missing: " + value);
-                        result = false;
-                    }
-                }
-            } else {
-                Set<?> set = this.setParam.entrySet();
-                Iterator<?> it = set.iterator();
-                NodeList returnLst = this.responseBody.getElementsByTagName(this.listName.getTextContent());
-                Node requiredNode = returnLst.item(Integer.parseInt(this.listId.getTextContent()));
-
-                if (requiredNode.getNodeType() == Node.ELEMENT_NODE) {
-                    Element fstElmnt = (Element)requiredNode;
-
-                    while (it.hasNext()) {
-                        Map.Entry<?, ?> me = (Map.Entry<?, ?>)it.next();
-                        String key = (String)me.getKey();
-                        String value = (String)me.getValue();
-                        NodeList itemName = fstElmnt.getElementsByTagName(value);
-                        if ((itemName != null) && (itemName.getLength() != 0)) {
-                            Element itemNameElement = (Element)itemName.item(0);
-                            if (itemNameElement.getChildNodes().getLength() <= 1) {
-                                param.put(key, itemNameElement.getTextContent());
-                            }
-                        } else {
-                            s_logger.error("Following return parameter is missing: " + value);
-                            result = false;
-                        }
-                    }
-                }
-            }
-        }
-        return result;
-    }
-
-    public String getUrl() {
-        return command;
-    }
-
-    public boolean verifyParam() {
-        boolean result = true;
-        if (this.getCommandType() == CommandType.HTTP) {
-            if (this.list == false) {
-                Set<?> set = verifyParam.entrySet();
-                Iterator<?> it = set.iterator();
-
-                while (it.hasNext()) {
-                    Map.Entry<?, ?> me = (Map.Entry<?, ?>)it.next();
-                    String key = (String)me.getKey();
-                    String value = (String)me.getValue();
-                    if (value == null) {
-                        s_logger.error("Parameter " + key + " is missing in the list of global parameters");
-                        return false;
-                    }
-
-                    NodeList itemName = this.responseBody.getElementsByTagName(key);
-                    if ((itemName.getLength() != 0) && (itemName != null)) {
-                        Element itemNameElement = (Element)itemName.item(0);
-                        if (itemNameElement.hasChildNodes()) {
-                            continue;
-                        }
-                        if (!(verifyParam.get(key).equals("no value")) && !(itemNameElement.getTextContent().equals(verifyParam.get(key)))) {
-                            s_logger.error("Incorrect value for the following tag: " + key + ". Expected value is " + verifyParam.get(key) + " while actual value is " +
-                                itemNameElement.getTextContent());
-                            result = false;
-                        }
-                    } else {
-                        s_logger.error("Following xml element is missing in the response: " + key);
-                        result = false;
-                    }
-                }
-            }
-            // for multiple elements
-            else {
-                Set<?> set = verifyParam.entrySet();
-                Iterator<?> it = set.iterator();
-                // get list element specified by id
-                NodeList returnLst = this.responseBody.getElementsByTagName(this.listName.getTextContent());
-                Node requiredNode = returnLst.item(Integer.parseInt(this.listId.getTextContent()));
-
-                if (requiredNode.getNodeType() == Node.ELEMENT_NODE) {
-                    Element fstElmnt = (Element)requiredNode;
-
-                    while (it.hasNext()) {
-                        Map.Entry<?, ?> me = (Map.Entry<?, ?>)it.next();
-                        String key = (String)me.getKey();
-                        String value = (String)me.getValue();
-                        if (value == null) {
-                            s_logger.error("Parameter " + key + " is missing in the list of global parameters");
-                            return false;
-                        }
-                        NodeList itemName = fstElmnt.getElementsByTagName(key);
-                        if ((itemName.getLength() != 0) && (itemName != null)) {
-                            Element itemNameElement = (Element)itemName.item(0);
-                            if (!(verifyParam.get(key).equals("no value")) && !(itemNameElement.getTextContent().equals(verifyParam.get(key)))) {
-                                s_logger.error("Incorrect value for the following tag: " + key + ". Expected value is " + verifyParam.get(key) +
-                                    " while actual value is " + itemNameElement.getTextContent());
-                                result = false;
-                            }
-                        } else {
-                            s_logger.error("Following xml element is missing in the response: " + key);
-                            result = false;
-                        }
-                    }
-                }
-            }
-        } else if (this.getCommandType() == CommandType.MYSQL) {
-            Set<?> set = verifyParam.entrySet();
-            Iterator<?> it = set.iterator();
-
-            while (it.hasNext()) {
-                Map.Entry<?, ?> me = (Map.Entry<?, ?>)it.next();
-                String key = (String)me.getKey();
-                String value = (String)me.getValue();
-                if (value == null) {
-                    s_logger.error("Parameter " + key + " is missing in the list of global parameters");
-                    return false;
-                }
-
-                String itemName = null;
-                try {
-                    while (this.result.next()) {
-                        itemName = this.result.getString(key);
-                    }
-                } catch (Exception ex) {
-                    s_logger.error("Unable to get element from result set " + key);
-                }
-
-                if (!(value.equals("no value")) && !(itemName.equals(verifyParam.get(key)))) {
-                    s_logger.error("Incorrect value for the following tag: " + key + ". Expected value is " + verifyParam.get(key) + " while actual value is " + itemName);
-                    result = false;
-                }
-            }
-        }
-        return result;
-    }
-
-    public static boolean verifyEvents(String fileName, String level, String host, String account) {
-        boolean result = false;
-        HashMap<String, Integer> expectedEvents = new HashMap<String, Integer>();
-        HashMap<String, Integer> actualEvents = new HashMap<String, Integer>();
-        String key = "";
-
-        File file = new File(fileName);
-        if (file.exists()) {
-            Properties pro = new Properties();
-            try {
-                // get expected events
-                FileInputStream in = new FileInputStream(file);
-                pro.load(in);
-                Enumeration<?> en = pro.propertyNames();
-                while (en.hasMoreElements()) {
-                    key = (String)en.nextElement();
-                    expectedEvents.put(key, Integer.parseInt(pro.getProperty(key)));
-                }
-
-                // get actual events
-                String url = host + "/?command=listEvents&account=" + account + "&level=" + level + "&domainid=1&pagesize=100";
-                s_logger.info("Getting events with the following url " + url);
-                HttpClient client = new HttpClient();
-                HttpMethod method = new GetMethod(url);
-                int responseCode = client.executeMethod(method);
-                if (responseCode == 200) {
-                    InputStream is = method.getResponseBodyAsStream();
-                    ArrayList<HashMap<String, String>> eventValues = UtilsForTest.parseMulXML(is, new String[] {"event"});
-
-                    for (int i = 0; i < eventValues.size(); i++) {
-                        HashMap<String, String> element = eventValues.get(i);
-                        if (element.get("level").equals(level)) {
-                            if (actualEvents.containsKey(element.get("type")) == true) {
-                                actualEvents.put(element.get("type"), actualEvents.get(element.get("type")) + 1);
-                            } else {
-                                actualEvents.put(element.get("type"), 1);
-                            }
-                        }
-                    }
-                }
-                method.releaseConnection();
-
-                // compare actual events with expected events
-
-                // compare expected result and actual result
-                Iterator<?> iterator = expectedEvents.keySet().iterator();
-                Integer expected;
-                Integer actual;
-                int fail = 0;
-                while (iterator.hasNext()) {
-                    expected = null;
-                    actual = null;
-                    String type = iterator.next().toString();
-                    expected = expectedEvents.get(type);
-                    actual = actualEvents.get(type);
-                    if (actual == null) {
-                        s_logger.error("Event of type " + type + " and level " + level + " is missing in the listEvents response. Expected number of these events is " +
-                            expected);
-                        fail++;
-                    } else if (expected.compareTo(actual) != 0) {
-                        fail++;
-                        s_logger.info("Amount of events of  " + type + " type and level " + level + " is incorrect. Expected number of these events is " + expected +
-                            ", actual number is " + actual);
-                    }
-                }
-                if (fail == 0) {
-                    result = true;
-                }
-            } catch (Exception ex) {
-                s_logger.error(ex);
-            }
-        } else {
-            s_logger.info("File " + fileName + " not found");
-        }
-        return result;
-    }
-
-    public static boolean verifyEvents(HashMap<String, Integer> expectedEvents, String level, String host, String parameters) {
-        boolean result = false;
-        HashMap<String, Integer> actualEvents = new HashMap<String, Integer>();
-        try {
-            // get actual events
-            String url = host + "/?command=listEvents&" + parameters;
-            HttpClient client = new HttpClient();
-            HttpMethod method = new GetMethod(url);
-            int responseCode = client.executeMethod(method);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                ArrayList<HashMap<String, String>> eventValues = UtilsForTest.parseMulXML(is, new String[] {"event"});
-
-                for (int i = 0; i < eventValues.size(); i++) {
-                    HashMap<String, String> element = eventValues.get(i);
-                    if (element.get("level").equals(level)) {
-                        if (actualEvents.containsKey(element.get("type")) == true) {
-                            actualEvents.put(element.get("type"), actualEvents.get(element.get("type")) + 1);
-                        } else {
-                            actualEvents.put(element.get("type"), 1);
-                        }
-                    }
-                }
-            }
-            method.releaseConnection();
-        } catch (Exception ex) {
-            s_logger.error(ex);
-        }
-
-        // compare actual events with expected events
-        Iterator<?> iterator = expectedEvents.keySet().iterator();
-        Integer expected;
-        Integer actual;
-        int fail = 0;
-        while (iterator.hasNext()) {
-            expected = null;
-            actual = null;
-            String type = iterator.next().toString();
-            expected = expectedEvents.get(type);
-            actual = actualEvents.get(type);
-            if (actual == null) {
-                s_logger.error("Event of type " + type + " and level " + level + " is missing in the listEvents response. Expected number of these events is " + expected);
-                fail++;
-            } else if (expected.compareTo(actual) != 0) {
-                fail++;
-                s_logger.info("Amount of events of  " + type + " type and level " + level + " is incorrect. Expected number of these events is " + expected +
-                    ", actual number is " + actual);
-            }
-        }
-
-        if (fail == 0) {
-            result = true;
-        }
-
-        return result;
-    }
-
-    public Element queryAsyncJobResult(String jobId) {
-        Element returnBody = null;
-        int code = 400;
-        String resultUrl = this.host + ":8096/?command=queryAsyncJobResult&jobid=" + jobId;
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(resultUrl);
-        while (true) {
-            try {
-                code = client.executeMethod(method);
-                if (code == 200) {
-                    InputStream is = method.getResponseBodyAsStream();
-                    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
-                    DocumentBuilder builder = factory.newDocumentBuilder();
-                    Document doc = builder.parse(is);
-                    doc.getDocumentElement().normalize();
-                    returnBody = doc.getDocumentElement();
-                    Element jobStatusTag = (Element)returnBody.getElementsByTagName("jobstatus").item(0);
-                    String jobStatus = jobStatusTag.getTextContent();
-                    if (jobStatus.equals("0")) {
-                        try {
-                            Thread.sleep(1000);
-                        } catch (InterruptedException e) {
-                            s_logger.debug("[ignored] interrupted while during async job result query.");
-                        }
-                    } else {
-                        break;
-                    }
-                    method.releaseConnection();
-                } else {
-                    s_logger.error("Error during queryJobAsync. Error code is " + code);
-                    this.responseCode = code;
-                    return null;
-                }
-            } catch (Exception ex) {
-                s_logger.error(ex);
-            }
-        }
-        return returnBody;
-    }
-
-    private String getElementByName(String elementName) {
-        NodeList commandName = this.xmlCommand.getElementsByTagName(elementName);
-        if (commandName.getLength() != 0) {
-            Element commandElmnt = (Element)commandName.item(0);
-            NodeList commandNm = commandElmnt.getChildNodes();
-            return commandNm.item(0).getNodeValue();
-        } else {
-            return null;
-        }
-    }
-
-    private boolean verifyTagValue(String elementName, String expectedValue) {
-        NodeList tag = this.xmlCommand.getElementsByTagName(elementName);
-        if (tag.getLength() != 0) {
-            Element commandElmnt = (Element)tag.item(0);
-            NodeList commandNm = commandElmnt.getChildNodes();
-            if (commandNm.item(0).getNodeValue().equals(expectedValue)) {
-                return true;
-            } else {
-                return false;
-            }
-        } else {
-            return false;
-        }
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/regression/ConfigTest.java b/test/src-not-used/main/java/com/cloud/test/regression/ConfigTest.java
deleted file mode 100644
index 8d5c358..0000000
--- a/test/src-not-used/main/java/com/cloud/test/regression/ConfigTest.java
+++ /dev/null
@@ -1,125 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.regression;
-
-import java.util.HashMap;
-
-import org.apache.log4j.Logger;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-import com.trilead.ssh2.Connection;
-import com.trilead.ssh2.Session;
-
-import com.cloud.test.regression.ApiCommand.ResponseType;
-
-public class ConfigTest extends TestCase {
-    public static final Logger s_logger = Logger.getLogger(ConfigTest.class.getName());
-
-    public ConfigTest() {
-        this.setClient();
-        this.setParam(new HashMap<String, String>());
-    }
-
-    @Override
-    public boolean executeTest() {
-
-        int error = 0;
-        Element rootElement = this.getInputFile().get(0).getDocumentElement();
-        NodeList commandLst = rootElement.getElementsByTagName("command");
-
-        //Analyze each command, send request and build the array list of api commands
-        for (int i = 0; i < commandLst.getLength(); i++) {
-            Node fstNode = commandLst.item(i);
-            Element fstElmnt = (Element)fstNode;
-
-            //new command
-            ApiCommand api = new ApiCommand(fstElmnt, this.getParam(), this.getCommands());
-
-            if (api.getName().equals("rebootManagementServer")) {
-
-                s_logger.info("Attempting to SSH into management server " + this.getParam().get("hostip"));
-                try {
-                    Connection conn = new Connection(this.getParam().get("hostip"));
-                    conn.connect(null, 60000, 60000);
-
-                    s_logger.info("SSHed successfully into management server " + this.getParam().get("hostip"));
-
-                    boolean isAuthenticated = conn.authenticateWithPassword("root", "password");
-
-                    if (isAuthenticated == false) {
-                        s_logger.info("Authentication failed for root with password");
-                        return false;
-                    }
-
-                    String restartCommand = "service cloud-management restart; service cloud-usage restart";
-                    Session sess = conn.openSession();
-                    s_logger.info("Executing : " + restartCommand);
-                    sess.execCommand(restartCommand);
-                    Thread.sleep(120000);
-                    sess.close();
-                    conn.close();
-
-                } catch (Exception ex) {
-                    s_logger.error(ex);
-                    return false;
-                }
-            } else {
-                //send a command
-                api.sendCommand(this.getClient(), null);
-
-                //verify the response of the command
-                if ((api.getResponseType() == ResponseType.ERROR) && (api.getResponseCode() == 200) && (api.getTestCaseInfo() != null)) {
-                    s_logger.error("Test case " + api.getTestCaseInfo() +
-                        "failed. Command that was supposed to fail, passed. The command was sent with the following url " + api.getUrl());
-                    error++;
-                } else if ((api.getResponseType() != ResponseType.ERROR) && (api.getResponseCode() == 200)) {
-                    //set parameters for the future use
-                    if (api.setParam(this.getParam()) == false) {
-                        s_logger.error("Exiting the test...Command " + api.getName() +
-                            " didn't return parameters needed for the future use. The command was sent with url " + api.getUrl());
-                        return false;
-                    } else {
-                        //verify parameters
-                        if (api.verifyParam() == false) {
-                            s_logger.error("Command " + api.getName() + " failed. Verification for returned parameters failed. Command was sent with url " + api.getUrl());
-                            error++;
-                        } else if (api.getTestCaseInfo() != null) {
-                            s_logger.info("Test case " + api.getTestCaseInfo() + " passed. Command was sent with the url " + api.getUrl());
-                        }
-                    }
-                } else if ((api.getResponseType() != ResponseType.ERROR) && (api.getResponseCode() != 200)) {
-                    s_logger.error("Command " + api.getName() + " failed with an error code " + api.getResponseCode() + " . Command was sent with url  " + api.getUrl() +
-                        " Required: " + api.getRequired());
-                    if (api.getRequired() == true) {
-                        s_logger.info("The command is required for the future use, so exiging");
-                        return false;
-                    }
-                    error++;
-                } else if (api.getTestCaseInfo() != null) {
-                    s_logger.info("Test case " + api.getTestCaseInfo() + " passed. Command that was supposed to fail, failed - test passed. Command was sent with url " +
-                        api.getUrl());
-                }
-            }
-        }
-        if (error != 0)
-            return false;
-        else
-            return true;
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/regression/DelegatedAdminTest.java b/test/src-not-used/main/java/com/cloud/test/regression/DelegatedAdminTest.java
deleted file mode 100644
index cad22db..0000000
--- a/test/src-not-used/main/java/com/cloud/test/regression/DelegatedAdminTest.java
+++ /dev/null
@@ -1,129 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.regression;
-
-import java.util.HashMap;
-
-import org.apache.log4j.Logger;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-import com.cloud.test.regression.ApiCommand.ResponseType;
-
-public class DelegatedAdminTest extends TestCase {
-
-    public static final Logger s_logger = Logger.getLogger(DelegatedAdminTest.class.getName());
-
-    public DelegatedAdminTest() {
-        this.setClient();
-        this.setParam(new HashMap<String, String>());
-    }
-
-    @Override
-    public boolean executeTest() {
-        int error = 0;
-
-        for (Document eachElement : this.getInputFile()) {
-
-            Element rootElement = eachElement.getDocumentElement();
-            NodeList commandLst = rootElement.getElementsByTagName("command");
-
-            //Analyze each command, send request and build the array list of api commands
-            for (int i = 0; i < commandLst.getLength(); i++) {
-                boolean verify = false;
-                Node fstNode = commandLst.item(i);
-                Element fstElmnt = (Element)fstNode;
-
-                //new command
-                ApiCommand api = new ApiCommand(fstElmnt, this.getParam(), this.getCommands());
-
-                if ((eachElement.getElementsByTagName("delegated_admin_verify_part2").getLength() != 0) && !(api.getName().equals("registerUserKeys"))) {
-                    if (api.getName().startsWith("list")) {
-
-                        if (this.denyToExecute()) {
-                            api.setResponseType(ResponseType.EMPTY);
-                        }
-                        verify = true;
-                    }
-
-                    if (this.denyToExecute()) {
-                        api.setResponseType(ResponseType.ERROR);
-                    }
-                }
-
-                //send a command
-                api.sendCommand(this.getClient(), null);
-
-                //verify the response of the command
-                if ((verify == true) && !(api.getResponseType() == ResponseType.ERROR || api.getResponseType() == ResponseType.EMPTY)) {
-                    s_logger.error("Test case " + api.getTestCaseInfo() +
-                        " failed. Command that was supposed to fail, passed. The command was sent with the following url " + api.getUrl());
-                    error++;
-                } else if ((verify == true) && (api.getResponseType() == ResponseType.ERROR || api.getResponseType() == ResponseType.EMPTY)) {
-                    s_logger.info("Test case " + api.getTestCaseInfo() + " passed");
-                } else if ((api.getResponseType() == ResponseType.ERROR) && (api.getResponseCode() == 200)) {
-                    s_logger.error("Test case " + api.getTestCaseInfo() +
-                        " failed. Command that was supposed to fail, passed. The command was sent with the following url " + api.getUrl());
-                    error++;
-                } else if ((api.getResponseType() != ResponseType.ERROR) && (api.getResponseCode() == 200)) {
-                    //set parameters for the future use
-                    if (api.setParam(this.getParam()) == false) {
-                        s_logger.error("Exiting the test...Command " + api.getName() +
-                            " didn't return parameters needed for the future use. The command was sent with url " + api.getUrl());
-                        return false;
-                    } else if (api.getTestCaseInfo() != null) {
-                        s_logger.info("Test case " + api.getTestCaseInfo() + " passed");
-                    }
-                } else if ((api.getResponseType() != ResponseType.ERROR) && (api.getResponseCode() != 200)) {
-                    s_logger.error("Test case  " + api.getTestCaseInfo() + " failed with an error code " + api.getResponseCode() + " . Command was sent with url  " +
-                        api.getUrl());
-                    if (api.getRequired() == true) {
-                        s_logger.info("The command is required for the future use, so exiging");
-                        return false;
-                    }
-                    error++;
-                } else if (api.getTestCaseInfo() != null) {
-                    s_logger.info("Test case " + api.getTestCaseInfo() + " passed");
-
-                }
-            }
-        }
-
-        if (error != 0)
-            return false;
-        else
-            return true;
-    }
-
-    public boolean denyToExecute() {
-        boolean result = true;
-        Integer level1 = Integer.valueOf(this.getParam().get("domainlevel1"));
-        Integer level2 = Integer.valueOf(this.getParam().get("domainlevel2"));
-        String domain1 = this.getParam().get("domainname1");
-        String domain2 = this.getParam().get("domainname2");
-
-        if (this.getParam().get("accounttype2").equals("1")) {
-            result = false;
-        } else if ((level2.compareTo(level1) < 0) && (domain1.startsWith(domain2)) && (this.getParam().get("accounttype2").equals("2"))) {
-            result = false;
-        }
-
-        return result;
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/regression/Deploy.java b/test/src-not-used/main/java/com/cloud/test/regression/Deploy.java
deleted file mode 100644
index 716e627..0000000
--- a/test/src-not-used/main/java/com/cloud/test/regression/Deploy.java
+++ /dev/null
@@ -1,109 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.regression;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-
-import org.apache.log4j.Logger;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-public class Deploy extends TestCase {
-    public static final Logger s_logger = Logger.getLogger(Deploy.class.getName());
-
-    public Deploy() {
-        this.setClient();
-        this.setParam(new HashMap<String, String>());
-    }
-
-    @Override
-    public boolean executeTest() {
-        int error = 0;
-        Element rootElement = this.getInputFile().get(0).getDocumentElement();
-        NodeList commandLst = rootElement.getElementsByTagName("command");
-
-        //Analyze each command, send request and build the array list of api commands
-        for (int i = 0; i < commandLst.getLength(); i++) {
-            Node fstNode = commandLst.item(i);
-            Element fstElmnt = (Element)fstNode;
-
-            //new command
-            ApiCommand api = new ApiCommand(fstElmnt, this.getParam(), this.getCommands());
-
-            //send a command
-            api.sendCommand(this.getClient(), null);
-
-            //verify the response of the command
-            if (api.getResponseCode() != 200) {
-                error++;
-                s_logger.error("The command " + api.getUrl() + " failed");
-            } else {
-                s_logger.info("The command " + api.getUrl() + " passsed");
-            }
-        }
-        if (error != 0)
-            return false;
-        else
-            return true;
-    }
-
-    public static void main(String[] args) {
-
-        List<String> argsList = Arrays.asList(args);
-        Iterator<String> iter = argsList.iterator();
-        String host = null;
-        String file = null;
-
-        while (iter.hasNext()) {
-            String arg = iter.next();
-            // management server host
-            if (arg.equals("-h")) {
-                host = iter.next();
-            }
-            if (arg.equals("-f")) {
-                file = iter.next();
-            }
-        }
-
-        Deploy deploy = new Deploy();
-
-        ArrayList<String> inputFile = new ArrayList<String>();
-        inputFile.add(file);
-        deploy.setInputFile(inputFile);
-        deploy.setTestCaseName("Management server deployment");
-        deploy.getParam().put("hostip", host);
-        deploy.getParam().put("apicommands", "../metadata/func/commands");
-        deploy.setCommands();
-
-        s_logger.info("Starting deployment against host " + host);
-
-        boolean result = deploy.executeTest();
-        if (result == false) {
-            s_logger.error("DEPLOYMENT FAILED");
-            System.exit(1);
-        } else {
-            s_logger.info("DEPLOYMENT IS SUCCESSFUL");
-        }
-
-    }
-
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/regression/EventsApiTest.java b/test/src-not-used/main/java/com/cloud/test/regression/EventsApiTest.java
deleted file mode 100644
index 6d724c0..0000000
--- a/test/src-not-used/main/java/com/cloud/test/regression/EventsApiTest.java
+++ /dev/null
@@ -1,176 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.regression;
-
-import java.sql.Statement;
-import java.util.HashMap;
-
-import org.apache.log4j.Logger;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-import com.trilead.ssh2.Connection;
-import com.trilead.ssh2.Session;
-
-import com.cloud.test.regression.ApiCommand.ResponseType;
-
-public class EventsApiTest extends TestCase {
-    public static final Logger s_logger = Logger.getLogger(EventsApiTest.class.getName());
-
-    public EventsApiTest() {
-        this.setClient();
-        this.setParam(new HashMap<String, String>());
-    }
-
-    @Override
-    public boolean executeTest() {
-        int error = 0;
-        Element rootElement = this.getInputFile().get(0).getDocumentElement();
-        NodeList commandLst = rootElement.getElementsByTagName("command");
-
-        //Analyze each command, send request and build the array list of api commands
-        for (int i = 0; i < commandLst.getLength(); i++) {
-            Node fstNode = commandLst.item(i);
-            Element fstElmnt = (Element)fstNode;
-
-            //!!!check if we need to execute mySql command
-            NodeList commandName = fstElmnt.getElementsByTagName("name");
-            Element commandElmnt = (Element)commandName.item(0);
-            NodeList commandNm = commandElmnt.getChildNodes();
-            if (commandNm.item(0).getNodeValue().equals("mysqlupdate")) {
-                //establish connection to mysql server and execute an update command
-                NodeList mysqlList = fstElmnt.getElementsByTagName("mysqlcommand");
-                for (int j = 0; j < mysqlList.getLength(); j++) {
-                    Element itemVariableElement = (Element)mysqlList.item(j);
-
-                    s_logger.info("Executing mysql command " + itemVariableElement.getTextContent());
-                    try {
-                        Statement st = this.getConn().createStatement();
-                        st.executeUpdate(itemVariableElement.getTextContent());
-                    } catch (Exception ex) {
-                        s_logger.error(ex);
-                        return false;
-                    }
-                }
-            }
-
-            else if (commandNm.item(0).getNodeValue().equals("agentcommand")) {
-                //connect to all the agents and execute agent command
-                NodeList commandList = fstElmnt.getElementsByTagName("commandname");
-                Element commandElement = (Element)commandList.item(0);
-                NodeList ipList = fstElmnt.getElementsByTagName("ip");
-                for (int j = 0; j < ipList.getLength(); j++) {
-                    Element itemVariableElement = (Element)ipList.item(j);
-
-                    s_logger.info("Attempting to SSH into agent " + itemVariableElement.getTextContent());
-                    try {
-                        Connection conn = new Connection(itemVariableElement.getTextContent());
-                        conn.connect(null, 60000, 60000);
-
-                        s_logger.info("SSHed successfully into agent " + itemVariableElement.getTextContent());
-
-                        boolean isAuthenticated = conn.authenticateWithPassword("root", "password");
-
-                        if (isAuthenticated == false) {
-                            s_logger.info("Authentication failed for root with password");
-                            return false;
-                        }
-
-                        Session sess = conn.openSession();
-                        s_logger.info("Executing : " + commandElement.getTextContent());
-                        sess.execCommand(commandElement.getTextContent());
-                        Thread.sleep(60000);
-                        sess.close();
-                        conn.close();
-
-                    } catch (Exception ex) {
-                        s_logger.error(ex);
-                        return false;
-                    }
-                }
-            }
-
-            else {
-                //new command
-                ApiCommand api = new ApiCommand(fstElmnt, this.getParam(), this.getCommands());
-
-                //send a command
-                api.sendCommand(this.getClient(), null);
-
-                //verify the response of the command
-                if ((api.getResponseType() == ResponseType.ERROR) && (api.getResponseCode() == 200)) {
-                    s_logger.error("Test case " + api.getTestCaseInfo() +
-                        " failed. Command that was supposed to fail, passed. The command was sent with the following url " + api.getUrl());
-                    error++;
-                } else if ((api.getResponseType() != ResponseType.ERROR) && (api.getResponseCode() == 200)) {
-                    //verify if response is suppposed to be empty
-                    if (api.getResponseType() == ResponseType.EMPTY) {
-                        if (api.isEmpty() == true) {
-                            s_logger.info("Test case " + api.getTestCaseInfo() + " passed. Empty response was returned as expected. Command was sent with url " +
-                                api.getUrl());
-                        } else {
-                            s_logger.error("Test case " + api.getTestCaseInfo() + " failed. Empty response was expected. Command was sent with url " + api.getUrl());
-                        }
-                    } else {
-                        if (api.isEmpty() != false)
-                            s_logger.error("Test case " + api.getTestCaseInfo() + " failed. Non-empty response was expected. Command was sent with url " + api.getUrl());
-                        else {
-                            //set parameters for the future use
-                            if (api.setParam(this.getParam()) == false) {
-                                s_logger.error("Exiting the test...Command " + api.getName() +
-                                    " didn't return parameters needed for the future use. The command was sent with url " + api.getUrl());
-                                return false;
-                            } else if (api.getTestCaseInfo() != null) {
-                                s_logger.info("Test case " + api.getTestCaseInfo() + " passed. Command was sent with the url " + api.getUrl());
-                            }
-                        }
-                    }
-                } else if ((api.getResponseType() != ResponseType.ERROR) && (api.getResponseCode() != 200)) {
-                    s_logger.error("Command " + api.getName() + " failed with an error code " + api.getResponseCode() + " . Command was sent with url  " + api.getUrl());
-                    if (api.getRequired() == true) {
-                        s_logger.info("The command is required for the future use, so exiging");
-                        return false;
-                    }
-                    error++;
-                } else if (api.getTestCaseInfo() != null) {
-                    s_logger.info("Test case " + api.getTestCaseInfo() + " passed. Command that was supposed to fail, failed. Command was sent with url " + api.getUrl());
-
-                }
-            }
-        }
-
-        //verify events with userid parameter - test case 97
-        HashMap<String, Integer> expectedEvents = new HashMap<String, Integer>();
-        expectedEvents.put("VM.START", 1);
-        boolean eventResult =
-            ApiCommand.verifyEvents(expectedEvents, "INFO", "http://" + this.getParam().get("hostip") + ":8096", "userid=" + this.getParam().get("userid1") +
-                "&type=VM.START");
-        s_logger.info("Test case 97 - listEvent command verification result is  " + eventResult);
-
-        //verify error events
-        eventResult =
-            ApiCommand.verifyEvents("../metadata/error_events.properties", "ERROR", "http://" + this.getParam().get("hostip") + ":8096",
-                this.getParam().get("erroruseraccount"));
-        s_logger.info("listEvent command verification result is  " + eventResult);
-
-        if (error != 0)
-            return false;
-        else
-            return true;
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/regression/HA.java b/test/src-not-used/main/java/com/cloud/test/regression/HA.java
deleted file mode 100644
index 0a17a5b..0000000
--- a/test/src-not-used/main/java/com/cloud/test/regression/HA.java
+++ /dev/null
@@ -1,80 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.regression;
-
-import org.apache.log4j.Logger;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-import com.cloud.test.regression.ApiCommand.ResponseType;
-
-public class HA extends TestCase {
-
-    public static final Logger s_logger = Logger.getLogger(HA.class.getName());
-
-    public HA() {
-        this.setClient();
-    }
-
-    @Override
-    public boolean executeTest() {
-        int error = 0;
-        Element rootElement = this.getInputFile().get(0).getDocumentElement();
-        NodeList commandLst = rootElement.getElementsByTagName("command");
-
-        //Analyze each command, send request and build the array list of api commands
-        for (int i = 0; i < commandLst.getLength(); i++) {
-
-            Node fstNode = commandLst.item(i);
-            Element fstElmnt = (Element)fstNode;
-
-            //new command
-            ApiCommand api = new ApiCommand(fstElmnt, this.getParam(), this.getCommands());
-
-            //send a command
-            api.sendCommand(this.getClient(), this.getConn());
-
-            //verify the response parameters
-            if ((api.getResponseCode() != 200) && (api.getRequired() == true)) {
-                s_logger.error("Exiting the test....Command " + api.getName() + " required for the future run, failed with an error code " + api.getResponseCode() +
-                    ". Command was sent with the url " + api.getUrl());
-                return false;
-            } else if ((api.getResponseCode() != 200) && (api.getResponseType() != ResponseType.ERROR)) {
-                error++;
-                s_logger.error("Command " + api.getTestCaseInfo() + " failed with an error code " + api.getResponseCode() + " . Command was sent with url  " +
-                    api.getUrl());
-            } else if ((api.getResponseCode() == 200) && (api.getResponseType() == ResponseType.ERROR)) {
-                error++;
-                s_logger.error("Command " + api.getTestCaseInfo() + " which was supposed to failed, passed. The command was sent with url  " + api.getUrl());
-            } else {
-                //set parameters for the future use
-                if (api.setParam(this.getParam()) == false) {
-                    s_logger.error("Exiting the test...Command " + api.getName() + " didn't return parameters needed for the future use. Command was sent with url " +
-                        api.getUrl());
-                    return false;
-                }
-                s_logger.info("Command " + api.getTestCaseInfo() + " passed");
-            }
-        }
-
-        if (error != 0)
-            return false;
-        else
-            return true;
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/regression/LoadBalancingTest.java b/test/src-not-used/main/java/com/cloud/test/regression/LoadBalancingTest.java
deleted file mode 100644
index cdbc536..0000000
--- a/test/src-not-used/main/java/com/cloud/test/regression/LoadBalancingTest.java
+++ /dev/null
@@ -1,142 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.regression;
-
-import java.util.HashMap;
-
-import org.apache.log4j.Logger;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-import com.cloud.test.regression.ApiCommand.ResponseType;
-
-public class LoadBalancingTest extends TestCase {
-
-    public static final Logger s_logger = Logger.getLogger(LoadBalancingTest.class.getName());
-
-    public LoadBalancingTest() {
-        this.setClient();
-        this.setParam(new HashMap<String, String>());
-    }
-
-    @Override
-    public boolean executeTest() {
-
-        int error = 0;
-        Element rootElement = this.getInputFile().get(0).getDocumentElement();
-        NodeList commandLst = rootElement.getElementsByTagName("command");
-
-        //Analyze each command, send request and build the array list of api commands
-        for (int i = 0; i < commandLst.getLength(); i++) {
-
-            Node fstNode = commandLst.item(i);
-            Element fstElmnt = (Element)fstNode;
-
-            //new command
-            ApiCommand api = new ApiCommand(fstElmnt, this.getParam(), this.getCommands());
-
-            //send a command
-            api.sendCommand(this.getClient(), null);
-
-            //verify the response of the command
-            if ((api.getResponseType() == ResponseType.ERROR) && (api.getResponseCode() == 200)) {
-                s_logger.error("Test case " + api.getTestCaseInfo() + " failed. Command that was supposed to fail, passed. The command was sent with the following url " +
-                    api.getUrl());
-                error++;
-            } else if ((api.getResponseType() != ResponseType.ERROR) && (api.getResponseCode() == 200)) {
-                //verify if response is suppposed to be empty
-                if (api.getResponseType() == ResponseType.EMPTY) {
-                    if (api.isEmpty() == true) {
-                        s_logger.info("Test case " + api.getTestCaseInfo() + " passed");
-                    } else {
-                        s_logger.error("Test case " + api.getTestCaseInfo() + " failed. Empty response was expected. Command was sent with url " + api.getUrl());
-                    }
-                } else {
-                    if (api.isEmpty() != false)
-                        s_logger.error("Test case " + api.getTestCaseInfo() + " failed. Non-empty response was expected. Command was sent with url " + api.getUrl());
-                    else {
-                        //set parameters for the future use
-                        if (api.setParam(this.getParam()) == false) {
-                            s_logger.error("Exiting the test...Command " + api.getName() +
-                                " didn't return parameters needed for the future use. The command was sent with url " + api.getUrl());
-                            return false;
-                        } else if (api.getTestCaseInfo() != null) {
-                            s_logger.info("Test case " + api.getTestCaseInfo() + " passed");
-                        }
-                    }
-                }
-            } else if ((api.getResponseType() != ResponseType.ERROR) && (api.getResponseCode() != 200)) {
-                s_logger.error("Test case " + api.getTestCaseInfo() + " failed. Command was sent with url  " + api.getUrl());
-                if (api.getRequired() == true) {
-                    s_logger.info("The command is required for the future use, so exiging");
-                    return false;
-                }
-                error++;
-            } else if (api.getTestCaseInfo() != null) {
-                s_logger.info("Test case " + api.getTestCaseInfo() + " passed");
-
-            }
-        }
-
-//        //Try to create portForwarding rule for all available private/public ports
-//        ArrayList<String> port = new ArrayList<String>();
-//        for (int i=1; i<65536; i++){
-//            port.add(Integer.toString(i));
-//        }
-//
-//        //try all public ports
-//        for (String portValue : port) {
-//            try {
-//                String url = this.getHost() + ":8096/?command=createOrUpdateLoadBalancerRule&account=" + this.getParam().get("accountname") + "&publicip=" + this.getParam().get("boundaryip") +
-//                "&privateip=" + this.getParam().get("vmipaddress") + "&privateport=22&protocol=tcp&publicport=" + portValue;
-//                HttpClient client = new HttpClient();
-//                HttpMethod method = new GetMethod(url);
-//                int responseCode = client.executeMethod(method);
-//                if (responseCode != 200 ) {
-//                    error++;
-//                    s_logger.error("Can't create LB rule for the public port " + portValue + ". Request was sent with url " + url);
-//                }
-//            }catch (Exception ex) {
-//                s_logger.error(ex);
-//            }
-//        }
-//
-//        //try all private ports
-//        for (String portValue : port) {
-//            try {
-//                String url = this.getHost() + ":8096/?command=createOrUpdateLoadBalancerRule&account=" + this.getParam().get("accountname") + "&publicip=" + this.getParam().get("boundaryip") +
-//                "&privateip=" + this.getParam().get("vmipaddress") + "&publicport=22&protocol=tcp&privateport=" + portValue;
-//                HttpClient client = new HttpClient();
-//                HttpMethod method = new GetMethod(url);
-//                int responseCode = client.executeMethod(method);
-//                if (responseCode != 200 ) {
-//                    error++;
-//                    s_logger.error("Can't create LB rule for the private port " + portValue + ". Request was sent with url " + url);
-//                }
-//            }catch (Exception ex) {
-//                s_logger.error(ex);
-//            }
-//        }
-
-        if (error != 0)
-            return false;
-        else
-            return true;
-    }
-
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/regression/PortForwardingTest.java b/test/src-not-used/main/java/com/cloud/test/regression/PortForwardingTest.java
deleted file mode 100644
index 24415fd..0000000
--- a/test/src-not-used/main/java/com/cloud/test/regression/PortForwardingTest.java
+++ /dev/null
@@ -1,143 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.regression;
-
-import java.util.HashMap;
-
-import org.apache.log4j.Logger;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-import com.cloud.test.regression.ApiCommand.ResponseType;
-
-public class PortForwardingTest extends TestCase {
-    public static final Logger s_logger = Logger.getLogger(PortForwardingTest.class.getName());
-
-    public PortForwardingTest() {
-        setClient();
-        setParam(new HashMap<String, String>());
-    }
-
-    @Override
-    public boolean executeTest() {
-
-        int error = 0;
-        Element rootElement = getInputFile().get(0).getDocumentElement();
-        NodeList commandLst = rootElement.getElementsByTagName("command");
-
-        //Analyze each command, send request and build the array list of api commands
-        for (int i = 0; i < commandLst.getLength(); i++) {
-
-            Node fstNode = commandLst.item(i);
-            Element fstElmnt = (Element)fstNode;
-
-            //new command
-            ApiCommand api = new ApiCommand(fstElmnt, getParam(), getCommands());
-
-            //send a command
-            api.sendCommand(getClient(), null);
-
-            //verify the response of the command
-            if ((api.getResponseType() != ResponseType.ERROR) && (api.getResponseCode() == 200)) {
-                s_logger.error("Test case " + api.getTestCaseInfo() + " failed. Command that was supposed to fail, passed. The command was sent with the following url " +
-                    api.getUrl());
-                error++;
-            } else if ((api.getResponseType() != ResponseType.ERROR) && (api.getResponseCode() == 200)) {
-                //verify if response is suppposed to be empty
-                if (api.getResponseType() == ResponseType.EMPTY) {
-                    if (api.isEmpty() == true) {
-                        s_logger.info("Test case " + api.getTestCaseInfo() + " passed");
-                    } else {
-                        s_logger.error("Test case " + api.getTestCaseInfo() + " failed. Empty response was expected. Command was sent with url " + api.getUrl());
-                    }
-                } else {
-                    if (api.isEmpty() != false)
-                        s_logger.error("Test case " + api.getTestCaseInfo() + " failed. Non-empty response was expected. Command was sent with url " + api.getUrl());
-                    else {
-                        //set parameters for the future use
-                        if (api.setParam(getParam()) == false) {
-                            s_logger.error("Exiting the test...Command " + api.getName() +
-                                " didn't return parameters needed for the future use. The command was sent with url " + api.getUrl());
-                            return false;
-                        } else if (api.getTestCaseInfo() != null) {
-                            s_logger.info("Test case " + api.getTestCaseInfo() + " passed");
-                        }
-                    }
-                }
-            } else if ((api.getResponseType() != ResponseType.ERROR) && (api.getResponseCode() != 200)) {
-                s_logger.error("Test case " + api.getTestCaseInfo() + " failed . Command was sent with url  " + api.getUrl());
-                if (api.getRequired() == true) {
-                    s_logger.info("The command is required for the future use, so exiging");
-                    return false;
-                }
-                error++;
-            } else if (api.getTestCaseInfo() != null) {
-                s_logger.info("Test case " + api.getTestCaseInfo() + " passed");
-
-            }
-        }
-
-//        //Try to create portForwarding rule for all available private/public ports
-//        ArrayList<String> port = new ArrayList<String>();
-//        for (int i=1; i<65536; i++){
-//            port.add(Integer.toString(i));
-//        }
-//
-//        //try all public ports
-//        for (String portValue : port) {
-//            try {
-//                s_logger.info("public port is " + portValue);
-//                String url = this.getHost() + ":8096/?command=createOrUpdateIpForwardingRule&account=" + this.getParam().get("accountname") + "&publicip=" + this.getParam().get("boundaryip") +
-//                "&privateip=" + this.getParam().get("vmipaddress") + "&privateport=22&protocol=tcp&publicport=" + portValue;
-//                HttpClient client = new HttpClient();
-//                HttpMethod method = new GetMethod(url);
-//                int responseCode = client.executeMethod(method);
-//                if (responseCode != 200 ) {
-//                    error++;
-//                    s_logger.error("Can't create portForwarding rule for the public port " + portValue + ". Request was sent with url " + url);
-//                }
-//            }catch (Exception ex) {
-//                s_logger.error(ex);
-//            }
-//        }
-//
-//        //try all private ports
-//        for (String portValue : port) {
-//            try {
-//                String url = this.getHost() + ":8096/?command=createOrUpdateIpForwardingRule&account=" +
-//        this.getParam().get("accountname") + "&publicip=" + this.getParam().get("boundaryip") +
-//                "&privateip=" + this.getParam().get("vmipaddress") + "&publicport=22&protocol=tcp&privateport=" + portValue;
-//                HttpClient client = new HttpClient();
-//                HttpMethod method = new GetMethod(url);
-//                int responseCode = client.executeMethod(method);
-//                if (responseCode != 200 ) {
-//                    error++;
-//                    s_logger.error("Can't create portForwarding rule for the private port " + portValue + ". Request was sent with url " + url);
-//                }
-//            }catch (Exception ex) {
-//                s_logger.error(ex);
-//            }
-//        }
-
-        if (error != 0)
-            return false;
-        else
-            return true;
-    }
-
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/regression/SanityTest.java b/test/src-not-used/main/java/com/cloud/test/regression/SanityTest.java
deleted file mode 100644
index defb232..0000000
--- a/test/src-not-used/main/java/com/cloud/test/regression/SanityTest.java
+++ /dev/null
@@ -1,86 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.regression;
-
-import org.apache.log4j.Logger;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-public class SanityTest extends TestCase {
-
-    public static final Logger s_logger = Logger.getLogger(SanityTest.class.getName());
-
-    public SanityTest() {
-        this.setClient();
-    }
-
-    @Override
-    public boolean executeTest() {
-        int error = 0;
-        Element rootElement = this.getInputFile().get(0).getDocumentElement();
-        NodeList commandLst = rootElement.getElementsByTagName("command");
-        //Analyze each command, send request and build the array list of api commands
-        for (int i = 0; i < commandLst.getLength(); i++) {
-
-            Node fstNode = commandLst.item(i);
-            Element fstElmnt = (Element)fstNode;
-
-            //new command
-            ApiCommand api = new ApiCommand(fstElmnt, this.getParam(), this.getCommands());
-
-            api.sendCommand(this.getClient(), null);
-
-            //verify the response parameters
-            if ((api.getResponseCode() != 200) && (api.getRequired() == true)) {
-                s_logger.error("Exiting the test....Command " + api.getName() + " required for the future run, failed with an error code " + api.getResponseCode() +
-                    ". Command was sent with the url " + api.getUrl());
-                return false;
-            } else if (api.getResponseCode() != 200) {
-                error++;
-                s_logger.error("Test " + api.getTestCaseInfo() + " failed with an error code " + api.getResponseCode() + " . Command was sent with url  " + api.getUrl());
-            } else {
-                //set parameters for the future use
-                if (api.setParam(this.getParam()) == false) {
-                    s_logger.error("Exiting the test...Command " + api.getName() + " didn't return parameters needed for the future use. Command was sent with url " +
-                        api.getUrl());
-                    return false;
-                }
-
-                //verify parameters
-                if (api.verifyParam() == false) {
-                    s_logger.error("Test " + api.getTestCaseInfo() + " failed. Verification for returned parameters failed. The command was sent with url " +
-                        api.getUrl());
-                    error++;
-                } else if (api.getTestCaseInfo() != null) {
-                    s_logger.info("Test " + api.getTestCaseInfo() + " passed");
-                }
-            }
-        }
-
-        //verify event
-        boolean eventResult =
-            ApiCommand.verifyEvents("../metadata/func/regression_events.properties", "INFO", "http://" + this.getParam().get("hostip") + ":8096",
-                this.getParam().get("accountname"));
-        s_logger.info("listEvent command verification result is  " + eventResult);
-
-        if (error != 0)
-            return false;
-        else
-            return true;
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/regression/Test.java b/test/src-not-used/main/java/com/cloud/test/regression/Test.java
deleted file mode 100644
index 5c6b336..0000000
--- a/test/src-not-used/main/java/com/cloud/test/regression/Test.java
+++ /dev/null
@@ -1,88 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.regression;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.HttpMethod;
-import org.apache.commons.httpclient.methods.GetMethod;
-import org.apache.log4j.Logger;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-public class Test extends TestCase {
-    public static final Logger s_logger = Logger.getLogger(Test.class.getName());
-
-    public Test() {
-        this.setClient();
-        this.setParam(new HashMap<String, String>());
-    }
-
-    @Override
-    public boolean executeTest() {
-
-        int error = 0;
-        Element rootElement = this.getInputFile().get(0).getDocumentElement();
-        NodeList commandLst = rootElement.getElementsByTagName("command");
-
-        //Analyze each command, send request and build the array list of api commands
-        for (int i = 0; i < commandLst.getLength(); i++) {
-            Node fstNode = commandLst.item(i);
-            Element fstElmnt = (Element)fstNode;
-
-            //new command
-            ApiCommand api = new ApiCommand(fstElmnt, this.getParam(), this.getCommands());
-
-            //send a command
-            api.sendCommand(this.getClient(), null);
-
-        }
-
-        //Try to create portForwarding rule for all available private/public ports
-        ArrayList<String> port = new ArrayList<String>();
-        for (int j = 1; j < 1000; j++) {
-            port.add(Integer.toString(j));
-        }
-
-        //try all public ports
-        for (String portValue : port) {
-            try {
-                s_logger.info("public port is " + portValue);
-                String url =
-                    "http://" + this.getParam().get("hostip") + ":8096/?command=createNetworkRule&publicPort=" + portValue +
-                        "&privatePort=22&protocol=tcp&isForward=true&securityGroupId=1&account=admin";
-                HttpClient client = new HttpClient();
-                HttpMethod method = new GetMethod(url);
-                int responseCode = client.executeMethod(method);
-                if (responseCode != 200) {
-                    error++;
-                    s_logger.error("Can't create portForwarding network rule for the public port " + portValue + ". Request was sent with url " + url);
-                }
-            } catch (Exception ex) {
-                s_logger.error(ex);
-            }
-        }
-
-        if (error != 0)
-            return false;
-        else
-            return true;
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/regression/TestCase.java b/test/src-not-used/main/java/com/cloud/test/regression/TestCase.java
deleted file mode 100644
index cb7395c..0000000
--- a/test/src-not-used/main/java/com/cloud/test/regression/TestCase.java
+++ /dev/null
@@ -1,138 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.regression;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.sql.Connection;
-import java.sql.DriverManager;
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.Properties;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.log4j.Logger;
-import org.w3c.dom.Document;
-
-public abstract class TestCase {
-
-    public static Logger s_logger = Logger.getLogger(TestCase.class.getName());
-    private Connection conn;
-    private ArrayList<Document> inputFile = new ArrayList<Document>();
-    private HttpClient client;
-    private String testCaseName;
-    private HashMap<String, String> param = new HashMap<String, String>();
-    private HashMap<String, String> commands = new HashMap<String, String>();
-
-    public HashMap<String, String> getParam() {
-        return param;
-    }
-
-    public void setParam(HashMap<String, String> param) {
-        this.param = param;
-    }
-
-    public HashMap<String, String> getCommands() {
-        return commands;
-    }
-
-    public void setCommands() {
-        File asyncCommands = null;
-        if (param.get("apicommands") == null) {
-            s_logger.info("Unable to get the list of commands, exiting");
-            System.exit(1);
-        } else {
-            asyncCommands = new File(param.get("apicommands"));
-        }
-        try {
-            Properties pro = new Properties();
-            FileInputStream in = new FileInputStream(asyncCommands);
-            pro.load(in);
-            Enumeration<?> en = pro.propertyNames();
-            while (en.hasMoreElements()) {
-                String key = (String)en.nextElement();
-                commands.put(key, pro.getProperty(key));
-            }
-        } catch (Exception ex) {
-            s_logger.info("Unable to find the file " + param.get("apicommands") + " due to following exception " + ex);
-        }
-
-    }
-
-    public Connection getConn() {
-        return conn;
-    }
-
-    public void setConn(String dbPassword) {
-        this.conn = null;
-        try {
-            Class.forName("com.mysql.jdbc.Driver");
-            this.conn = DriverManager.getConnection("jdbc:mysql://" + param.get("db") + "/cloud", "root", dbPassword);
-            if (!this.conn.isValid(0)) {
-                s_logger.error("Connection to DB failed to establish");
-            }
-
-        } catch (Exception ex) {
-            s_logger.error(ex);
-        }
-    }
-
-    public void setInputFile(ArrayList<String> fileNameInput) {
-        for (String fileName : fileNameInput) {
-            File file = new File(fileName);
-            DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
-            Document doc = null;
-            try {
-                DocumentBuilder builder = factory.newDocumentBuilder();
-                doc = builder.parse(file);
-                doc.getDocumentElement().normalize();
-            } catch (Exception ex) {
-                s_logger.error("Unable to load " + fileName + " due to ", ex);
-            }
-            this.inputFile.add(doc);
-        }
-    }
-
-    public ArrayList<Document> getInputFile() {
-        return inputFile;
-    }
-
-    public void setTestCaseName(String testCaseName) {
-        this.testCaseName = testCaseName;
-    }
-
-    public String getTestCaseName() {
-        return this.testCaseName;
-    }
-
-    public void setClient() {
-        HttpClient client = new HttpClient();
-        this.client = client;
-    }
-
-    public HttpClient getClient() {
-        return this.client;
-    }
-
-    //abstract methods
-    public abstract boolean executeTest();
-
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/regression/TestCaseEngine.java b/test/src-not-used/main/java/com/cloud/test/regression/TestCaseEngine.java
deleted file mode 100644
index 4207e17..0000000
--- a/test/src-not-used/main/java/com/cloud/test/regression/TestCaseEngine.java
+++ /dev/null
@@ -1,275 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.regression;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Random;
-import java.util.Set;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-
-import org.apache.log4j.Logger;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-public class TestCaseEngine {
-
-    public static final Logger s_logger = Logger.getLogger(TestCaseEngine.class.getName());
-    public static String s_fileName = "../metadata/adapter.xml";
-    public static HashMap<String, String> s_globalParameters = new HashMap<String, String>();
-    protected static HashMap<String, String> s_componentMap = new HashMap<String, String>();
-    protected static HashMap<String, ArrayList<String>> s_inputFile = new HashMap<String, ArrayList<String>>();
-    protected static String s_testCaseName = new String();
-    protected static ArrayList<String> s_keys = new ArrayList<String>();
-    private static ThreadLocal<Object> s_result = new ThreadLocal<Object>();
-    public static int s_numThreads = 1;
-    public static boolean s_repeat = false;
-    public static boolean s_printUrl = false;
-    public static String s_type = "All";
-    public static boolean s_isSanity = false;
-    public static boolean s_isRegression = false;
-    private static int s_failure = 0;
-
-    public static void main(String args[]) {
-
-        // Parameters
-        List<String> argsList = Arrays.asList(args);
-        Iterator<String> iter = argsList.iterator();
-        while (iter.hasNext()) {
-            String arg = iter.next();
-            // is stress?
-            if (arg.equals("-t")) {
-                s_numThreads = Integer.parseInt(iter.next());
-            }
-            // do you want to print url for all commands?
-            if (arg.equals("-p")) {
-                s_printUrl = true;
-            }
-
-            //type of the test: sanity, regression, all (default)
-            if (arg.equals("-type")) {
-                s_type = iter.next();
-            }
-
-            if (arg.equals("-repeat")) {
-                s_repeat = Boolean.valueOf(iter.next());
-            }
-
-            if (arg.equals("-filename")) {
-                s_fileName = iter.next();
-            }
-        }
-
-        if (s_type.equalsIgnoreCase("sanity"))
-            s_isSanity = true;
-        else if (s_type.equalsIgnoreCase("regression"))
-            s_isRegression = true;
-
-        try {
-            // parse adapter.xml file to get list of tests to execute
-            File file = new File(s_fileName);
-            DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
-            DocumentBuilder builder = factory.newDocumentBuilder();
-            Document doc = builder.parse(file);
-            doc.getDocumentElement().normalize();
-            Element root = doc.getDocumentElement();
-
-            // set global parameters
-            setGlobalParams(root);
-
-            // populate _componentMap
-            setComponent(root);
-
-            // set error to 0 by default
-
-            // execute test
-            for (int i = 0; i < s_numThreads; i++) {
-                if (s_numThreads > 1) {
-                    s_logger.info("STARTING STRESS TEST IN " + s_numThreads + " THREADS");
-                } else {
-                    s_logger.info("STARTING FUNCTIONAL TEST");
-                }
-                new Thread(new Runnable() {
-                    @Override
-                    public void run() {
-                        do {
-                            if (s_numThreads == 1) {
-                                try {
-                                    for (String key : s_keys) {
-                                        Class<?> c = Class.forName(s_componentMap.get(key));
-                                        TestCase component = (TestCase)c.newInstance();
-                                        executeTest(key, c, component);
-                                    }
-                                } catch (Exception ex1) {
-                                    s_logger.error(ex1);
-                                } finally {
-                                    if (s_failure > 0) {
-                                        System.exit(1);
-                                    }
-                                }
-                            } else {
-                                Random ran = new Random();
-                                Integer randomNumber = Math.abs(ran.nextInt(s_keys.size()));
-                                try {
-                                    String key = s_keys.get(randomNumber);
-                                    Class<?> c = Class.forName(s_componentMap.get(key));
-                                    TestCase component = (TestCase)c.newInstance();
-                                    executeTest(key, c, component);
-                                } catch (Exception e) {
-                                    s_logger.error("Error in thread ", e);
-                                }
-                            }
-                        } while (s_repeat);
-                    }
-                }).start();
-            }
-
-        } catch (Exception exc) {
-            s_logger.error(exc);
-        }
-    }
-
-    public static void setGlobalParams(Element rootElement) {
-        NodeList globalParam = rootElement.getElementsByTagName("globalparam");
-        Element parameter = (Element)globalParam.item(0);
-        NodeList paramLst = parameter.getElementsByTagName("param");
-
-        for (int i = 0; i < paramLst.getLength(); i++) {
-            Element paramElement = (Element)paramLst.item(i);
-
-            if (paramElement.getNodeType() == Node.ELEMENT_NODE) {
-                Element itemElement = paramElement;
-                NodeList itemName = itemElement.getElementsByTagName("name");
-                Element itemNameElement = (Element)itemName.item(0);
-                NodeList itemVariable = itemElement.getElementsByTagName("variable");
-                Element itemVariableElement = (Element)itemVariable.item(0);
-                s_globalParameters.put(itemVariableElement.getTextContent(), itemNameElement.getTextContent());
-            }
-        }
-    }
-
-    public static void setComponent(Element rootElement) {
-        NodeList testLst = rootElement.getElementsByTagName("test");
-        for (int j = 0; j < testLst.getLength(); j++) {
-            Element testElement = (Element)testLst.item(j);
-
-            if (testElement.getNodeType() == Node.ELEMENT_NODE) {
-                Element itemElement = testElement;
-
-                // get test case name
-                NodeList testCaseNameList = itemElement.getElementsByTagName("testname");
-                if (testCaseNameList != null) {
-                    s_testCaseName = ((Element)testCaseNameList.item(0)).getTextContent();
-                }
-
-                if (s_isSanity == true && !s_testCaseName.equals("SANITY TEST"))
-                    continue;
-                else if (s_isRegression == true && !(s_testCaseName.equals("SANITY TEST") || s_testCaseName.equals("REGRESSION TEST")))
-                    continue;
-
-                // set class name
-                NodeList className = itemElement.getElementsByTagName("class");
-                if ((className.getLength() == 0) || (className == null)) {
-                    s_componentMap.put(s_testCaseName, "com.cloud.test.regression.VMApiTest");
-                } else {
-                    String name = ((Element)className.item(0)).getTextContent();
-                    s_componentMap.put(s_testCaseName, name);
-                }
-
-                // set input file name
-                NodeList inputFileNameLst = itemElement.getElementsByTagName("filename");
-                s_inputFile.put(s_testCaseName, new ArrayList<String>());
-                for (int k = 0; k < inputFileNameLst.getLength(); k++) {
-                    String inputFileName = ((Element)inputFileNameLst.item(k)).getTextContent();
-                    s_inputFile.get(s_testCaseName).add(inputFileName);
-                }
-            }
-        }
-
-        //If sanity test required, make sure that SANITY TEST componennt got loaded
-        if (s_isSanity == true && s_componentMap.size() == 0) {
-            s_logger.error("FAILURE!!! Failed to load SANITY TEST component. Verify that the test is uncommented in adapter.xml");
-            System.exit(1);
-        }
-
-        if (s_isRegression == true && s_componentMap.size() != 2) {
-            s_logger.error("FAILURE!!! Failed to load SANITY TEST or REGRESSION TEST components. Verify that these tests are uncommented in adapter.xml");
-            System.exit(1);
-        }
-
-        // put all keys from _componentMap to the ArrayList
-        Set<?> set = s_componentMap.entrySet();
-        Iterator<?> it = set.iterator();
-        while (it.hasNext()) {
-            Map.Entry<?, ?> me = (Map.Entry<?, ?>)it.next();
-            String key = (String)me.getKey();
-            s_keys.add(key);
-        }
-
-    }
-
-    public static boolean executeTest(String key, Class<?> c, TestCase component) {
-        boolean finalResult = false;
-        try {
-            s_logger.info("Starting \"" + key + "\" test...\n\n");
-
-            // set global parameters
-            HashMap<String, String> updateParam = new HashMap<String, String>();
-            updateParam.putAll(s_globalParameters);
-            component.setParam(updateParam);
-
-            // set DB ip address
-            component.setConn(s_globalParameters.get("dbPassword"));
-
-            // set commands list
-            component.setCommands();
-
-            // set input file
-            if (s_inputFile.get(key) != null) {
-                component.setInputFile(s_inputFile.get(key));
-            }
-
-            // set test case name
-            if (key != null) {
-                component.setTestCaseName(s_testCaseName);
-            }
-
-            // execute method
-            s_result.set(component.executeTest());
-            if (s_result.get().toString().equals("false")) {
-                s_logger.error("FAILURE!!! Test \"" + key + "\" failed\n\n\n");
-                s_failure++;
-            } else {
-                finalResult = true;
-                s_logger.info("SUCCESS!!! Test \"" + key + "\" passed\n\n\n");
-            }
-
-        } catch (Exception ex) {
-            s_logger.error("error during test execution ", ex);
-        }
-        return finalResult;
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/regression/VMApiTest.java b/test/src-not-used/main/java/com/cloud/test/regression/VMApiTest.java
deleted file mode 100644
index 28877c5..0000000
--- a/test/src-not-used/main/java/com/cloud/test/regression/VMApiTest.java
+++ /dev/null
@@ -1,91 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.regression;
-
-import java.util.HashMap;
-
-import org.apache.log4j.Logger;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-import com.cloud.test.regression.ApiCommand.ResponseType;
-
-public class VMApiTest extends TestCase {
-    public static final Logger s_logger = Logger.getLogger(VMApiTest.class.getName());
-
-    public VMApiTest() {
-        this.setClient();
-        this.setParam(new HashMap<String, String>());
-    }
-
-    @Override
-    public boolean executeTest() {
-        int error = 0;
-        Element rootElement = this.getInputFile().get(0).getDocumentElement();
-        NodeList commandLst = rootElement.getElementsByTagName("command");
-
-        //Analyze each command, send request and build the array list of api commands
-        for (int i = 0; i < commandLst.getLength(); i++) {
-            Node fstNode = commandLst.item(i);
-            Element fstElmnt = (Element)fstNode;
-
-            //new command
-            ApiCommand api = new ApiCommand(fstElmnt, this.getParam(), this.getCommands());
-
-            //send a command
-            api.sendCommand(this.getClient(), this.getConn());
-
-            //verify the response of the command
-            if ((api.getResponseType() == ResponseType.ERROR) && (api.getResponseCode() == 200)) {
-                s_logger.error("Test case " + api.getTestCaseInfo() + " failed. Command that was supposed to fail, passed. The command was sent with the following url " +
-                    api.getUrl());
-                error++;
-            } else if ((api.getResponseType() != ResponseType.ERROR) && (api.getResponseCode() == 200)) {
-                //set parameters for the future use
-                if (api.setParam(this.getParam()) == false) {
-                    s_logger.error("Exiting the test...Command " + api.getName() + " didn't return parameters needed for the future use. The command was sent with url " +
-                        api.getUrl());
-                    return false;
-                }
-                //verify parameters
-                if (api.verifyParam() == false) {
-                    s_logger.error("Test " + api.getTestCaseInfo() + " failed. Verification for returned parameters failed. The command was sent with url " +
-                        api.getUrl());
-                    error++;
-                } else {
-                    s_logger.info("Test " + api.getTestCaseInfo() + " passed");
-                }
-            } else if ((api.getResponseType() != ResponseType.ERROR) && (api.getResponseCode() != 200)) {
-                s_logger.error("Test case  " + api.getTestCaseInfo() + " failed with an error code " + api.getResponseCode() + " . Command was sent with url  " +
-                    api.getUrl());
-                if (api.getRequired() == true) {
-                    s_logger.info("The command is required for the future use, so exiging");
-                    return false;
-                }
-                error++;
-            } else if (api.getTestCaseInfo() != null) {
-                s_logger.info("Test case " + api.getTestCaseInfo() + " passed");
-
-            }
-        }
-        if (error != 0)
-            return false;
-        else
-            return true;
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/stress/SshTest.java b/test/src-not-used/main/java/com/cloud/test/stress/SshTest.java
deleted file mode 100644
index a49dbad..0000000
--- a/test/src-not-used/main/java/com/cloud/test/stress/SshTest.java
+++ /dev/null
@@ -1,90 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.stress;
-
-import java.util.Arrays;
-import java.util.Iterator;
-import java.util.List;
-
-import org.apache.log4j.Logger;
-
-import com.trilead.ssh2.Connection;
-import com.trilead.ssh2.Session;
-
-public class SshTest {
-
-    public static final Logger s_logger = Logger.getLogger(SshTest.class.getName());
-    public static String host = "";
-    public static String password = "password";
-    public static String url = "http://google.com";
-
-    public static void main(String[] args) {
-
-        // Parameters
-        List<String> argsList = Arrays.asList(args);
-        Iterator<String> iter = argsList.iterator();
-        while (iter.hasNext()) {
-            String arg = iter.next();
-            if (arg.equals("-h")) {
-                host = iter.next();
-            }
-            if (arg.equals("-p")) {
-                password = iter.next();
-            }
-
-            if (arg.equals("-u")) {
-                url = iter.next();
-            }
-        }
-
-        if (host == null || host.equals("")) {
-            s_logger.info("Did not receive a host back from test, ignoring ssh test");
-            System.exit(2);
-        }
-
-        if (password == null) {
-            s_logger.info("Did not receive a password back from test, ignoring ssh test");
-            System.exit(2);
-        }
-
-        try {
-            s_logger.info("Attempting to SSH into host " + host);
-            Connection conn = new Connection(host);
-            conn.connect(null, 60000, 60000);
-
-            s_logger.info("User + ssHed successfully into host " + host);
-
-            boolean isAuthenticated = conn.authenticateWithPassword("root", password);
-
-            if (isAuthenticated == false) {
-                s_logger.info("Authentication failed for root with password" + password);
-                System.exit(2);
-            }
-
-            String linuxCommand = "wget " + url;
-            Session sess = conn.openSession();
-            sess.execCommand(linuxCommand);
-            sess.close();
-            conn.close();
-
-        } catch (Exception e) {
-            s_logger.error("SSH test fail with error", e);
-            System.exit(2);
-        }
-    }
-
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/stress/StressTestDirectAttach.java b/test/src-not-used/main/java/com/cloud/test/stress/StressTestDirectAttach.java
deleted file mode 100644
index 5625830..0000000
--- a/test/src-not-used/main/java/com/cloud/test/stress/StressTestDirectAttach.java
+++ /dev/null
@@ -1,1353 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.stress;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.math.BigInteger;
-import java.net.URLEncoder;
-import java.security.MessageDigest;
-import java.security.NoSuchAlgorithmException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Random;
-
-import javax.crypto.Mac;
-import javax.crypto.spec.SecretKeySpec;
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-
-import org.apache.commons.codec.binary.Base64;
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.HttpException;
-import org.apache.commons.httpclient.HttpMethod;
-import org.apache.commons.httpclient.methods.GetMethod;
-import org.apache.log4j.Logger;
-import org.apache.log4j.NDC;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-import com.trilead.ssh2.ChannelCondition;
-import com.trilead.ssh2.Connection;
-import com.trilead.ssh2.SCPClient;
-import com.trilead.ssh2.Session;
-
-import com.cloud.utils.exception.CloudRuntimeException;
-
-public class StressTestDirectAttach {
-    private static long sleepTime = 180000L; // default 0
-    private static boolean cleanUp = true;
-    public static final Logger s_logger = Logger.getLogger(StressTestDirectAttach.class.getName());
-    private static boolean repeat = true;
-    private static String[] users = null;
-    private static boolean internet = false;
-    private static ThreadLocal<String> s_linuxIP = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_linuxVmId = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_linuxVmId1 = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_linuxPassword = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_windowsIP = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_secretKey = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_apiKey = new ThreadLocal<String>();
-    private static ThreadLocal<Long> s_userId = new ThreadLocal<Long>();
-    private static ThreadLocal<String> s_account = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_domainRouterId = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_newVolume = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_newVolume1 = new ThreadLocal<String>();
-    private static DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
-    private static int usageIterator = 1;
-    private static int numThreads = 1;
-    private static int wait = 5000;
-    private static String accountName = null;
-    private static String zoneId = "1";
-    private static String serviceOfferingId = "13";
-    private static String diskOfferingId = "11";
-    private static String diskOfferingId1 = "12";
-
-    private static final int MAX_RETRY_LINUX = 10;
-    private static final int MAX_RETRY_WIN = 10;
-
-    public static void main(String[] args) {
-        String host = "http://localhost";
-        String port = "8092";
-        String devPort = "8080";
-        String apiUrl = "/client/api";
-
-        try {
-            // Parameters
-            List<String> argsList = Arrays.asList(args);
-            Iterator<String> iter = argsList.iterator();
-            while (iter.hasNext()) {
-                String arg = iter.next();
-                // host
-                if (arg.equals("-h")) {
-                    host = "http://" + iter.next();
-                }
-
-                if (arg.equals("-p")) {
-                    port = iter.next();
-                }
-                if (arg.equals("-dp")) {
-                    devPort = iter.next();
-                }
-
-                if (arg.equals("-t")) {
-                    numThreads = Integer.parseInt(iter.next());
-                }
-
-                if (arg.equals("-s")) {
-                    sleepTime = Long.parseLong(iter.next());
-                }
-                if (arg.equals("-a")) {
-                    accountName = iter.next();
-                }
-
-                if (arg.equals("-c")) {
-                    cleanUp = Boolean.parseBoolean(iter.next());
-                    if (!cleanUp)
-                        sleepTime = 0L; // no need to wait if we don't ever
-                    // cleanup
-                }
-
-                if (arg.equals("-r")) {
-                    repeat = Boolean.parseBoolean(iter.next());
-                }
-
-                if (arg.equals("-i")) {
-                    internet = Boolean.parseBoolean(iter.next());
-                }
-
-                if (arg.equals("-w")) {
-                    wait = Integer.parseInt(iter.next());
-                }
-
-                if (arg.equals("-z")) {
-                    zoneId = iter.next();
-                }
-
-                if (arg.equals("-so")) {
-                    serviceOfferingId = iter.next();
-                }
-
-            }
-
-            final String server = host + ":" + port + "/";
-            final String developerServer = host + ":" + devPort + apiUrl;
-            s_logger.info("Starting test against server: " + server + " with " + numThreads + " thread(s)");
-            if (cleanUp)
-                s_logger.info("Clean up is enabled, each test will wait " + sleepTime + " ms before cleaning up");
-
-            for (int i = 0; i < numThreads; i++) {
-                new Thread(new Runnable() {
-                    @Override
-                    public void run() {
-                        do {
-                            String username = null;
-                            try {
-                                long now = System.currentTimeMillis();
-                                Random ran = new Random();
-                                username = Math.abs(ran.nextInt()) + "-user";
-                                NDC.push(username);
-
-                                s_logger.info("Starting test for the user " + username);
-                                int response = executeDeployment(server, developerServer, username);
-                                boolean success = false;
-                                String reason = null;
-
-                                if (response == 200) {
-                                    success = true;
-                                    if (internet) {
-                                        s_logger.info("Deploy successful...waiting 5 minute before SSH tests");
-                                        Thread.sleep(300000L); // Wait 60
-                                        // seconds so
-                                        // the windows VM
-                                        // can boot up and do a sys prep.
-
-                                        s_logger.info("Begin Linux SSH test for account " + s_account.get());
-                                        reason = sshTest(s_linuxIP.get(), s_linuxPassword.get());
-
-                                        if (reason == null) {
-                                            s_logger.info("Linux SSH test successful for account " + s_account.get());
-                                        }
-                                    }
-                                    if (reason == null) {
-                                        if (internet) {
-                                            s_logger.info("Windows SSH test successful for account " + s_account.get());
-                                        } else {
-                                            s_logger.info("deploy test successful....now cleaning up");
-                                            if (cleanUp) {
-                                                s_logger.info("Waiting " + sleepTime + " ms before cleaning up vms");
-                                                Thread.sleep(sleepTime);
-                                            } else {
-                                                success = true;
-                                            }
-                                        }
-
-                                        if (usageIterator >= numThreads) {
-                                            int eventsAndBillingResponseCode = executeEventsAndBilling(server, developerServer);
-                                            s_logger.info("events and usage records command finished with response code: " + eventsAndBillingResponseCode);
-                                            usageIterator = 1;
-
-                                        } else {
-                                            s_logger.info("Skipping events and usage records for this user: usageIterator " + usageIterator + " and number of Threads " +
-                                                numThreads);
-                                            usageIterator++;
-                                        }
-
-                                        if ((users == null) && (accountName == null)) {
-                                            s_logger.info("Sending cleanup command");
-                                            int cleanupResponseCode = executeCleanup(server, developerServer, username);
-                                            s_logger.info("cleanup command finished with response code: " + cleanupResponseCode);
-                                            success = (cleanupResponseCode == 200);
-                                        } else {
-                                            s_logger.info("Sending stop DomR / destroy VM command");
-                                            int stopResponseCode = executeStop(server, developerServer, username);
-                                            s_logger.info("stop(destroy) command finished with response code: " + stopResponseCode);
-                                            success = (stopResponseCode == 200);
-                                        }
-
-                                    } else {
-                                        // Just stop but don't destroy the
-                                        // VMs/Routers
-                                        s_logger.info("SSH test failed for account " + s_account.get() + "with reason '" + reason + "', stopping VMs");
-                                        int stopResponseCode = executeStop(server, developerServer, username);
-                                        s_logger.info("stop command finished with response code: " + stopResponseCode);
-                                        success = false; // since the SSH test
-                                        // failed, mark the
-                                        // whole test as
-                                        // failure
-                                    }
-                                } else {
-                                    // Just stop but don't destroy the
-                                    // VMs/Routers
-                                    s_logger.info("Deploy test failed with reason '" + reason + "', stopping VMs");
-                                    int stopResponseCode = executeStop(server, developerServer, username);
-                                    s_logger.info("stop command finished with response code: " + stopResponseCode);
-                                    success = false; // since the deploy test
-                                    // failed, mark the
-                                    // whole test as failure
-                                }
-
-                                if (success) {
-                                    s_logger.info("***** Completed test for user : " + username + " in " + ((System.currentTimeMillis() - now) / 1000L) + " seconds");
-
-                                } else {
-                                    s_logger.info("##### FAILED test for user : " + username + " in " + ((System.currentTimeMillis() - now) / 1000L) +
-                                        " seconds with reason : " + reason);
-                                }
-                                s_logger.info("Sleeping for " + wait + " seconds before starting next iteration");
-                                Thread.sleep(wait);
-                            } catch (Exception e) {
-                                s_logger.warn("Error in thread", e);
-                                try {
-                                    int stopResponseCode = executeStop(server, developerServer, username);
-                                    s_logger.info("stop response code: " + stopResponseCode);
-                                } catch (Exception e1) {
-                                    s_logger.info("[ignored]"
-                                            + "error executing stop during stress test: " + e1.getLocalizedMessage());
-                                }
-                            } finally {
-                                NDC.clear();
-                            }
-                        } while (repeat);
-                    }
-                }).start();
-            }
-        } catch (Exception e) {
-            s_logger.error(e);
-        }
-    }
-
-    public static Map<String, List<String>> getMultipleValuesFromXML(InputStream is, String[] tagNames) {
-        Map<String, List<String>> returnValues = new HashMap<String, List<String>>();
-        try {
-            DocumentBuilder docBuilder = factory.newDocumentBuilder();
-            Document doc = docBuilder.parse(is);
-            Element rootElement = doc.getDocumentElement();
-            for (int i = 0; i < tagNames.length; i++) {
-                NodeList targetNodes = rootElement.getElementsByTagName(tagNames[i]);
-                if (targetNodes.getLength() <= 0) {
-                    s_logger.error("no " + tagNames[i] + " tag in XML response...returning null");
-                } else {
-                    List<String> valueList = new ArrayList<String>();
-                    for (int j = 0; j < targetNodes.getLength(); j++) {
-                        Node node = targetNodes.item(j);
-                        valueList.add(node.getTextContent());
-                    }
-                    returnValues.put(tagNames[i], valueList);
-                }
-            }
-        } catch (Exception ex) {
-            s_logger.error(ex);
-        }
-        return returnValues;
-    }
-
-    public static Map<String, String> getSingleValueFromXML(InputStream is, String[] tagNames) {
-        Map<String, String> returnValues = new HashMap<String, String>();
-        try {
-            DocumentBuilder docBuilder = factory.newDocumentBuilder();
-            Document doc = docBuilder.parse(is);
-            Element rootElement = doc.getDocumentElement();
-
-            for (int i = 0; i < tagNames.length; i++) {
-                NodeList targetNodes = rootElement.getElementsByTagName(tagNames[i]);
-                if (targetNodes.getLength() <= 0) {
-                    s_logger.error("no " + tagNames[i] + " tag in XML response...returning null");
-                } else {
-                    returnValues.put(tagNames[i], targetNodes.item(0).getTextContent());
-                }
-            }
-        } catch (Exception ex) {
-            s_logger.error("error processing XML", ex);
-        }
-        return returnValues;
-    }
-
-    public static Map<String, String> getSingleValueFromXML(Element rootElement, String[] tagNames) {
-        Map<String, String> returnValues = new HashMap<String, String>();
-        if (rootElement == null) {
-            s_logger.error("Root element is null, can't get single value from xml");
-            return null;
-        }
-        try {
-            for (int i = 0; i < tagNames.length; i++) {
-                NodeList targetNodes = rootElement.getElementsByTagName(tagNames[i]);
-                if (targetNodes.getLength() <= 0) {
-                    s_logger.error("no " + tagNames[i] + " tag in XML response...returning null");
-                } else {
-                    returnValues.put(tagNames[i], targetNodes.item(0).getTextContent());
-                }
-            }
-        } catch (Exception ex) {
-            s_logger.error("error processing XML", ex);
-        }
-        return returnValues;
-    }
-
-    private static List<String> getNonSourceNatIPs(InputStream is) {
-        List<String> returnValues = new ArrayList<String>();
-        try {
-            DocumentBuilder docBuilder = factory.newDocumentBuilder();
-            Document doc = docBuilder.parse(is);
-            Element rootElement = doc.getDocumentElement();
-            NodeList allocatedIpAddrNodes = rootElement.getElementsByTagName("publicipaddress");
-            for (int i = 0; i < allocatedIpAddrNodes.getLength(); i++) {
-                Node allocatedIpAddrNode = allocatedIpAddrNodes.item(i);
-                NodeList childNodes = allocatedIpAddrNode.getChildNodes();
-                String ipAddress = null;
-                boolean isSourceNat = true; // assume it's source nat until we
-                // find otherwise
-                for (int j = 0; j < childNodes.getLength(); j++) {
-                    Node n = childNodes.item(j);
-                    if ("ipaddress".equals(n.getNodeName())) {
-                        ipAddress = n.getTextContent();
-                    } else if ("issourcenat".equals(n.getNodeName())) {
-                        isSourceNat = Boolean.parseBoolean(n.getTextContent());
-                    }
-                }
-                if ((ipAddress != null) && !isSourceNat) {
-                    returnValues.add(ipAddress);
-                }
-            }
-        } catch (Exception ex) {
-            s_logger.error(ex);
-        }
-        return returnValues;
-    }
-
-    private static List<String> getSourceNatIPs(InputStream is) {
-        List<String> returnValues = new ArrayList<String>();
-        try {
-            DocumentBuilder docBuilder = factory.newDocumentBuilder();
-            Document doc = docBuilder.parse(is);
-            Element rootElement = doc.getDocumentElement();
-            NodeList allocatedIpAddrNodes = rootElement.getElementsByTagName("publicipaddress");
-            for (int i = 0; i < allocatedIpAddrNodes.getLength(); i++) {
-                Node allocatedIpAddrNode = allocatedIpAddrNodes.item(i);
-                NodeList childNodes = allocatedIpAddrNode.getChildNodes();
-                String ipAddress = null;
-                boolean isSourceNat = false; // assume it's *not* source nat until we find otherwise
-                for (int j = 0; j < childNodes.getLength(); j++) {
-                    Node n = childNodes.item(j);
-                    if ("ipaddress".equals(n.getNodeName())) {
-                        ipAddress = n.getTextContent();
-                    } else if ("issourcenat".equals(n.getNodeName())) {
-                        isSourceNat = Boolean.parseBoolean(n.getTextContent());
-                    }
-                }
-                if ((ipAddress != null) && isSourceNat) {
-                    returnValues.add(ipAddress);
-                }
-            }
-        } catch (Exception ex) {
-            s_logger.error(ex);
-        }
-        return returnValues;
-    }
-
-    private static String executeRegistration(String server, String username, String password) throws HttpException, IOException {
-        String url = server + "?command=registerUserKeys&id=" + s_userId.get().toString();
-        s_logger.info("registering: " + username);
-        String returnValue = null;
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(url);
-        int responseCode = client.executeMethod(method);
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> requestKeyValues = getSingleValueFromXML(is, new String[] {"apikey", "secretkey"});
-            s_apiKey.set(requestKeyValues.get("apikey"));
-            returnValue = requestKeyValues.get("secretkey");
-        } else {
-            s_logger.error("registration failed with error code: " + responseCode);
-        }
-        return returnValue;
-    }
-
-    private static Integer executeDeployment(String server, String developerServer, String username) throws HttpException, IOException {
-        // test steps:
-        // - create user
-        // - deploy Windows VM
-        // - deploy Linux VM
-        // - associate IP address
-        // - create two IP forwarding rules
-        // - create load balancer rule
-        // - list IP forwarding rules
-        // - list load balancer rules
-
-        // -----------------------------
-        // CREATE USER
-        // -----------------------------
-        String encodedUsername = URLEncoder.encode(username, "UTF-8");
-        String encryptedPassword = createMD5Password(username);
-        String encodedPassword = URLEncoder.encode(encryptedPassword, "UTF-8");
-
-        String url =
-            server + "?command=createUser&username=" + encodedUsername + "&password=" + encodedPassword +
-                "&firstname=Test&lastname=Test&email=test@vmops.com&domainId=1&accounttype=0";
-        if (accountName != null) {
-            url =
-                server + "?command=createUser&username=" + encodedUsername + "&password=" + encodedPassword +
-                    "&firstname=Test&lastname=Test&email=test@vmops.com&domainId=1&accounttype=0&account=" + accountName;
-        }
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(url);
-        int responseCode = client.executeMethod(method);
-        long userId = -1;
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> userIdValues = getSingleValueFromXML(is, new String[] {"id", "account"});
-            String userIdStr = userIdValues.get("id");
-            s_logger.info("created user " + username + " with id " + userIdStr);
-            if (userIdStr != null) {
-                userId = Long.parseLong(userIdStr);
-                s_userId.set(userId);
-                s_account.set(userIdValues.get("account"));
-                if (userId == -1) {
-                    s_logger.error("create user (" + username + ") failed to retrieve a valid user id, aborting depolyment test");
-                    return -1;
-                }
-            }
-        } else {
-            s_logger.error("create user test failed for user " + username + " with error code :" + responseCode);
-            return responseCode;
-        }
-
-        s_secretKey.set(executeRegistration(server, username, username));
-
-        if (s_secretKey.get() == null) {
-            s_logger.error("FAILED to retrieve secret key during registration, skipping user: " + username);
-            return -1;
-        } else {
-            s_logger.info("got secret key: " + s_secretKey.get());
-            s_logger.info("got api key: " + s_apiKey.get());
-        }
-
-        // ---------------------------------
-        // CREATE NETWORK GROUP AND ADD INGRESS RULE TO IT
-        // ---------------------------------
-        String networkAccount = null;
-        if (accountName != null) {
-            networkAccount = accountName;
-        } else {
-            networkAccount = encodedUsername;
-        }
-        String encodedApiKey = URLEncoder.encode(s_apiKey.get(), "UTF-8");
-        String requestToSign = "apikey=" + encodedApiKey + "&command=createSecurityGroup&name=" + encodedUsername;
-        requestToSign = requestToSign.toLowerCase();
-        String signature = signRequest(requestToSign, s_secretKey.get());
-        String encodedSignature = URLEncoder.encode(signature, "UTF-8");
-        url = developerServer + "?command=createSecurityGroup&name=" + encodedUsername + "&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-        method = new GetMethod(url);
-        responseCode = client.executeMethod(method);
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> values = getSingleValueFromXML(is, new String[] {"id"});
-
-            if (values.get("id") == null) {
-                s_logger.info("Create network rule response code: 401");
-                return 401;
-            } else {
-                s_logger.info("Create security group response code: " + responseCode);
-            }
-        } else {
-            s_logger.error("Create security group failed with error code: " + responseCode + ". Following URL was sent: " + url);
-            return responseCode;
-        }
-
-        String encodedCidr = URLEncoder.encode("192.168.1.143/32", "UTF-8");
-        url =
-            server + "?command=authorizeSecurityGroupIngress&cidrlist=" + encodedCidr + "&endport=22&" + "securitygroupname=" + encodedUsername +
-                "&protocol=tcp&startport=22&account=" + networkAccount + "&domainid=1";
-
-        method = new GetMethod(url);
-        responseCode = client.executeMethod(method);
-        if (responseCode == 200) {
-            InputStream input = method.getResponseBodyAsStream();
-            Element el = queryAsyncJobResult(server, input);
-            Map<String, String> values = getSingleValueFromXML(el, new String[] {"id"});
-
-            if (values.get("id") == null) {
-                s_logger.info("Authorise security group ingress response code: 401");
-                return 401;
-            } else {
-                s_logger.info("Authorise security group ingress response code: " + responseCode);
-            }
-        } else {
-            s_logger.error("Authorise security group ingress failed with error code: " + responseCode + ". Following URL was sent: " + url);
-            return responseCode;
-        }
-
-        // ---------------------------------
-        // DEPLOY LINUX VM
-        // ---------------------------------
-        {
-            long templateId = 2;
-            String encodedZoneId = URLEncoder.encode("" + zoneId, "UTF-8");
-            String encodedServiceOfferingId = URLEncoder.encode("" + serviceOfferingId, "UTF-8");
-            String encodedTemplateId = URLEncoder.encode("" + templateId, "UTF-8");
-            encodedApiKey = URLEncoder.encode(s_apiKey.get(), "UTF-8");
-            requestToSign =
-                "apikey=" + encodedApiKey + "&command=deployVirtualMachine&securitygrouplist=" + encodedUsername + "&serviceofferingid=" + encodedServiceOfferingId +
-                    "&templateid=" + encodedTemplateId + "&zoneid=" + encodedZoneId;
-            requestToSign = requestToSign.toLowerCase();
-            signature = signRequest(requestToSign, s_secretKey.get());
-            encodedSignature = URLEncoder.encode(signature, "UTF-8");
-            url =
-                developerServer + "?command=deployVirtualMachine&securitygrouplist=" + encodedUsername + "&zoneid=" + encodedZoneId + "&serviceofferingid=" +
-                    encodedServiceOfferingId + "&templateid=" + encodedTemplateId + "&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            if (responseCode == 200) {
-                InputStream input = method.getResponseBodyAsStream();
-                Element el = queryAsyncJobResult(server, input);
-                Map<String, String> values = getSingleValueFromXML(el, new String[] {"id", "ipaddress"});
-
-                if ((values.get("ipaddress") == null) || (values.get("id") == null)) {
-                    s_logger.info("deploy linux vm response code: 401");
-                    return 401;
-                } else {
-                    s_logger.info("deploy linux vm response code: " + responseCode);
-                    long linuxVMId = Long.parseLong(values.get("id"));
-                    s_logger.info("got linux virtual machine id: " + linuxVMId);
-                    s_linuxVmId.set(values.get("id"));
-                    s_linuxIP.set(values.get("ipaddress"));
-                    s_linuxPassword.set("rs-ccb35ea5");
-                }
-            } else {
-                s_logger.error("deploy linux vm failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-
-        //Create a new volume
-        {
-            url = server + "?command=createVolume&diskofferingid=" + diskOfferingId + "&zoneid=" + zoneId + "&name=newvolume&account=" + s_account.get() + "&domainid=1";
-            s_logger.info("Creating volume....");
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            if (responseCode == 200) {
-                InputStream input = method.getResponseBodyAsStream();
-                Element el = queryAsyncJobResult(server, input);
-                Map<String, String> values = getSingleValueFromXML(el, new String[] {"id"});
-
-                if (values.get("id") == null) {
-                    s_logger.info("create volume response code: 401");
-                    return 401;
-                } else {
-                    s_logger.info("create volume response code: " + responseCode);
-                    String volumeId = values.get("id");
-                    s_logger.info("got volume id: " + volumeId);
-                    s_newVolume.set(volumeId);
-                }
-            } else {
-                s_logger.error("create volume failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-
-        //attach a new volume to the vm
-        {
-            url = server + "?command=attachVolume&id=" + s_newVolume.get() + "&virtualmachineid=" + s_linuxVmId.get();
-            s_logger.info("Attaching volume with id " + s_newVolume.get() + " to the vm " + s_linuxVmId.get());
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("Attach data volume response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream input = method.getResponseBodyAsStream();
-                Element el = queryAsyncJobResult(server, input);
-                Map<String, String> values = getSingleValueFromXML(el, new String[] {"id"});
-
-                if (values.get("id") == null) {
-                    s_logger.info("Attach volume response code: 401");
-                    return 401;
-                } else {
-                    s_logger.info("Attach volume response code: " + responseCode);
-                }
-            } else {
-                s_logger.error("Attach volume failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-
-        //DEPLOY SECOND VM, ADD VOLUME TO IT
-
-        // ---------------------------------
-        // DEPLOY another linux vm
-        // ---------------------------------
-        {
-            long templateId = 2;
-            String encodedZoneId = URLEncoder.encode("" + zoneId, "UTF-8");
-            String encodedServiceOfferingId = URLEncoder.encode("" + serviceOfferingId, "UTF-8");
-            String encodedTemplateId = URLEncoder.encode("" + templateId, "UTF-8");
-            encodedApiKey = URLEncoder.encode(s_apiKey.get(), "UTF-8");
-            requestToSign =
-                "apikey=" + encodedApiKey + "&command=deployVirtualMachine&securitygrouplist=" + encodedUsername + "&serviceofferingid=" + encodedServiceOfferingId +
-                    "&templateid=" + encodedTemplateId + "&zoneid=" + encodedZoneId;
-            requestToSign = requestToSign.toLowerCase();
-            signature = signRequest(requestToSign, s_secretKey.get());
-            encodedSignature = URLEncoder.encode(signature, "UTF-8");
-            url =
-                developerServer + "?command=deployVirtualMachine&securitygrouplist=" + encodedUsername + "&zoneid=" + encodedZoneId + "&serviceofferingid=" +
-                    encodedServiceOfferingId + "&templateid=" + encodedTemplateId + "&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            if (responseCode == 200) {
-                InputStream input = method.getResponseBodyAsStream();
-                Element el = queryAsyncJobResult(server, input);
-                Map<String, String> values = getSingleValueFromXML(el, new String[] {"id", "ipaddress"});
-
-                if ((values.get("ipaddress") == null) || (values.get("id") == null)) {
-                    s_logger.info("deploy linux vm response code: 401");
-                    return 401;
-                } else {
-                    s_logger.info("deploy linux vm response code: " + responseCode);
-                    long linuxVMId = Long.parseLong(values.get("id"));
-                    s_logger.info("got linux virtual machine id: " + linuxVMId);
-                    s_linuxVmId1.set(values.get("id"));
-                }
-            } else {
-                s_logger.error("deploy linux vm failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-
-        //Create a new volume
-        {
-            url = server + "?command=createVolume&diskofferingid=" + diskOfferingId1 + "&zoneid=" + zoneId + "&name=newvolume1&account=" + s_account.get() + "&domainid=1";
-            s_logger.info("Creating volume....");
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            if (responseCode == 200) {
-                InputStream input = method.getResponseBodyAsStream();
-                Element el = queryAsyncJobResult(server, input);
-                Map<String, String> values = getSingleValueFromXML(el, new String[] {"id"});
-
-                if (values.get("id") == null) {
-                    s_logger.info("create volume response code: 401");
-                    return 401;
-                } else {
-                    s_logger.info("create volume response code: " + responseCode);
-                    String volumeId = values.get("id");
-                    s_logger.info("got volume id: " + volumeId);
-                    s_newVolume1.set(volumeId);
-                }
-            } else {
-                s_logger.error("create volume failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-
-        //attach a new volume to the vm
-        {
-            url = server + "?command=attachVolume&id=" + s_newVolume1.get() + "&virtualmachineid=" + s_linuxVmId1.get();
-            s_logger.info("Attaching volume with id " + s_newVolume1.get() + " to the vm " + s_linuxVmId1.get());
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("Attach data volume response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream input = method.getResponseBodyAsStream();
-                Element el = queryAsyncJobResult(server, input);
-                Map<String, String> values = getSingleValueFromXML(el, new String[] {"id"});
-
-                if (values.get("id") == null) {
-                    s_logger.info("Attach volume response code: 401");
-                    return 401;
-                } else {
-                    s_logger.info("Attach volume response code: " + responseCode);
-                }
-            } else {
-                s_logger.error("Attach volume failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-        return 200;
-    }
-
-    private static int executeCleanup(String server, String developerServer, String username) throws HttpException, IOException {
-        // test steps:
-        // - get user
-        // - delete user
-
-        // -----------------------------
-        // GET USER
-        // -----------------------------
-        String userId = s_userId.get().toString();
-        String encodedUserId = URLEncoder.encode(userId, "UTF-8");
-        String url = server + "?command=listUsers&id=" + encodedUserId;
-        s_logger.info("Cleaning up resources for user: " + userId + " with url " + url);
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(url);
-        int responseCode = client.executeMethod(method);
-        s_logger.info("get user response code: " + responseCode);
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> userInfo = getSingleValueFromXML(is, new String[] {"username", "id", "account"});
-            if (!username.equals(userInfo.get("username"))) {
-                s_logger.error("get user failed to retrieve requested user, aborting cleanup test" + ". Following URL was sent: " + url);
-                return -1;
-            }
-
-        } else {
-            s_logger.error("get user failed with error code: " + responseCode + ". Following URL was sent: " + url);
-            return responseCode;
-        }
-
-        // -----------------------------
-        // UPDATE USER
-        // -----------------------------
-        {
-            url = server + "?command=updateUser&id=" + userId + "&firstname=delete&lastname=me";
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("update user response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                Map<String, String> success = getSingleValueFromXML(is, new String[] {"success"});
-                s_logger.info("update user..success? " + success.get("success"));
-            } else {
-                s_logger.error("update user failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-
-        // -----------------------------
-        // Execute reboot/stop/start commands for the VMs before deleting the account - made to exercise xen
-        // -----------------------------
-
-        //Reboot centos VM
-        String encodedApiKey = URLEncoder.encode(s_apiKey.get(), "UTF-8");
-        String requestToSign = "apikey=" + encodedApiKey + "&command=rebootVirtualMachine&id=" + s_linuxVmId.get();
-        requestToSign = requestToSign.toLowerCase();
-        String signature = signRequest(requestToSign, s_secretKey.get());
-        String encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-        url = developerServer + "?command=rebootVirtualMachine&id=" + s_linuxVmId.get() + "&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-        client = new HttpClient();
-        method = new GetMethod(url);
-        responseCode = client.executeMethod(method);
-        s_logger.info("Reboot VM response code: " + responseCode);
-        if (responseCode == 200) {
-            InputStream input = method.getResponseBodyAsStream();
-            Element el = queryAsyncJobResult(server, input);
-            Map<String, String> success = getSingleValueFromXML(el, new String[] {"success"});
-            s_logger.info("VM was rebooted with the status: " + success.get("success"));
-        } else {
-            s_logger.error(" VM test failed with error code: " + responseCode + ". Following URL was sent: " + url);
-            return responseCode;
-        }
-
-        //Stop centos VM
-        requestToSign = "apikey=" + encodedApiKey + "&command=stopVirtualMachine&id=" + s_linuxVmId.get();
-        requestToSign = requestToSign.toLowerCase();
-        signature = signRequest(requestToSign, s_secretKey.get());
-        encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-        url = developerServer + "?command=stopVirtualMachine&id=" + s_linuxVmId.get() + "&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-        client = new HttpClient();
-        method = new GetMethod(url);
-        responseCode = client.executeMethod(method);
-        s_logger.info("Stop VM response code: " + responseCode);
-        if (responseCode == 200) {
-            InputStream input = method.getResponseBodyAsStream();
-            Element el = queryAsyncJobResult(server, input);
-            Map<String, String> success = getSingleValueFromXML(el, new String[] {"success"});
-            s_logger.info("VM was stopped with the status: " + success.get("success"));
-        } else {
-            s_logger.error("Stop VM test failed with error code: " + responseCode + ". Following URL was sent: " + url);
-            return responseCode;
-        }
-
-        //Start centos VM
-        requestToSign = "apikey=" + encodedApiKey + "&command=startVirtualMachine&id=" + s_linuxVmId.get();
-        requestToSign = requestToSign.toLowerCase();
-        signature = signRequest(requestToSign, s_secretKey.get());
-        encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-        url = developerServer + "?command=startVirtualMachine&id=" + s_linuxVmId.get() + "&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-        client = new HttpClient();
-        method = new GetMethod(url);
-        responseCode = client.executeMethod(method);
-        s_logger.info("Start VM response code: " + responseCode);
-
-        if (responseCode == 200) {
-            InputStream input = method.getResponseBodyAsStream();
-            Element el = queryAsyncJobResult(server, input);
-            Map<String, String> success = getSingleValueFromXML(el, new String[] {"id"});
-
-            if (success.get("id") == null) {
-                s_logger.info("Start linux vm response code: 401");
-                return 401;
-            } else {
-                s_logger.info("Start vm response code: " + responseCode);
-            }
-
-            s_logger.info("VM was started with the status: " + success.get("success"));
-        } else {
-            s_logger.error("Start VM test failed with error code: " + responseCode + ". Following URL was sent: " + url);
-            return responseCode;
-        }
-
-////        // -----------------------------
-////        // DISABLE USER
-////        // -----------------------------
-//        {
-//            url = server + "?command=disableUser&id=" + userId;
-//            client = new HttpClient();
-//            method = new GetMethod(url);
-//            responseCode = client.executeMethod(method);
-//            s_logger.info("disable user response code: " + responseCode);
-//            if (responseCode == 200) {
-//                InputStream input = method.getResponseBodyAsStream();
-//                Element el = queryAsyncJobResult(server, input);
-//                s_logger
-//                        .info("Disabled user successfully");
-//            } else  {
-//                s_logger.error("disable user failed with error code: " + responseCode + ". Following URL was sent: " + url);
-//                return responseCode;
-//            }
-//        }
-
-        // -----------------------------
-        // DELETE USER
-        // -----------------------------
-        {
-            url = server + "?command=deleteUser&id=" + userId;
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("delete user response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream input = method.getResponseBodyAsStream();
-                Element el = queryAsyncJobResult(server, input);
-                s_logger.info("Deleted user successfully");
-            } else {
-                s_logger.error("delete user failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-        return responseCode;
-    }
-
-    private static int executeEventsAndBilling(String server, String developerServer) throws HttpException, IOException {
-        // test steps:
-        // - get all the events in the system for all users in the system
-        // - generate all the usage records in the system
-        // - get all the usage records in the system
-
-        // -----------------------------
-        // GET EVENTS
-        // -----------------------------
-        String url = server + "?command=listEvents&page=1&account=" + s_account.get();
-
-        s_logger.info("Getting events for the account " + s_account.get());
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(url);
-        int responseCode = client.executeMethod(method);
-        s_logger.info("get events response code: " + responseCode);
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, List<String>> eventDescriptions = getMultipleValuesFromXML(is, new String[] {"description"});
-            List<String> descriptionText = eventDescriptions.get("description");
-            if (descriptionText == null) {
-                s_logger.info("no events retrieved...");
-            } else {
-                for (String text : descriptionText) {
-                    s_logger.info("event: " + text);
-                }
-            }
-        } else {
-            s_logger.error("list events failed with error code: " + responseCode + ". Following URL was sent: " + url);
-
-            return responseCode;
-        }
-        return responseCode;
-    }
-
-    private static int executeStop(String server, String developerServer, String username) throws HttpException, IOException {
-        // test steps:
-        // - get userId for the given username
-        // - list virtual machines for the user
-        // - stop all virtual machines
-        // - get ip addresses for the user
-        // - release ip addresses
-
-        // -----------------------------
-        // GET USER
-        // -----------------------------
-        String userId = s_userId.get().toString();
-        String encodedUserId = URLEncoder.encode(userId, "UTF-8");
-
-        String url = server + "?command=listUsers&id=" + encodedUserId;
-        s_logger.info("Stopping resources for user: " + username);
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(url);
-        int responseCode = client.executeMethod(method);
-        s_logger.info("get user response code: " + responseCode);
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> userIdValues = getSingleValueFromXML(is, new String[] {"id"});
-            String userIdStr = userIdValues.get("id");
-            if (userIdStr != null) {
-                userId = userIdStr;
-                if (userId == null) {
-                    s_logger.error("get user failed to retrieve a valid user id, aborting depolyment test" + ". Following URL was sent: " + url);
-                    return -1;
-                }
-            }
-        } else {
-            s_logger.error("get user failed with error code: " + responseCode + ". Following URL was sent: " + url);
-            return responseCode;
-        }
-
-        {
-            // ----------------------------------
-            // LIST VIRTUAL MACHINES
-            // ----------------------------------
-            String encodedApiKey = URLEncoder.encode(s_apiKey.get(), "UTF-8");
-            String requestToSign = "apikey=" + encodedApiKey + "&command=listVirtualMachines";
-            requestToSign = requestToSign.toLowerCase();
-            String signature = signRequest(requestToSign, s_secretKey.get());
-            String encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-            url = developerServer + "?command=listVirtualMachines&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-
-            s_logger.info("Listing all virtual machines for the user with url " + url);
-            String[] vmIds = null;
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("list virtual machines response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                Map<String, List<String>> vmIdValues = getMultipleValuesFromXML(is, new String[] {"id"});
-                if (vmIdValues.containsKey("id")) {
-                    List<String> vmIdList = vmIdValues.get("id");
-                    if (vmIdList != null) {
-                        vmIds = new String[vmIdList.size()];
-                        vmIdList.toArray(vmIds);
-                        String vmIdLogStr = "";
-                        if ((vmIds != null) && (vmIds.length > 0)) {
-                            vmIdLogStr = vmIds[0];
-                            for (int i = 1; i < vmIds.length; i++) {
-                                vmIdLogStr = vmIdLogStr + "," + vmIds[i];
-                            }
-                        }
-                        s_logger.info("got virtual machine ids: " + vmIdLogStr);
-                    }
-                }
-
-            } else {
-                s_logger.error("list virtual machines test failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-
-            // ----------------------------------
-            // STOP/DESTROY VIRTUAL MACHINES
-            // ----------------------------------
-            if (vmIds != null) {
-                for (String vmId : vmIds) {
-                    requestToSign = "apikey=" + encodedApiKey + "&command=stopVirtualMachine&id=" + vmId;
-                    requestToSign = requestToSign.toLowerCase();
-                    signature = signRequest(requestToSign, s_secretKey.get());
-                    encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-                    url = developerServer + "?command=stopVirtualMachine&id=" + vmId + "&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-                    client = new HttpClient();
-                    method = new GetMethod(url);
-                    responseCode = client.executeMethod(method);
-                    s_logger.info("StopVirtualMachine" + " [" + vmId + "] response code: " + responseCode);
-                    if (responseCode == 200) {
-                        InputStream input = method.getResponseBodyAsStream();
-                        Element el = queryAsyncJobResult(server, input);
-                        Map<String, String> success = getSingleValueFromXML(el, new String[] {"success"});
-                        s_logger.info("StopVirtualMachine..success? " + success.get("success"));
-                    } else {
-                        s_logger.error("Stop virtual machine test failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                        return responseCode;
-                    }
-                }
-            }
-
-//            {
-//                url = server + "?command=deleteUser&id=" + userId;
-//                client = new HttpClient();
-//                method = new GetMethod(url);
-//                responseCode = client.executeMethod(method);
-//                s_logger.info("delete user response code: " + responseCode);
-//                if (responseCode == 200) {
-//                    InputStream input = method.getResponseBodyAsStream();
-//                    Element el = queryAsyncJobResult(server, input);
-//                    s_logger
-//                            .info("Deleted user successfully");
-//                } else  {
-//                    s_logger.error("delete user failed with error code: " + responseCode + ". Following URL was sent: " + url);
-//                    return responseCode;
-//                }
-//            }
-
-        }
-
-        s_linuxIP.set("");
-        s_linuxVmId.set("");
-        s_linuxPassword.set("");
-        s_windowsIP.set("");
-        s_secretKey.set("");
-        s_apiKey.set("");
-        s_userId.set(Long.parseLong("0"));
-        s_account.set("");
-        s_domainRouterId.set("");
-        return responseCode;
-    }
-
-    public static String signRequest(String request, String key) {
-        try {
-            Mac mac = Mac.getInstance("HmacSHA1");
-            SecretKeySpec keySpec = new SecretKeySpec(key.getBytes(), "HmacSHA1");
-            mac.init(keySpec);
-            mac.update(request.getBytes());
-            byte[] encryptedBytes = mac.doFinal();
-            return Base64.encodeBase64String(encryptedBytes);
-        } catch (Exception ex) {
-            s_logger.error("unable to sign request", ex);
-        }
-        return null;
-    }
-
-    private static String sshWinTest(String host) {
-        if (host == null) {
-            s_logger.info("Did not receive a host back from test, ignoring win ssh test");
-            return null;
-        }
-
-        // We will retry 5 times before quitting
-        int retry = 1;
-
-        while (true) {
-            try {
-                if (retry > 0) {
-                    s_logger.info("Retry attempt : " + retry + " ...sleeping 300 seconds before next attempt. Account is " + s_account.get());
-                    Thread.sleep(300000);
-                }
-
-                s_logger.info("Attempting to SSH into windows host " + host + " with retry attempt: " + retry + " for account " + s_account.get());
-
-                Connection conn = new Connection(host);
-                conn.connect(null, 60000, 60000);
-
-                s_logger.info("User " + s_account.get() + " ssHed successfully into windows host " + host);
-                boolean success = false;
-                boolean isAuthenticated = conn.authenticateWithPassword("Administrator", "password");
-                if (isAuthenticated == false) {
-                    return "Authentication failed";
-                } else {
-                    s_logger.info("Authentication is successful");
-                }
-
-                try {
-                    SCPClient scp = new SCPClient(conn);
-                    scp.put("wget.exe", "wget.exe", "C:\\Users\\Administrator", "0777");
-                    s_logger.info("Successfully put wget.exe file");
-                } catch (Exception ex) {
-                    s_logger.error("Unable to put wget.exe " + ex);
-                }
-
-                if (conn == null) {
-                    s_logger.error("Connection is null");
-                }
-                Session sess = conn.openSession();
-
-                s_logger.info("User + " + s_account.get() + " executing : wget http://192.168.1.250/dump.bin");
-                sess.execCommand("wget http://192.168.1.250/dump.bin && dir dump.bin");
-
-                InputStream stdout = sess.getStdout();
-                InputStream stderr = sess.getStderr();
-
-                byte[] buffer = new byte[8192];
-                while (true) {
-                    if ((stdout.available() == 0) && (stderr.available() == 0)) {
-                        int conditions = sess.waitForCondition(ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA | ChannelCondition.EOF, 120000);
-
-                        if ((conditions & ChannelCondition.TIMEOUT) != 0) {
-                            s_logger.info("Timeout while waiting for data from peer.");
-                            return null;
-                        }
-
-                        if ((conditions & ChannelCondition.EOF) != 0) {
-                            if ((conditions & (ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA)) == 0) {
-                                break;
-                            }
-                        }
-                    }
-
-                    while (stdout.available() > 0) {
-                        success = true;
-                        int len = stdout.read(buffer);
-                        if (len > 0) // this check is somewhat paranoid
-                            s_logger.info(new String(buffer, 0, len));
-                    }
-
-                    while (stderr.available() > 0) {
-                        /* int len = */stderr.read(buffer);
-                    }
-                }
-                sess.close();
-                conn.close();
-
-                if (success) {
-                    Thread.sleep(120000);
-                    return null;
-                } else {
-                    retry++;
-                    if (retry == MAX_RETRY_WIN) {
-                        return "SSH Windows Network test fail for account " + s_account.get();
-                    }
-                }
-            } catch (Exception e) {
-                s_logger.error(e);
-                retry++;
-                if (retry == MAX_RETRY_WIN) {
-                    return "SSH Windows Network test fail with error " + e.getMessage();
-                }
-            }
-        }
-    }
-
-    private static String sshTest(String host, String password) {
-        int i = 0;
-        if (host == null) {
-            s_logger.info("Did not receive a host back from test, ignoring ssh test");
-            return null;
-        }
-
-        if (password == null) {
-            s_logger.info("Did not receive a password back from test, ignoring ssh test");
-            return null;
-        }
-
-        // We will retry 5 times before quitting
-        String result = null;
-        int retry = 0;
-
-        while (true) {
-            try {
-                if (retry > 0) {
-                    s_logger.info("Retry attempt : " + retry + " ...sleeping 120 seconds before next attempt. Account is " + s_account.get());
-                    Thread.sleep(120000);
-                }
-
-                s_logger.info("Attempting to SSH into linux host " + host + " with retry attempt: " + retry + ". Account is " + s_account.get());
-
-                Connection conn = new Connection(host);
-                conn.connect(null, 60000, 60000);
-
-                s_logger.info("User + " + s_account.get() + " ssHed successfully into linux host " + host);
-
-                boolean isAuthenticated = conn.authenticateWithPassword("root", password);
-
-                if (isAuthenticated == false) {
-                    s_logger.info("Authentication failed for root with password" + password);
-                    return "Authentication failed";
-
-                }
-
-                boolean success = false;
-                String linuxCommand = null;
-
-                if (i % 10 == 0)
-                    linuxCommand = "rm -rf *; wget http://192.168.1.250/dump.bin && ls -al dump.bin";
-                else
-                    linuxCommand = "wget http://192.168.1.250/dump.bin && ls -al dump.bin";
-
-                Session sess = conn.openSession();
-                s_logger.info("User " + s_account.get() + " executing : " + linuxCommand);
-                sess.execCommand(linuxCommand);
-
-                InputStream stdout = sess.getStdout();
-                InputStream stderr = sess.getStderr();
-
-                byte[] buffer = new byte[8192];
-                while (true) {
-                    if ((stdout.available() == 0) && (stderr.available() == 0)) {
-                        int conditions = sess.waitForCondition(ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA | ChannelCondition.EOF, 120000);
-
-                        if ((conditions & ChannelCondition.TIMEOUT) != 0) {
-                            s_logger.info("Timeout while waiting for data from peer.");
-                            return null;
-                        }
-
-                        if ((conditions & ChannelCondition.EOF) != 0) {
-                            if ((conditions & (ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA)) == 0) {
-                                break;
-                            }
-                        }
-                    }
-
-                    while (stdout.available() > 0) {
-                        success = true;
-                        int len = stdout.read(buffer);
-                        if (len > 0) // this check is somewhat paranoid
-                            s_logger.info(new String(buffer, 0, len));
-                    }
-
-                    while (stderr.available() > 0) {
-                        /* int len = */stderr.read(buffer);
-                    }
-                }
-
-                sess.close();
-                conn.close();
-
-                if (!success) {
-                    retry++;
-                    if (retry == MAX_RETRY_LINUX) {
-                        result = "SSH Linux Network test fail";
-                    }
-                }
-
-                return result;
-            } catch (Exception e) {
-                retry++;
-                s_logger.error("SSH Linux Network test fail with error");
-                if (retry == MAX_RETRY_LINUX) {
-                    return "SSH Linux Network test fail with error " + e.getMessage();
-                }
-            }
-            i++;
-        }
-    }
-
-    public static String createMD5Password(String password) {
-        MessageDigest md5;
-
-        try {
-            md5 = MessageDigest.getInstance("MD5");
-        } catch (NoSuchAlgorithmException e) {
-            throw new CloudRuntimeException("Error", e);
-        }
-
-        md5.reset();
-        BigInteger pwInt = new BigInteger(1, md5.digest(password.getBytes()));
-
-        // make sure our MD5 hash value is 32 digits long...
-        StringBuffer sb = new StringBuffer();
-        String pwStr = pwInt.toString(16);
-        int padding = 32 - pwStr.length();
-        for (int i = 0; i < padding; i++) {
-            sb.append('0');
-        }
-        sb.append(pwStr);
-        return sb.toString();
-    }
-
-    public static Element queryAsyncJobResult(String host, InputStream inputStream) {
-        Element returnBody = null;
-
-        Map<String, String> values = getSingleValueFromXML(inputStream, new String[] {"jobid"});
-        String jobId = values.get("jobid");
-
-        if (jobId == null) {
-            s_logger.error("Unable to get a jobId");
-            return null;
-        }
-
-        //s_logger.info("Job id is " + jobId);
-        String resultUrl = host + "?command=queryAsyncJobResult&jobid=" + jobId;
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(resultUrl);
-        while (true) {
-            try {
-                client.executeMethod(method);
-                //s_logger.info("Method is executed successfully. Following url was sent " + resultUrl);
-                InputStream is = method.getResponseBodyAsStream();
-                DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
-                DocumentBuilder builder = factory.newDocumentBuilder();
-                Document doc = builder.parse(is);
-                returnBody = doc.getDocumentElement();
-                doc.getDocumentElement().normalize();
-                Element jobStatusTag = (Element)returnBody.getElementsByTagName("jobstatus").item(0);
-                String jobStatus = jobStatusTag.getTextContent();
-                if (jobStatus.equals("0")) {
-                    try {
-                        Thread.sleep(1000);
-                    } catch (InterruptedException e) {
-                        s_logger.debug("[ignored] interrupted while during async job result query.");
-                    }
-                } else {
-                    break;
-                }
-
-            } catch (Exception ex) {
-                s_logger.error(ex);
-            }
-        }
-        return returnBody;
-    }
-
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/stress/TestClientWithAPI.java b/test/src-not-used/main/java/com/cloud/test/stress/TestClientWithAPI.java
deleted file mode 100644
index 3d43a94..0000000
--- a/test/src-not-used/main/java/com/cloud/test/stress/TestClientWithAPI.java
+++ /dev/null
@@ -1,2289 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.stress;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.math.BigInteger;
-import java.net.URLEncoder;
-import java.security.MessageDigest;
-import java.security.NoSuchAlgorithmException;
-import java.text.DateFormat;
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Random;
-
-import javax.crypto.Mac;
-import javax.crypto.spec.SecretKeySpec;
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.HttpException;
-import org.apache.commons.httpclient.HttpMethod;
-import org.apache.commons.httpclient.methods.GetMethod;
-import org.apache.log4j.Logger;
-import org.apache.log4j.NDC;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-import com.trilead.ssh2.ChannelCondition;
-import com.trilead.ssh2.Connection;
-import com.trilead.ssh2.SCPClient;
-import com.trilead.ssh2.Session;
-
-import com.cloud.utils.exception.CloudRuntimeException;
-
-public class TestClientWithAPI {
-    private static long sleepTime = 180000L; // default 0
-    private static boolean cleanUp = true;
-    public static final Logger s_logger = Logger.getLogger(TestClientWithAPI.class);
-    private static boolean repeat = true;
-    private static int numOfUsers = 0;
-    private static String[] users = null;
-    private static boolean internet = false;
-    private static ThreadLocal<String> s_linuxIP = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_linuxIpId = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_linuxVmId = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_linuxPassword = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_windowsIP = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_windowsIpId = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_windowsVmId = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_secretKey = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_apiKey = new ThreadLocal<String>();
-    private static ThreadLocal<Long> s_userId = new ThreadLocal<Long>();
-    private static ThreadLocal<Long> s_accountId = new ThreadLocal<Long>();
-    private static ThreadLocal<String> s_account = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_domainRouterId = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_pfGroupId = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_windowsLb = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_linuxLb = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_dataVolume = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_rootVolume = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_newVolume = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_snapshot = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_volumeFromSnapshot = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_networkId = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_publicIpId = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_winipfwdid = new ThreadLocal<String>();
-    private static ThreadLocal<String> s_linipfwdid = new ThreadLocal<String>();
-    private static DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
-    private static int usageIterator = 1;
-    private static int numThreads = 1;
-    private static int wait = 5000;
-    private static String accountName = null;
-    private static String zoneId = "1";
-    private static String snapshotTest = "no";
-    private static String serviceOfferingId = "1";
-    private static String diskOfferingId = "4";
-    private static String networkOfferingId = "6";
-    private static String vmPassword = "rs-ccb35ea5";
-    private static String downloadUrl = "192.168.1.250/dump.bin";
-
-    private static final int MAX_RETRY_LINUX = 10;
-    private static final int MAX_RETRY_WIN = 10;
-
-    public static void main(String[] args) {
-        String host = "http://localhost";
-        String port = "8092";
-        String devPort = "8080";
-        String apiUrl = "/client/api";
-
-        try {
-            // Parameters
-            List<String> argsList = Arrays.asList(args);
-            Iterator<String> iter = argsList.iterator();
-            while (iter.hasNext()) {
-                String arg = iter.next();
-                // host
-                if (arg.equals("-h")) {
-                    host = "http://" + iter.next();
-                }
-
-                if (arg.equals("-p")) {
-                    port = iter.next();
-                }
-                if (arg.equals("-dp")) {
-                    devPort = iter.next();
-                }
-
-                if (arg.equals("-t")) {
-                    numThreads = Integer.parseInt(iter.next());
-                }
-
-                if (arg.equals("-s")) {
-                    sleepTime = Long.parseLong(iter.next());
-                }
-                if (arg.equals("-a")) {
-                    accountName = iter.next();
-                }
-
-                if (arg.equals("-c")) {
-                    cleanUp = Boolean.parseBoolean(iter.next());
-                    if (!cleanUp)
-                        sleepTime = 0L; // no need to wait if we don't ever
-                    // cleanup
-                }
-
-                if (arg.equals("-r")) {
-                    repeat = Boolean.parseBoolean(iter.next());
-                }
-
-                if (arg.equals("-u")) {
-                    numOfUsers = Integer.parseInt(iter.next());
-                }
-
-                if (arg.equals("-i")) {
-                    internet = Boolean.parseBoolean(iter.next());
-                }
-
-                if (arg.equals("-w")) {
-                    wait = Integer.parseInt(iter.next());
-                }
-
-                if (arg.equals("-z")) {
-                    zoneId = iter.next();
-                }
-
-                if (arg.equals("-snapshot")) {
-                    snapshotTest = "yes";
-                }
-
-                if (arg.equals("-so")) {
-                    serviceOfferingId = iter.next();
-                }
-
-                if (arg.equals("-do")) {
-                    diskOfferingId = iter.next();
-                }
-
-                if (arg.equals("-no")) {
-                    networkOfferingId = iter.next();
-                }
-
-                if (arg.equals("-pass")) {
-                    vmPassword = iter.next();
-                }
-
-                if (arg.equals("-url")) {
-                    downloadUrl = iter.next();
-                }
-
-            }
-
-            final String server = host + ":" + port + "/";
-            final String developerServer = host + ":" + devPort + apiUrl;
-            s_logger.info("Starting test against server: " + server + " with " + numThreads + " thread(s)");
-            if (cleanUp)
-                s_logger.info("Clean up is enabled, each test will wait " + sleepTime + " ms before cleaning up");
-
-            if (numOfUsers > 0) {
-                s_logger.info("Pre-generating users for test of size : " + numOfUsers);
-                users = new String[numOfUsers];
-                Random ran = new Random();
-                for (int i = 0; i < numOfUsers; i++) {
-                    users[i] = Math.abs(ran.nextInt()) + "-user";
-                }
-            }
-
-            for (int i = 0; i < numThreads; i++) {
-                new Thread(new Runnable() {
-                    @Override
-                    public void run() {
-                        do {
-                            String username = null;
-                            try {
-                                long now = System.currentTimeMillis();
-                                Random ran = new Random();
-                                if (users != null) {
-                                    username = users[Math.abs(ran.nextInt()) % numOfUsers];
-                                } else {
-                                    username = Math.abs(ran.nextInt()) + "-user";
-                                }
-                                NDC.push(username);
-
-                                s_logger.info("Starting test for the user " + username);
-                                int response = executeDeployment(server, developerServer, username, snapshotTest);
-                                boolean success = false;
-                                String reason = null;
-
-                                if (response == 200) {
-                                    success = true;
-                                    if (internet) {
-                                        s_logger.info("Deploy successful...waiting 5 minute before SSH tests");
-                                        Thread.sleep(300000L); // Wait 60
-                                        // seconds so
-                                        // the windows VM
-                                        // can boot up and do a sys prep.
-
-                                        if (accountName == null) {
-                                            s_logger.info("Begin Linux SSH test for account " + s_account.get());
-                                            reason = sshTest(s_linuxIP.get(), s_linuxPassword.get(), snapshotTest);
-                                        }
-
-                                        if (reason == null) {
-                                            s_logger.info("Linux SSH test successful for account " + s_account.get());
-                                            s_logger.info("Begin WindowsSSH test for account " + s_account.get());
-
-                                            reason = sshTest(s_linuxIP.get(), s_linuxPassword.get(), snapshotTest);
-                                            // reason = sshWinTest(s_windowsIP.get());
-                                        }
-
-                                        // release the linux IP now...
-                                        s_linuxIP.set(null);
-                                        // release the Windows IP now
-                                        s_windowsIP.set(null);
-                                    }
-
-                                    // sleep for 3 min before getting the latest network stat
-                                    // s_logger.info("Sleeping for 5 min before getting the lates network stat for the account");
-                                    // Thread.sleep(300000);
-                                    // verify that network stat is correct for the user; if it's not - stop all the resources
-                                    // for the user
-                                    // if ((reason == null) && (getNetworkStat(server) == false) ) {
-                                    // s_logger.error("Stopping all the resources for the account " + s_account.get() +
-                                    // " as network stat is incorrect");
-                                    // int stopResponseCode = executeStop(
-                                    // server, developerServer,
-                                    // username, false);
-                                    // s_logger
-                                    // .info("stop command finished with response code: "
-                                    // + stopResponseCode);
-                                    // success = false; // since the SSH test
-                                    //
-                                    // } else
-                                    if (reason == null) {
-                                        if (internet) {
-                                            s_logger.info("Windows SSH test successful for account " + s_account.get());
-                                        } else {
-                                            s_logger.info("deploy test successful....now cleaning up");
-                                            if (cleanUp) {
-                                                s_logger.info("Waiting " + sleepTime + " ms before cleaning up vms");
-                                                Thread.sleep(sleepTime);
-                                            } else {
-                                                success = true;
-                                            }
-                                        }
-
-                                        if (usageIterator >= numThreads) {
-                                            int eventsAndBillingResponseCode = executeEventsAndBilling(server, developerServer);
-                                            s_logger.info("events and usage records command finished with response code: " + eventsAndBillingResponseCode);
-                                            usageIterator = 1;
-
-                                        } else {
-                                            s_logger.info("Skipping events and usage records for this user: usageIterator " + usageIterator + " and number of Threads " +
-                                                numThreads);
-                                            usageIterator++;
-                                        }
-
-                                        if ((users == null) && (accountName == null)) {
-                                            s_logger.info("Sending cleanup command");
-                                            int cleanupResponseCode = executeCleanup(server, developerServer, username);
-                                            s_logger.info("cleanup command finished with response code: " + cleanupResponseCode);
-                                            success = (cleanupResponseCode == 200);
-                                        } else {
-                                            s_logger.info("Sending stop DomR / destroy VM command");
-                                            int stopResponseCode = executeStop(server, developerServer, username, true);
-                                            s_logger.info("stop(destroy) command finished with response code: " + stopResponseCode);
-                                            success = (stopResponseCode == 200);
-                                        }
-
-                                    } else {
-                                        // Just stop but don't destroy the
-                                        // VMs/Routers
-                                        s_logger.info("SSH test failed for account " + s_account.get() + "with reason '" + reason + "', stopping VMs");
-                                        int stopResponseCode = executeStop(server, developerServer, username, false);
-                                        s_logger.info("stop command finished with response code: " + stopResponseCode);
-                                        success = false; // since the SSH test
-                                        // failed, mark the
-                                        // whole test as
-                                        // failure
-                                    }
-                                } else {
-                                    // Just stop but don't destroy the
-                                    // VMs/Routers
-                                    s_logger.info("Deploy test failed with reason '" + reason + "', stopping VMs");
-                                    int stopResponseCode = executeStop(server, developerServer, username, true);
-                                    s_logger.info("stop command finished with response code: " + stopResponseCode);
-                                    success = false; // since the deploy test
-                                    // failed, mark the
-                                    // whole test as failure
-                                }
-
-                                if (success) {
-                                    s_logger.info("***** Completed test for user : " + username + " in " + ((System.currentTimeMillis() - now) / 1000L) + " seconds");
-
-                                } else {
-                                    s_logger.info("##### FAILED test for user : " + username + " in " + ((System.currentTimeMillis() - now) / 1000L) +
-                                        " seconds with reason : " + reason);
-                                }
-                                s_logger.info("Sleeping for " + wait + " seconds before starting next iteration");
-                                Thread.sleep(wait);
-                            } catch (Exception e) {
-                                s_logger.warn("Error in thread", e);
-                                try {
-                                    int stopResponseCode = executeStop(server, developerServer, username, true);
-                                    s_logger.info("stop response code: " + stopResponseCode);
-                                } catch (Exception e1) {
-                                    s_logger.info("[ignored]"
-                                            + "error executing stop during api test: " + e1.getLocalizedMessage());
-                                }
-                            } finally {
-                                NDC.clear();
-                            }
-                        } while (repeat);
-                    }
-                }).start();
-            }
-        } catch (Exception e) {
-            s_logger.error(e);
-        }
-    }
-
-    public static Map<String, List<String>> getMultipleValuesFromXML(InputStream is, String[] tagNames) {
-        Map<String, List<String>> returnValues = new HashMap<String, List<String>>();
-        try {
-            DocumentBuilder docBuilder = factory.newDocumentBuilder();
-            Document doc = docBuilder.parse(is);
-            Element rootElement = doc.getDocumentElement();
-            for (int i = 0; i < tagNames.length; i++) {
-                NodeList targetNodes = rootElement.getElementsByTagName(tagNames[i]);
-                if (targetNodes.getLength() <= 0) {
-                    s_logger.error("no " + tagNames[i] + " tag in XML response...returning null");
-                } else {
-                    List<String> valueList = new ArrayList<String>();
-                    for (int j = 0; j < targetNodes.getLength(); j++) {
-                        Node node = targetNodes.item(j);
-                        valueList.add(node.getTextContent());
-                    }
-                    returnValues.put(tagNames[i], valueList);
-                }
-            }
-        } catch (Exception ex) {
-            s_logger.error(ex);
-        }
-        return returnValues;
-    }
-
-    public static Map<String, String> getSingleValueFromXML(InputStream is, String[] tagNames) {
-        Map<String, String> returnValues = new HashMap<String, String>();
-        try {
-            DocumentBuilder docBuilder = factory.newDocumentBuilder();
-            Document doc = docBuilder.parse(is);
-            Element rootElement = doc.getDocumentElement();
-
-            for (int i = 0; i < tagNames.length; i++) {
-                NodeList targetNodes = rootElement.getElementsByTagName(tagNames[i]);
-                if (targetNodes.getLength() <= 0) {
-                    s_logger.error("no " + tagNames[i] + " tag in XML response...returning null");
-                } else {
-                    returnValues.put(tagNames[i], targetNodes.item(0).getTextContent());
-                }
-            }
-        } catch (Exception ex) {
-            s_logger.error("error processing XML", ex);
-        }
-        return returnValues;
-    }
-
-    public static Map<String, String> getSingleValueFromXML(Element rootElement, String[] tagNames) {
-        Map<String, String> returnValues = new HashMap<String, String>();
-        if (rootElement == null) {
-            s_logger.error("Root element is null, can't get single value from xml");
-            return null;
-        }
-        try {
-            for (int i = 0; i < tagNames.length; i++) {
-                NodeList targetNodes = rootElement.getElementsByTagName(tagNames[i]);
-                if (targetNodes.getLength() <= 0) {
-                    s_logger.error("no " + tagNames[i] + " tag in XML response...returning null");
-                } else {
-                    returnValues.put(tagNames[i], targetNodes.item(0).getTextContent());
-                }
-            }
-        } catch (Exception ex) {
-            s_logger.error("error processing XML", ex);
-        }
-        return returnValues;
-    }
-
-    private static List<String> getNonSourceNatIPs(InputStream is) {
-        List<String> returnValues = new ArrayList<String>();
-        try {
-            DocumentBuilder docBuilder = factory.newDocumentBuilder();
-            Document doc = docBuilder.parse(is);
-            Element rootElement = doc.getDocumentElement();
-            NodeList allocatedIpAddrNodes = rootElement.getElementsByTagName("publicipaddress");
-            for (int i = 0; i < allocatedIpAddrNodes.getLength(); i++) {
-                Node allocatedIpAddrNode = allocatedIpAddrNodes.item(i);
-                NodeList childNodes = allocatedIpAddrNode.getChildNodes();
-                String ipAddress = null;
-                boolean isSourceNat = true; // assume it's source nat until we
-                // find otherwise
-                for (int j = 0; j < childNodes.getLength(); j++) {
-                    Node n = childNodes.item(j);
-                    if ("id".equals(n.getNodeName())) {
-                        //    if ("ipaddress".equals(n.getNodeName())) {
-                        ipAddress = n.getTextContent();
-                    } else if ("issourcenat".equals(n.getNodeName())) {
-                        isSourceNat = Boolean.parseBoolean(n.getTextContent());
-                    }
-                }
-                if ((ipAddress != null) && !isSourceNat) {
-                    returnValues.add(ipAddress);
-                }
-            }
-        } catch (Exception ex) {
-            s_logger.error(ex);
-        }
-        return returnValues;
-    }
-
-    private static List<String> getIPs(InputStream is, boolean sourceNat) {
-        List<String> returnValues = new ArrayList<String>();
-        try {
-            DocumentBuilder docBuilder = factory.newDocumentBuilder();
-            Document doc = docBuilder.parse(is);
-            Element rootElement = doc.getDocumentElement();
-            NodeList allocatedIpAddrNodes = rootElement.getElementsByTagName("publicipaddress");
-            for (int i = 0; i < allocatedIpAddrNodes.getLength(); i++) {
-                Node allocatedIpAddrNode = allocatedIpAddrNodes.item(i);
-                NodeList childNodes = allocatedIpAddrNode.getChildNodes();
-                String ipAddress = null;
-                String ipAddressId = null;
-                boolean isSourceNat = false; // assume it's *not* source nat until we find otherwise
-                for (int j = 0; j < childNodes.getLength(); j++) {
-                    Node n = childNodes.item(j);
-                    //Id is being used instead of ipaddress. Changes need to done later to ipaddress variable
-                    if ("id".equals(n.getNodeName())) {
-                        ipAddressId = n.getTextContent();
-                    } else if ("ipaddress".equals(n.getNodeName())) {
-                        ipAddress = n.getTextContent();
-                    } else if ("issourcenat".equals(n.getNodeName())) {
-                        isSourceNat = Boolean.parseBoolean(n.getTextContent());
-                    }
-                }
-                if ((ipAddress != null) && isSourceNat == sourceNat) {
-                    returnValues.add(ipAddressId);
-                    returnValues.add(ipAddress);
-                }
-            }
-        } catch (Exception ex) {
-            s_logger.error(ex);
-        }
-        return returnValues;
-    }
-
-    private static String executeRegistration(String server, String username, String password) throws HttpException, IOException {
-        String url = server + "?command=registerUserKeys&id=" + s_userId.get().toString();
-        s_logger.info("registering: " + username);
-        String returnValue = null;
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(url);
-        int responseCode = client.executeMethod(method);
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> requestKeyValues = getSingleValueFromXML(is, new String[] {"apikey", "secretkey"});
-            s_apiKey.set(requestKeyValues.get("apikey"));
-            returnValue = requestKeyValues.get("secretkey");
-        } else {
-            s_logger.error("registration failed with error code: " + responseCode);
-        }
-        return returnValue;
-    }
-
-    private static Integer executeDeployment(String server, String developerServer, String username, String snapshotTest) throws HttpException, IOException {
-        // test steps:
-        // - create user
-        // - deploy Windows VM
-        // - deploy Linux VM
-        // - associate IP address
-        // - create two IP forwarding rules
-        // - create load balancer rule
-        // - list IP forwarding rules
-        // - list load balancer rules
-
-        // -----------------------------
-        // CREATE ACCOUNT
-        // -----------------------------
-        String encodedUsername = URLEncoder.encode(username, "UTF-8");
-        String encryptedPassword = createMD5Password(username);
-        String encodedPassword = URLEncoder.encode(encryptedPassword, "UTF-8");
-
-        String url =
-            server + "?command=createAccount&username=" + encodedUsername + "&account=" + encodedUsername + "&password=" + encodedPassword +
-                "&firstname=Test&lastname=Test&email=test@vmops.com&domainId=1&accounttype=0";
-
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(url);
-        int responseCode = client.executeMethod(method);
-        long accountId = -1;
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> accountValues = getSingleValueFromXML(is, new String[] {"id", "name"});
-            String accountIdStr = accountValues.get("id");
-            s_logger.info("created account " + username + " with id " + accountIdStr);
-            if (accountIdStr != null) {
-                accountId = Long.parseLong(accountIdStr);
-                s_accountId.set(accountId);
-                s_account.set(accountValues.get("name"));
-                if (accountId == -1) {
-                    s_logger.error("create account (" + username + ") failed to retrieve a valid user id, aborting depolyment test");
-                    return -1;
-                }
-            }
-        } else {
-            s_logger.error("create account test failed for account " + username + " with error code :" + responseCode +
-                ", aborting deployment test. The command was sent with url " + url);
-            return -1;
-        }
-
-        // LIST JUST CREATED USER TO GET THE USER ID
-        url = server + "?command=listUsers&username=" + encodedUsername + "&account=" + encodedUsername + "&domainId=1";
-        client = new HttpClient();
-        method = new GetMethod(url);
-        responseCode = client.executeMethod(method);
-        long userId = -1;
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> userIdValues = getSingleValueFromXML(is, new String[] {"id"});
-            String userIdStr = userIdValues.get("id");
-            s_logger.info("listed user " + username + " with id " + userIdStr);
-            if (userIdStr != null) {
-                userId = Long.parseLong(userIdStr);
-                s_userId.set(userId);
-                if (userId == -1) {
-                    s_logger.error("list user by username " + username + ") failed to retrieve a valid user id, aborting depolyment test");
-                    return -1;
-                }
-            }
-        } else {
-            s_logger.error("list user test failed for account " + username + " with error code :" + responseCode +
-                ", aborting deployment test. The command was sent with url " + url);
-            return -1;
-        }
-
-        s_secretKey.set(executeRegistration(server, username, username));
-
-        if (s_secretKey.get() == null) {
-            s_logger.error("FAILED to retrieve secret key during registration, skipping user: " + username);
-            return -1;
-        } else {
-            s_logger.info("got secret key: " + s_secretKey.get());
-            s_logger.info("got api key: " + s_apiKey.get());
-        }
-
-        // ---------------------------------
-        // CREATE VIRTUAL NETWORK
-        // ---------------------------------
-        url =
-            server + "?command=createNetwork&networkofferingid=" + networkOfferingId + "&account=" + encodedUsername + "&domainId=1" + "&zoneId=" + zoneId +
-                "&name=virtualnetwork-" + encodedUsername + "&displaytext=virtualnetwork-" + encodedUsername;
-        client = new HttpClient();
-        method = new GetMethod(url);
-        responseCode = client.executeMethod(method);
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> networkValues = getSingleValueFromXML(is, new String[] {"id"});
-            String networkIdStr = networkValues.get("id");
-            s_logger.info("Created virtual network with name virtualnetwork-" + encodedUsername + " and id " + networkIdStr);
-            if (networkIdStr != null) {
-                s_networkId.set(networkIdStr);
-            }
-        } else {
-            s_logger.error("Create virtual network failed for account " + username + " with error code :" + responseCode +
-                ", aborting deployment test. The command was sent with url " + url);
-            return -1;
-        }
-        /*
-        // ---------------------------------
-        // CREATE DIRECT NETWORK
-        // ---------------------------------
-        url = server + "?command=createNetwork&networkofferingid=" + networkOfferingId_dir + "&account=" + encodedUsername + "&domainId=1" + "&zoneId=" + zoneId + "&name=directnetwork-" + encodedUsername + "&displaytext=directnetwork-" + encodedUsername;
-        client = new HttpClient();
-        method = new GetMethod(url);
-        responseCode = client.executeMethod(method);
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> networkValues = getSingleValueFromXML(is, new String[] { "id" });
-            String networkIdStr = networkValues.get("id");
-            s_logger.info("Created direct network with name directnetwork-" + encodedUsername + " and id " + networkIdStr);
-            if (networkIdStr != null) {
-                s_networkId_dir.set(networkIdStr);
-            }
-        } else {
-            s_logger.error("Create direct network failed for account " + username + " with error code :" + responseCode + ", aborting deployment test. The command was sent with url " + url);
-            return -1;
-        }
-         */
-
-        // ---------------------------------
-        // DEPLOY LINUX VM
-        // ---------------------------------
-        String linuxVMPrivateIP = null;
-        {
-            // long templateId = 3;
-            long templateId = 4;
-            String encodedZoneId = URLEncoder.encode("" + zoneId, "UTF-8");
-            String encodedServiceOfferingId = URLEncoder.encode("" + serviceOfferingId, "UTF-8");
-            String encodedTemplateId = URLEncoder.encode("" + templateId, "UTF-8");
-            String encodedApiKey = URLEncoder.encode(s_apiKey.get(), "UTF-8");
-            String encodedNetworkIds = URLEncoder.encode(s_networkId.get() + ",206", "UTF-8");
-            String requestToSign =
-                "apikey=" + encodedApiKey + "&command=deployVirtualMachine&diskofferingid=" + diskOfferingId + "&networkids=" + encodedNetworkIds +
-                    "&serviceofferingid=" + encodedServiceOfferingId + "&templateid=" + encodedTemplateId + "&zoneid=" + encodedZoneId;
-            requestToSign = requestToSign.toLowerCase();
-            String signature = signRequest(requestToSign, s_secretKey.get());
-            String encodedSignature = URLEncoder.encode(signature, "UTF-8");
-            url =
-                developerServer + "?command=deployVirtualMachine" + "&zoneid=" + encodedZoneId + "&serviceofferingid=" + encodedServiceOfferingId + "&diskofferingid=" +
-                    diskOfferingId + "&networkids=" + encodedNetworkIds + "&templateid=" + encodedTemplateId + "&apikey=" + encodedApiKey + "&signature=" +
-                    encodedSignature;
-
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            if (responseCode == 200) {
-                InputStream input = method.getResponseBodyAsStream();
-                Element el = queryAsyncJobResult(server, input);
-                Map<String, String> values = getSingleValueFromXML(el, new String[] {"id", "ipaddress"});
-
-                if ((values.get("ipaddress") == null) || (values.get("id") == null)) {
-                    s_logger.info("deploy linux vm response code: 401, the command was sent with url " + url);
-                    return 401;
-                } else {
-                    s_logger.info("deploy linux vm response code: " + responseCode);
-                    long linuxVMId = Long.parseLong(values.get("id"));
-                    s_logger.info("got linux virtual machine id: " + linuxVMId);
-                    s_linuxVmId.set(values.get("id"));
-                    linuxVMPrivateIP = values.get("ipaddress");
-                    // s_linuxPassword.set(values.get("password"));
-                    s_linuxPassword.set(vmPassword);
-                    s_logger.info("got linux virtual machine password: " + s_linuxPassword.get());
-                }
-            } else {
-                s_logger.error("deploy linux vm failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-
-        {
-            // ---------------------------------
-            // ASSOCIATE IP for windows
-            // ---------------------------------
-            String ipAddr = null;
-
-            String encodedApiKey = URLEncoder.encode(s_apiKey.get(), "UTF-8");
-            String requestToSign = "apikey=" + encodedApiKey + "&command=associateIpAddress" + "&zoneid=" + zoneId;
-            requestToSign = requestToSign.toLowerCase();
-            String signature = signRequest(requestToSign, s_secretKey.get());
-            String encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-            url = developerServer + "?command=associateIpAddress" + "&apikey=" + encodedApiKey + "&zoneid=" + zoneId + "&signature=" + encodedSignature;
-
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                /*Asynchronous Job - Corresponding Changes Made*/
-                Element associpel = queryAsyncJobResult(server, is);
-                Map<String, String> values = getSingleValueFromXML(associpel, new String[] {"id", "ipaddress"});
-
-                if ((values.get("ipaddress") == null) || (values.get("id") == null)) {
-                    s_logger.info("associate ip for Windows response code: 401, the command was sent with url " + url);
-                    return 401;
-                } else {
-                    s_logger.info("Associate IP Address response code: " + responseCode);
-                    long publicIpId = Long.parseLong(values.get("id"));
-                    s_logger.info("Associate IP's Id: " + publicIpId);
-                    s_publicIpId.set(values.get("id"));
-                }
-            } else {
-                s_logger.error("associate ip address for windows vm failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-
-            String encodedPublicIpId = URLEncoder.encode(s_publicIpId.get(), "UTF-8");
-            requestToSign = "apikey=" + encodedApiKey + "&command=listPublicIpAddresses" + "&id=" + encodedPublicIpId;
-            requestToSign = requestToSign.toLowerCase();
-            signature = signRequest(requestToSign, s_secretKey.get());
-            encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-            url = developerServer + "?command=listPublicIpAddresses&apikey=" + encodedApiKey + "&id=" + encodedPublicIpId + "&signature=" + encodedSignature;
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("url is " + url);
-            s_logger.info("list ip addresses for user " + userId + " response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                //       InputStream ips = method.getResponseBodyAsStream();
-                List<String> ipAddressValues = getIPs(is, false);
-                //       List<String> ipAddressVals = getIPs(is, false, true);
-                if ((ipAddressValues != null) && !ipAddressValues.isEmpty()) {
-                    s_windowsIpId.set(ipAddressValues.get(0));
-                    s_windowsIP.set(ipAddressValues.get(1));
-                    s_logger.info("For Windows, using non-sourceNat IP address ID: " + ipAddressValues.get(0));
-                    s_logger.info("For Windows, using non-sourceNat IP address: " + ipAddressValues.get(1));
-                }
-            } else {
-                s_logger.error("list ip addresses failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-
-            // ---------------------------------
-            // Use the SourceNat IP for linux
-            // ---------------------------------
-            {
-                requestToSign = "apikey=" + encodedApiKey + "&command=listPublicIpAddresses";
-                requestToSign = requestToSign.toLowerCase();
-                signature = signRequest(requestToSign, s_secretKey.get());
-                encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-                url = developerServer + "?command=listPublicIpAddresses&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-                client = new HttpClient();
-                method = new GetMethod(url);
-                responseCode = client.executeMethod(method);
-                s_logger.info("url is " + url);
-                s_logger.info("list ip addresses for user " + userId + " response code: " + responseCode);
-                if (responseCode == 200) {
-                    InputStream is = method.getResponseBodyAsStream();
-//                  InputStream ips = method.getResponseBodyAsStream();
-                    List<String> ipAddressValues = getIPs(is, true);
-//                    is = method.getResponseBodyAsStream();
-//                    List<String> ipAddressVals = getIPs(is, true, true);
-                    if ((ipAddressValues != null) && !ipAddressValues.isEmpty()) {
-                        s_linuxIpId.set(ipAddressValues.get(0));
-                        s_linuxIP.set(ipAddressValues.get(1));
-                        s_logger.info("For linux, using sourceNat IP address ID: " + ipAddressValues.get(0));
-                        s_logger.info("For linux, using sourceNat IP address: " + ipAddressValues.get(1));
-                    }
-                } else {
-                    s_logger.error("list ip addresses failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                    return responseCode;
-                }
-            }
-
-            //--------------------------------------------
-            // Enable Static NAT for the Source NAT Ip
-            //--------------------------------------------
-            String encodedSourceNatPublicIpId = URLEncoder.encode(s_linuxIpId.get(), "UTF-8");
-
-            /*          requestToSign = "apikey=" + encodedApiKey + "&command=enableStaticNat"+"&id=" + encodedSourceNatPublicIpId + "&virtualMachineId=" + encodedVmId;;
-            requestToSign = requestToSign.toLowerCase();
-            signature = signRequest(requestToSign, s_secretKey.get());
-            encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-            url = developerServer + "?command=enableStaticNat&apikey=" + encodedApiKey + "&signature=" + encodedSignature + "&id=" + encodedSourceNatPublicIpId + "&virtualMachineId=" + encodedVmId;
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("url is " + url);
-            s_logger.info("list ip addresses for user " + userId + " response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                Map<String, String> success = getSingleValueFromXML(is, new String[] { "success" });
-                s_logger.info("Enable Static NAT..success? " + success.get("success"));
-            } else {
-                s_logger.error("Enable Static NAT failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-             */
-            // -------------------------------------------------------------
-            // CREATE IP FORWARDING RULE -- Linux VM
-            // -------------------------------------------------------------
-            String encodedVmId = URLEncoder.encode(s_linuxVmId.get(), "UTF-8");
-            String encodedIpAddress = URLEncoder.encode(s_linuxIpId.get(), "UTF-8");
-            requestToSign =
-                "apikey=" + encodedApiKey + "&command=createPortForwardingRule&ipaddressid=" + encodedIpAddress + "&privateport=22&protocol=TCP&publicport=22" +
-                    "&virtualmachineid=" + encodedVmId;
-            requestToSign = requestToSign.toLowerCase();
-            signature = signRequest(requestToSign, s_secretKey.get());
-            encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-            url =
-                developerServer + "?command=createPortForwardingRule&apikey=" + encodedApiKey + "&ipaddressid=" + encodedIpAddress +
-                    "&privateport=22&protocol=TCP&publicport=22&virtualmachineid=" + encodedVmId + "&signature=" + encodedSignature;
-
-            s_logger.info("Created port forwarding rule with " + url);
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            if (responseCode == 200) {
-                InputStream input = method.getResponseBodyAsStream();
-                Element el = queryAsyncJobResult(server, input);
-                Map<String, String> values = getSingleValueFromXML(el, new String[] {"id"});
-                s_logger.info("Port forwarding rule was assigned successfully to Linux VM");
-                long ipfwdid = Long.parseLong(values.get("id"));
-                s_logger.info("got Port Forwarding Rule's Id:" + ipfwdid);
-                s_linipfwdid.set(values.get("id"));
-
-            } else {
-                s_logger.error("Port forwarding rule creation failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-
-            // Create snapshot recurring policy if needed; otherwise create windows vm
-            if (snapshotTest.equals("yes")) {
-
-                // list volumes for linux vm
-                {
-                    url = server + "?command=listVolumes&virtualMachineId=" + s_linuxVmId.get() + "&type=root";
-                    s_logger.info("Getting rootDisk id of Centos vm");
-                    client = new HttpClient();
-                    method = new GetMethod(url);
-                    responseCode = client.executeMethod(method);
-                    s_logger.info("List volumes response code: " + responseCode);
-                    if (responseCode == 200) {
-                        InputStream is = method.getResponseBodyAsStream();
-                        Map<String, String> success = getSingleValueFromXML(is, new String[] {"id"});
-                        if (success.get("id") == null) {
-                            s_logger.error("Unable to get root volume for linux vm. Followin url was sent: " + url);
-                        }
-                        s_logger.info("Got rootVolume for linux vm with id " + success.get("id"));
-                        s_rootVolume.set(success.get("id"));
-                    } else {
-                        s_logger.error("List volumes for linux vm failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                        return responseCode;
-                    }
-                }
-                // Create recurring snapshot policy for linux vm
-                {
-                    String encodedTimeZone = URLEncoder.encode("America/Los Angeles", "UTF-8");
-                    url =
-                        server + "?command=createSnapshotPolicy&intervaltype=hourly&schedule=10&maxsnaps=4&volumeid=" + s_rootVolume.get() + "&timezone=" +
-                            encodedTimeZone;
-                    s_logger.info("Creating recurring snapshot policy for linux vm ROOT disk");
-                    client = new HttpClient();
-                    method = new GetMethod(url);
-                    responseCode = client.executeMethod(method);
-                    s_logger.info("Create recurring snapshot policy for linux vm ROOT disk: " + responseCode);
-                    if (responseCode != 200) {
-                        s_logger.error("Create recurring snapshot policy for linux vm ROOT disk failed with error code: " + responseCode + ". Following URL was sent: " +
-                            url);
-                        return responseCode;
-                    }
-                }
-            } else {
-                // ---------------------------------
-                // DEPLOY WINDOWS VM
-                // ---------------------------------
-                String windowsVMPrivateIP = null;
-                {
-                    // long templateId = 6;
-                    long templateId = 4;
-                    String encodedZoneId = URLEncoder.encode("" + zoneId, "UTF-8");
-                    String encodedServiceOfferingId = URLEncoder.encode("" + serviceOfferingId, "UTF-8");
-                    String encodedTemplateId = URLEncoder.encode("" + templateId, "UTF-8");
-                    encodedApiKey = URLEncoder.encode(s_apiKey.get(), "UTF-8");
-                    String encodedNetworkIds = URLEncoder.encode(s_networkId.get() + ",206", "UTF-8");
-
-                    requestToSign =
-                        "apikey=" + encodedApiKey + "&command=deployVirtualMachine&diskofferingid=" + diskOfferingId + "&networkids=" + encodedNetworkIds +
-                            "&serviceofferingid=" + encodedServiceOfferingId + "&templateid=" + encodedTemplateId + "&zoneid=" + encodedZoneId;
-                    requestToSign = requestToSign.toLowerCase();
-                    signature = signRequest(requestToSign, s_secretKey.get());
-                    encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-                    url =
-                        developerServer + "?command=deployVirtualMachine" + "&zoneid=" + encodedZoneId + "&serviceofferingid=" + encodedServiceOfferingId +
-                            "&diskofferingid=" + diskOfferingId + "&networkids=" + encodedNetworkIds + "&templateid=" + encodedTemplateId + "&apikey=" + encodedApiKey +
-                            "&signature=" + encodedSignature;
-
-                    method = new GetMethod(url);
-                    responseCode = client.executeMethod(method);
-                    if (responseCode == 200) {
-                        InputStream input = method.getResponseBodyAsStream();
-                        Element el = queryAsyncJobResult(server, input);
-                        Map<String, String> values = getSingleValueFromXML(el, new String[] {"id", "ipaddress"});
-
-                        if ((values.get("ipaddress") == null) || (values.get("id") == null)) {
-                            s_logger.info("deploy windows vm response code: 401, the command was sent with url " + url);
-                            return 401;
-                        } else {
-                            s_logger.info("deploy windows vm response code: " + responseCode);
-                            windowsVMPrivateIP = values.get("ipaddress");
-                            long windowsVMId = Long.parseLong(values.get("id"));
-                            s_logger.info("got windows virtual machine id: " + windowsVMId);
-                            s_windowsVmId.set(values.get("id"));
-                        }
-                    } else {
-                        s_logger.error("deploy windows vm failes with error code: " + responseCode + ". Following URL was sent: " + url);
-                        return responseCode;
-                    }
-                }
-
-                //--------------------------------------------
-                // Enable Static NAT for the Non Source NAT Ip
-                //--------------------------------------------
-
-                encodedVmId = URLEncoder.encode(s_windowsVmId.get(), "UTF-8");
-                encodedPublicIpId = URLEncoder.encode(s_publicIpId.get(), "UTF-8");
-                requestToSign = "apikey=" + encodedApiKey + "&command=enableStaticNat" + "&ipaddressid=" + encodedPublicIpId + "&virtualMachineId=" + encodedVmId;
-                requestToSign = requestToSign.toLowerCase();
-                signature = signRequest(requestToSign, s_secretKey.get());
-                encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-                url =
-                    developerServer + "?command=enableStaticNat&apikey=" + encodedApiKey + "&ipaddressid=" + encodedPublicIpId + "&signature=" + encodedSignature +
-                        "&virtualMachineId=" + encodedVmId;
-                client = new HttpClient();
-                method = new GetMethod(url);
-                responseCode = client.executeMethod(method);
-                s_logger.info("url is " + url);
-                s_logger.info("list ip addresses for user " + userId + " response code: " + responseCode);
-                if (responseCode == 200) {
-                    InputStream is = method.getResponseBodyAsStream();
-                    Map<String, String> success = getSingleValueFromXML(is, new String[] {"success"});
-                    s_logger.info("Enable Static NAT..success? " + success.get("success"));
-                } else {
-                    s_logger.error("Enable Static NAT failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                    return responseCode;
-                }
-
-                // -------------------------------------------------------------
-                // CREATE IP FORWARDING RULE -- Windows VM
-                // -------------------------------------------------------------
-
-                // create port forwarding rule for window vm
-                encodedIpAddress = URLEncoder.encode(s_windowsIpId.get(), "UTF-8");
-                //encodedVmId = URLEncoder.encode(s_windowsVmId.get(), "UTF-8");
-
-                requestToSign = "apikey=" + encodedApiKey + "&command=createIpForwardingRule&endPort=22&ipaddressid=" + encodedIpAddress + "&protocol=TCP&startPort=22";
-                requestToSign = requestToSign.toLowerCase();
-                signature = signRequest(requestToSign, s_secretKey.get());
-                encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-                url =
-                    developerServer + "?command=createIpForwardingRule&apikey=" + encodedApiKey + "&endPort=22&ipaddressid=" + encodedIpAddress +
-                        "&protocol=TCP&signature=" + encodedSignature + "&startPort=22";
-
-                s_logger.info("Created Ip forwarding rule with " + url);
-                method = new GetMethod(url);
-                responseCode = client.executeMethod(method);
-                if (responseCode == 200) {
-                    InputStream input = method.getResponseBodyAsStream();
-                    Element el = queryAsyncJobResult(server, input);
-                    Map<String, String> values = getSingleValueFromXML(el, new String[] {"id"});
-                    s_logger.info("Port forwarding rule was assigned successfully to Windows VM");
-                    long ipfwdid = Long.parseLong(values.get("id"));
-                    s_logger.info("got Ip Forwarding Rule's Id:" + ipfwdid);
-                    s_winipfwdid.set(values.get("id"));
-                } else {
-                    s_logger.error("Port forwarding rule creation failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                    return responseCode;
-                }
-            }
-        }
-        return responseCode;
-    }
-
-    private static int executeCleanup(String server, String developerServer, String username) throws HttpException, IOException {
-        // test steps:
-        // - get user
-        // - delete user
-
-        // -----------------------------
-        // GET USER
-        // -----------------------------
-        String userId = s_userId.get().toString();
-        String encodedUserId = URLEncoder.encode(userId, "UTF-8");
-        String url = server + "?command=listUsers&id=" + encodedUserId;
-        s_logger.info("Cleaning up resources for user: " + userId + " with url " + url);
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(url);
-        int responseCode = client.executeMethod(method);
-        s_logger.info("get user response code: " + responseCode);
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> userInfo = getSingleValueFromXML(is, new String[] {"username", "id", "account"});
-            if (!username.equals(userInfo.get("username"))) {
-                s_logger.error("get user failed to retrieve requested user, aborting cleanup test" + ". Following URL was sent: " + url);
-                return -1;
-            }
-
-        } else {
-            s_logger.error("get user failed with error code: " + responseCode + ". Following URL was sent: " + url);
-            return responseCode;
-        }
-
-        // -----------------------------
-        // UPDATE USER
-        // -----------------------------
-        {
-            url = server + "?command=updateUser&id=" + userId + "&firstname=delete&lastname=me";
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("update user response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                Map<String, String> success = getSingleValueFromXML(is, new String[] {"success"});
-                s_logger.info("update user..success? " + success.get("success"));
-            } else {
-                s_logger.error("update user failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-
-        // -----------------------------
-        // Detach existin dataVolume, create a new volume, attach it to the vm
-        // -----------------------------
-        {
-            url = server + "?command=listVolumes&virtualMachineId=" + s_linuxVmId.get() + "&type=dataDisk";
-            s_logger.info("Getting dataDisk id of Centos vm");
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("List volumes response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                Map<String, String> success = getSingleValueFromXML(is, new String[] {"id"});
-                s_logger.info("Got dataDiskVolume with id " + success.get("id"));
-                s_dataVolume.set(success.get("id"));
-            } else {
-                s_logger.error("List volumes failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-
-        // Detach volume
-        {
-            url = server + "?command=detachVolume&id=" + s_dataVolume.get();
-            s_logger.info("Detaching volume with id " + s_dataVolume.get());
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("Detach data volume response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream input = method.getResponseBodyAsStream();
-                Element el = queryAsyncJobResult(server, input);
-                s_logger.info("The volume was detached successfully");
-            } else {
-                s_logger.error("Detach data disk failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-
-        // Delete a volume
-        {
-            url = server + "?command=deleteVolume&id=" + s_dataVolume.get();
-            s_logger.info("Deleting volume with id " + s_dataVolume.get());
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("Delete data volume response code: " + responseCode);
-            if (responseCode == 200) {
-                s_logger.info("The volume was deleted successfully");
-            } else {
-                s_logger.error("Delete volume failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-
-        // Create a new volume
-        {
-            url = server + "?command=createVolume&diskofferingid=" + diskOfferingId + "&zoneid=" + zoneId + "&name=newvolume&account=" + s_account.get() + "&domainid=1";
-            s_logger.info("Creating volume....");
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            if (responseCode == 200) {
-                InputStream input = method.getResponseBodyAsStream();
-                Element el = queryAsyncJobResult(server, input);
-                Map<String, String> values = getSingleValueFromXML(el, new String[] {"id"});
-
-                if (values.get("id") == null) {
-                    s_logger.info("create volume response code: 401");
-                    return 401;
-                } else {
-                    s_logger.info("create volume response code: " + responseCode);
-                    long volumeId = Long.parseLong(values.get("id"));
-                    s_logger.info("got volume id: " + volumeId);
-                    s_newVolume.set(values.get("id"));
-                }
-            } else {
-                s_logger.error("create volume failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-
-        // attach a new volume to the vm
-        {
-            url = server + "?command=attachVolume&id=" + s_newVolume.get() + "&virtualmachineid=" + s_linuxVmId.get();
-            s_logger.info("Attaching volume with id " + s_newVolume.get() + " to the vm " + s_linuxVmId.get());
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("Attach data volume response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream input = method.getResponseBodyAsStream();
-                Element el = queryAsyncJobResult(server, input);
-                s_logger.info("The volume was attached successfully");
-            } else {
-                s_logger.error("Attach volume failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-
-        // Create a snapshot
-        // list volumes
-        {
-            url = server + "?command=listVolumes&virtualMachineId=" + s_linuxVmId.get() + "&type=root";
-            s_logger.info("Getting rootDisk id of Centos vm");
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("List volumes response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                Map<String, String> success = getSingleValueFromXML(is, new String[] {"id"});
-                if (success.get("id") == null) {
-                    s_logger.error("Unable to get root volume. Followin url was sent: " + url);
-                }
-                s_logger.info("Got rootVolume with id " + success.get("id"));
-                s_rootVolume.set(success.get("id"));
-            } else {
-                s_logger.error("List volumes failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-
-        // //Create snapshot from root disk volume
-        String encodedApiKey = URLEncoder.encode(s_apiKey.get(), "UTF-8");
-        String requestToSign = "apikey=" + encodedApiKey + "&command=createSnapshot&volumeid=" + s_rootVolume.get();
-        requestToSign = requestToSign.toLowerCase();
-        String signature = signRequest(requestToSign, s_secretKey.get());
-        String encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-        url = developerServer + "?command=createSnapshot&volumeid=" + s_rootVolume.get() + "&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-        client = new HttpClient();
-        method = new GetMethod(url);
-        responseCode = client.executeMethod(method);
-        s_logger.info("Create snapshot response code: " + responseCode);
-        if (responseCode == 200) {
-            InputStream input = method.getResponseBodyAsStream();
-            Element el = queryAsyncJobResult(server, input);
-            Map<String, String> values = getSingleValueFromXML(el, new String[] {"id"});
-
-            if (values.get("id") == null) {
-                s_logger.info("create snapshot response code: 401");
-                return 401;
-            } else {
-                s_logger.info("create snapshot response code: " + responseCode + ". Got snapshot with id " + values.get("id"));
-                s_snapshot.set(values.get("id"));
-            }
-        } else {
-            s_logger.error("create snapshot failed with error code: " + responseCode + ". Following URL was sent: " + url);
-            return responseCode;
-        }
-
-        // Create volume from the snapshot created on the previous step and attach it to the running vm
-        /*      encodedApiKey = URLEncoder.encode(s_apiKey.get(), "UTF-8");
-        requestToSign = "apikey=" + encodedApiKey + "&command=createVolume&name=" + s_account.get() + "&snapshotid=" + s_snapshot.get();
-        requestToSign = requestToSign.toLowerCase();
-        signature = signRequest(requestToSign, s_secretKey.get());
-        encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-        url = developerServer + "?command=createVolume&name=" + s_account.get() + "&snapshotid=" + s_snapshot.get() + "&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-        client = new HttpClient();
-        method = new GetMethod(url);
-        responseCode = client.executeMethod(method);
-        s_logger.info("Create volume from snapshot response code: " + responseCode);
-        if (responseCode == 200) {
-            InputStream input = method.getResponseBodyAsStream();
-            Element el = queryAsyncJobResult(server, input);
-            Map<String, String> values = getSingleValueFromXML(el, new String[] { "id" });
-
-            if (values.get("id") == null) {
-                s_logger.info("create volume from snapshot response code: 401");
-                return 401;
-            } else {
-                s_logger.info("create volume from snapshot response code: " + responseCode + ". Got volume with id " + values.get("id") + ". The command was sent with url " + url);
-                s_volumeFromSnapshot.set(values.get("id"));
-            }
-        } else {
-            s_logger.error("create volume from snapshot failed with error code: " + responseCode + ". Following URL was sent: " + url);
-            return responseCode;
-        }
-
-        {
-            url = server + "?command=attachVolume&id=" + s_volumeFromSnapshot.get() + "&virtualmachineid=" + s_linuxVmId.get();
-            s_logger.info("Attaching volume with id " + s_volumeFromSnapshot.get() + " to the vm " + s_linuxVmId.get());
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("Attach volume from snapshot to linux vm response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream input = method.getResponseBodyAsStream();
-                Element el = queryAsyncJobResult(server, input);
-                s_logger.info("The volume created from snapshot was attached successfully to linux vm");
-            } else {
-                s_logger.error("Attach volume created from snapshot failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-         */
-        // -----------------------------
-        // Execute reboot/stop/start commands for the VMs before deleting the account - made to exercise xen
-        // -----------------------------
-
-        // Reboot windows VM
-        requestToSign = "apikey=" + encodedApiKey + "&command=rebootVirtualMachine&id=" + s_windowsVmId.get();
-        requestToSign = requestToSign.toLowerCase();
-        signature = signRequest(requestToSign, s_secretKey.get());
-        encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-        url = developerServer + "?command=rebootVirtualMachine&id=" + s_windowsVmId.get() + "&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-        client = new HttpClient();
-        method = new GetMethod(url);
-        responseCode = client.executeMethod(method);
-        s_logger.info("Reboot windows Vm response code: " + responseCode);
-        if (responseCode == 200) {
-            InputStream input = method.getResponseBodyAsStream();
-            Element el = queryAsyncJobResult(server, input);
-            Map<String, String> success = getSingleValueFromXML(el, new String[] {"success"});
-            s_logger.info("Windows VM was rebooted with the status: " + success.get("success"));
-        } else {
-            s_logger.error("Reboot windows VM test failed with error code: " + responseCode + ". Following URL was sent: " + url);
-            return responseCode;
-        }
-
-        // Stop centos VM
-        requestToSign = "apikey=" + encodedApiKey + "&command=stopVirtualMachine&id=" + s_linuxVmId.get();
-        requestToSign = requestToSign.toLowerCase();
-        signature = signRequest(requestToSign, s_secretKey.get());
-        encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-        url = developerServer + "?command=stopVirtualMachine&id=" + s_linuxVmId.get() + "&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-        client = new HttpClient();
-        method = new GetMethod(url);
-        responseCode = client.executeMethod(method);
-        s_logger.info("Stop linux Vm response code: " + responseCode);
-        if (responseCode == 200) {
-            InputStream input = method.getResponseBodyAsStream();
-            Element el = queryAsyncJobResult(server, input);
-            Map<String, String> success = getSingleValueFromXML(el, new String[] {"success"});
-            s_logger.info("Linux VM was stopped with the status: " + success.get("success"));
-        } else {
-            s_logger.error("Stop linux VM test failed with error code: " + responseCode + ". Following URL was sent: " + url);
-            return responseCode;
-        }
-
-        // Create private template from root disk volume
-        requestToSign =
-            "apikey=" + encodedApiKey + "&command=createTemplate" + "&displaytext=" + s_account.get() + "&name=" + s_account.get() + "&ostypeid=11" + "&snapshotid=" +
-                s_snapshot.get();
-        requestToSign = requestToSign.toLowerCase();
-        signature = signRequest(requestToSign, s_secretKey.get());
-        encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-        url =
-            developerServer + "?command=createTemplate" + "&displaytext=" + s_account.get() + "&name=" + s_account.get() + "&ostypeid=11" + "&snapshotid=" +
-                s_snapshot.get() + "&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-        client = new HttpClient();
-        method = new GetMethod(url);
-        responseCode = client.executeMethod(method);
-        s_logger.info("Create private template response code: " + responseCode);
-        if (responseCode == 200) {
-            InputStream input = method.getResponseBodyAsStream();
-            Element el = queryAsyncJobResult(server, input);
-            Map<String, String> values = getSingleValueFromXML(el, new String[] {"id"});
-
-            if (values.get("id") == null) {
-                s_logger.info("create private template response code: 401");
-                return 401;
-            } else {
-                s_logger.info("create private template response code: " + responseCode);
-            }
-        } else {
-            s_logger.error("create private template failed with error code: " + responseCode + ". Following URL was sent: " + url);
-            return responseCode;
-        }
-
-        // Start centos VM
-        requestToSign = "apikey=" + encodedApiKey + "&command=startVirtualMachine&id=" + s_windowsVmId.get();
-        requestToSign = requestToSign.toLowerCase();
-        signature = signRequest(requestToSign, s_secretKey.get());
-        encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-        url = developerServer + "?command=startVirtualMachine&id=" + s_windowsVmId.get() + "&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-        client = new HttpClient();
-        method = new GetMethod(url);
-        responseCode = client.executeMethod(method);
-        s_logger.info("Start linux Vm response code: " + responseCode);
-        if (responseCode != 200) {
-            s_logger.error("Start linux VM test failed with error code: " + responseCode + ". Following URL was sent: " + url);
-            return responseCode;
-        }
-
-        // get domainRouter id
-        {
-            url = server + "?command=listRouters&zoneid=" + zoneId + "&account=" + s_account.get() + "&domainid=1";
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("List domain routers response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                Map<String, String> success = getSingleValueFromXML(is, new String[] {"id"});
-                s_logger.info("Got the domR with id " + success.get("id"));
-                s_domainRouterId.set(success.get("id"));
-            } else {
-                s_logger.error("List domain routers failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-
-        // reboot the domain router
-        {
-            url = server + "?command=rebootRouter&id=" + s_domainRouterId.get();
-            s_logger.info("Rebooting domR with id " + s_domainRouterId.get());
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("Reboot domain router response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream input = method.getResponseBodyAsStream();
-                Element el = queryAsyncJobResult(server, input);
-                s_logger.info("Domain router was rebooted successfully");
-            } else {
-                s_logger.error("Reboot domain routers failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-
-        // -----------------------------
-        // DELETE ACCOUNT
-        // -----------------------------
-        {
-            url = server + "?command=deleteAccount&id=" + s_accountId.get();
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("delete account response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream input = method.getResponseBodyAsStream();
-                Element el = queryAsyncJobResult(server, input);
-                s_logger.info("Deleted account successfully");
-            } else {
-                s_logger.error("delete account failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-        }
-        return responseCode;
-    }
-
-    private static int executeEventsAndBilling(String server, String developerServer) throws HttpException, IOException {
-        // test steps:
-        // - get all the events in the system for all users in the system
-        // - generate all the usage records in the system
-        // - get all the usage records in the system
-
-        // -----------------------------
-        // GET EVENTS
-        // -----------------------------
-        String url = server + "?command=listEvents&page=1&pagesize=100&&account=" + s_account.get();
-
-        s_logger.info("Getting events for the account " + s_account.get());
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(url);
-        int responseCode = client.executeMethod(method);
-        s_logger.info("get events response code: " + responseCode);
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, List<String>> eventDescriptions = getMultipleValuesFromXML(is, new String[] {"description"});
-            List<String> descriptionText = eventDescriptions.get("description");
-            if (descriptionText == null) {
-                s_logger.info("no events retrieved...");
-            } else {
-                for (String text : descriptionText) {
-                    s_logger.info("event: " + text);
-                }
-            }
-        } else {
-            s_logger.error("list events failed with error code: " + responseCode + ". Following URL was sent: " + url);
-
-            return responseCode;
-        }
-
-        // -------------------------------------------------------------------------------------
-        // GENERATE USAGE RECORDS (note: typically this is done infrequently)
-        // -------------------------------------------------------------------------------------
-        DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
-        Date currentDate = new Date();
-        String endDate = dateFormat.format(currentDate);
-        s_logger.info("Generating usage records from September 1st till " + endDate);
-        url = server + "?command=generateUsageRecords&startdate=2009-09-01&enddate=" + endDate; // generate
-        // all usage record till today
-        client = new HttpClient();
-        method = new GetMethod(url);
-        responseCode = client.executeMethod(method);
-        s_logger.info("generate usage records response code: " + responseCode);
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> successStr = getSingleValueFromXML(is, new String[] {"success"});
-            s_logger.info("successfully generated usage records? " + successStr.get("success"));
-        } else {
-            s_logger.error("generate usage records failed with error code: " + responseCode + ". Following URL was sent: " + url);
-            return responseCode;
-        }
-
-        // Sleeping for a 2 minutes before getting a usage records from the database
-        try {
-            Thread.sleep(120000);
-        } catch (Exception ex) {
-            s_logger.error(ex);
-        }
-
-        // --------------------------------
-        // GET USAGE RECORDS
-        // --------------------------------
-        url = server + "?command=listUsageRecords&startdate=2009-09-01&enddate=" + endDate + "&account=" + s_account.get() + "&domaindid=1";
-        s_logger.info("Getting all usage records with request: " + url);
-        client = new HttpClient();
-        method = new GetMethod(url);
-        responseCode = client.executeMethod(method);
-        s_logger.info("get usage records response code: " + responseCode);
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, List<String>> usageRecValues = getMultipleValuesFromXML(is, new String[] {"description", "usage"});
-            if ((usageRecValues.containsKey("description") == true) && (usageRecValues.containsKey("usage") == true)) {
-                List<String> descriptions = usageRecValues.get("description");
-                List<String> usages = usageRecValues.get("usage");
-                for (int i = 0; i < descriptions.size(); i++) {
-                    String desc = descriptions.get(i);
-                    String usage = "";
-                    if (usages != null) {
-                        if (i < usages.size()) {
-                            usage = ", usage: " + usages.get(i);
-                        }
-                    }
-                    s_logger.info("desc: " + desc + usage);
-                }
-            }
-
-        } else {
-            s_logger.error("list usage records failed with error code: " + responseCode + ". Following URL was sent: " + url);
-            return responseCode;
-        }
-
-        return responseCode;
-    }
-
-    private static boolean getNetworkStat(String server) {
-        try {
-            String url = server + "?command=listAccountStatistics&account=" + s_account.get();
-            HttpClient client = new HttpClient();
-            HttpMethod method = new GetMethod(url);
-            int responseCode = client.executeMethod(method);
-            s_logger.info("listAccountStatistics response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                Map<String, String> requestKeyValues = getSingleValueFromXML(is, new String[] {"receivedbytes", "sentbytes"});
-                int bytesReceived = Integer.parseInt(requestKeyValues.get("receivedbytes"));
-                int bytesSent = Integer.parseInt(requestKeyValues.get("sentbytes"));
-                if ((bytesReceived > 100000000) && (bytesSent > 0)) {
-                    s_logger.info("Network stat is correct for account" + s_account.get() + "; bytest received is " + toHumanReadableSize(bytesReceived) + " and bytes sent is " + toHumanReadableSize(bytesSent));
-                    return true;
-                } else {
-                    s_logger.error("Incorrect value for bytes received/sent for the account " + s_account.get() + ". We got " + toHumanReadableSize(bytesReceived) + " bytes received; " +
-                        " and " + toHumanReadableSize(bytesSent) + " bytes sent");
-                    return false;
-                }
-
-            } else {
-                s_logger.error("listAccountStatistics failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return false;
-            }
-        } catch (Exception ex) {
-            s_logger.error("Exception while sending command listAccountStatistics");
-            return false;
-        }
-    }
-
-    private static int executeStop(String server, String developerServer, String username, boolean destroy) throws HttpException, IOException {
-        // test steps:
-        // - get userId for the given username
-        // - list virtual machines for the user
-        // - stop all virtual machines
-        // - get ip addresses for the user
-        // - release ip addresses
-
-        // -----------------------------
-        // GET USER
-        // -----------------------------
-        String userId = s_userId.get().toString();
-        String encodedUserId = URLEncoder.encode(userId, "UTF-8");
-
-        String url = server + "?command=listUsers&id=" + encodedUserId;
-        s_logger.info("Stopping resources for user: " + username);
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(url);
-        int responseCode = client.executeMethod(method);
-        s_logger.info("get user response code: " + responseCode);
-        if (responseCode == 200) {
-            InputStream is = method.getResponseBodyAsStream();
-            Map<String, String> userIdValues = getSingleValueFromXML(is, new String[] {"id"});
-            String userIdStr = userIdValues.get("id");
-            if (userIdStr != null) {
-                userId = userIdStr;
-
-            } else {
-                s_logger.error("get user failed to retrieve a valid user id, aborting depolyment test" + ". Following URL was sent: " + url);
-                return -1;
-            }
-        } else {
-            s_logger.error("get user failed with error code: " + responseCode + ". Following URL was sent: " + url);
-            return responseCode;
-        }
-
-        {
-            // ----------------------------------
-            // LIST VIRTUAL MACHINES
-            // ----------------------------------
-            String encodedApiKey = URLEncoder.encode(s_apiKey.get(), "UTF-8");
-            String requestToSign = "apikey=" + encodedApiKey + "&command=listVirtualMachines";
-            requestToSign = requestToSign.toLowerCase();
-            String signature = signRequest(requestToSign, s_secretKey.get());
-            String encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-            url = developerServer + "?command=listVirtualMachines&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-
-            s_logger.info("Listing all virtual machines for the user with url " + url);
-            String[] vmIds = null;
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("list virtual machines response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                Map<String, List<String>> vmIdValues = getMultipleValuesFromXML(is, new String[] {"id"});
-                if (vmIdValues.containsKey("id")) {
-                    List<String> vmIdList = vmIdValues.get("id");
-                    if (vmIdList != null) {
-                        vmIds = new String[vmIdList.size()];
-                        vmIdList.toArray(vmIds);
-                        String vmIdLogStr = "";
-                        if ((vmIds != null) && (vmIds.length > 0)) {
-                            vmIdLogStr = vmIds[0];
-                            for (int i = 1; i < vmIds.length; i++) {
-                                vmIdLogStr = vmIdLogStr + "," + vmIds[i];
-                            }
-                        }
-                        s_logger.info("got virtual machine ids: " + vmIdLogStr);
-                    }
-                }
-
-            } else {
-                s_logger.error("list virtual machines test failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-
-            // ----------------------------------
-            // LIST USER IP ADDRESSES
-            // ----------------------------------
-
-            requestToSign = "apikey=" + encodedApiKey + "&command=listPublicIpAddresses";
-            requestToSign = requestToSign.toLowerCase();
-            signature = signRequest(requestToSign, s_secretKey.get());
-            encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-            url = developerServer + "?command=listPublicIpAddresses&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-            String[] ipAddresses = null;
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("list ip addresses for user " + userId + " response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                Map<String, List<String>> ipAddressValues = getMultipleValuesFromXML(is, new String[] {"ipaddress"});
-                if (ipAddressValues.containsKey("ipaddress")) {
-                    List<String> ipAddressList = ipAddressValues.get("ipaddress");
-                    if (ipAddressList != null) {
-                        ipAddresses = new String[ipAddressList.size()];
-                        ipAddressList.toArray(ipAddresses);
-                        String ipAddressLogStr = "";
-                        if ((ipAddresses != null) && (ipAddresses.length > 0)) {
-                            ipAddressLogStr = ipAddresses[0];
-                            for (int i = 1; i < ipAddresses.length; i++) {
-                                ipAddressLogStr = ipAddressLogStr + "," + ipAddresses[i];
-                            }
-                        }
-                        s_logger.info("got IP addresses: " + ipAddressLogStr);
-                    }
-                }
-
-            } else {
-                s_logger.error("list user ip addresses failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-
-            // ----------------------------------
-            // LIST ZONES
-            // ----------------------------------
-
-            requestToSign = "apikey=" + encodedApiKey + "&command=listZones";
-            requestToSign = requestToSign.toLowerCase();
-            signature = signRequest(requestToSign, s_secretKey.get());
-            encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-            url = developerServer + "?command=listZones&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-            String[] zoneNames = null;
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("list zones response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                Map<String, List<String>> zoneNameValues = getMultipleValuesFromXML(is, new String[] {"name"});
-                if (zoneNameValues.containsKey("name")) {
-                    List<String> zoneNameList = zoneNameValues.get("name");
-                    if (zoneNameList != null) {
-                        zoneNames = new String[zoneNameList.size()];
-                        zoneNameList.toArray(zoneNames);
-                        String zoneNameLogStr = "\n\n";
-                        if ((zoneNames != null) && (zoneNames.length > 0)) {
-                            zoneNameLogStr += zoneNames[0];
-                            for (int i = 1; i < zoneNames.length; i++) {
-                                zoneNameLogStr = zoneNameLogStr + "\n" + zoneNames[i];
-                            }
-
-                        }
-                        zoneNameLogStr += "\n\n";
-                        s_logger.info("got zones names: " + zoneNameLogStr);
-                    }
-                }
-
-            } else {
-                s_logger.error("list zones failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-
-            // ----------------------------------
-            // LIST ACCOUNT STATISTICS
-            // ----------------------------------
-
-            requestToSign = "apikey=" + encodedApiKey + "&command=listAccounts";
-            requestToSign = requestToSign.toLowerCase();
-            signature = signRequest(requestToSign, s_secretKey.get());
-            encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-            url = developerServer + "?command=listAccounts&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-            String[] statNames = null;
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("listAccountStatistics response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                Map<String, List<String>> statValues = getMultipleValuesFromXML(is, new String[] {"receivedbytes"});
-                if (statValues.containsKey("receivedbytes")) {
-                    List<String> statList = statValues.get("receivedbytes");
-                    if (statList != null) {
-                        statNames = new String[statList.size()];
-                        statList.toArray(statNames);
-                        String statLogStr = "\n\n";
-                        if ((statNames != null) && (zoneNames.length > 0)) {
-                            statLogStr += statNames[0];
-                            for (int i = 1; i < statNames.length; i++) {
-                                statLogStr = statLogStr + "\n" + zoneNames[i];
-                            }
-
-                        }
-                        statLogStr += "\n\n";
-                        s_logger.info("got accountstatistics: " + statLogStr);
-                    }
-                }
-
-            } else {
-                s_logger.error("listAccountStatistics failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-
-            // ----------------------------------
-            // LIST TEMPLATES
-            // ----------------------------------
-
-            requestToSign = "apikey=" + encodedApiKey + "&command=listTemplates@templatefilter=self";
-            requestToSign = requestToSign.toLowerCase();
-            signature = signRequest(requestToSign, s_secretKey.get());
-            encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-            url = developerServer + "?command=listTemplates&apikey=" + encodedApiKey + "&templatefilter=self&signature=" + encodedSignature;
-            String[] templateNames = null;
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("list templates response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                Map<String, List<String>> templateNameValues = getMultipleValuesFromXML(is, new String[] {"name"});
-
-                if (templateNameValues.containsKey("name")) {
-                    List<String> templateNameList = templateNameValues.get("name");
-                    if (templateNameList != null) {
-                        templateNames = new String[templateNameList.size()];
-                        templateNameList.toArray(templateNames);
-                        String templateNameLogStr = "\n\n";
-                        if ((templateNames != null) && (templateNames.length > 0)) {
-                            templateNameLogStr += templateNames[0];
-                            for (int i = 1; i < templateNames.length; i++) {
-                                templateNameLogStr = templateNameLogStr + "\n" + templateNames[i];
-                            }
-
-                        }
-                        templateNameLogStr += "\n\n";
-                        s_logger.info("got template names: " + templateNameLogStr);
-                    }
-                }
-
-            } else {
-                s_logger.error("list templates failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-
-            // ----------------------------------
-            // LIST SERVICE OFFERINGS
-            // ----------------------------------
-
-            requestToSign = "apikey=" + encodedApiKey + "&command=listServiceOfferings";
-            requestToSign = requestToSign.toLowerCase();
-            signature = signRequest(requestToSign, s_secretKey.get());
-            encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-            url = developerServer + "?command=listServiceOfferings&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-            String[] serviceOfferingNames = null;
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("list service offerings response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                Map<String, List<String>> serviceOfferingNameValues = getMultipleValuesFromXML(is, new String[] {"name"});
-
-                if (serviceOfferingNameValues.containsKey("name")) {
-                    List<String> serviceOfferingNameList = serviceOfferingNameValues.get("name");
-                    if (serviceOfferingNameList != null) {
-                        serviceOfferingNames = new String[serviceOfferingNameList.size()];
-                        serviceOfferingNameList.toArray(serviceOfferingNames);
-                        String serviceOfferingNameLogStr = "";
-                        if ((serviceOfferingNames != null) && (serviceOfferingNames.length > 0)) {
-                            serviceOfferingNameLogStr = serviceOfferingNames[0];
-                            for (int i = 1; i < serviceOfferingNames.length; i++) {
-                                serviceOfferingNameLogStr = serviceOfferingNameLogStr + ", " + serviceOfferingNames[i];
-                            }
-                        }
-                        s_logger.info("got service offering names: " + serviceOfferingNameLogStr);
-                    }
-                }
-
-            } else {
-                s_logger.error("list service offerings failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-
-            // ----------------------------------
-            // LIST EVENTS
-            // ---------------------------------
-
-            url = server + "?command=listEvents&page=1&pagesize=100&&account=" + s_account.get();
-            String[] eventDescriptions = null;
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("list events response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                Map<String, List<String>> eventNameValues = getMultipleValuesFromXML(is, new String[] {"description"});
-
-                if (eventNameValues.containsKey("description")) {
-                    List<String> eventNameList = eventNameValues.get("description");
-                    if (eventNameList != null) {
-                        eventDescriptions = new String[eventNameList.size()];
-                        eventNameList.toArray(eventDescriptions);
-                        String eventNameLogStr = "\n\n";
-                        if ((eventDescriptions != null) && (eventDescriptions.length > 0)) {
-                            eventNameLogStr += eventDescriptions[0];
-                            for (int i = 1; i < eventDescriptions.length; i++) {
-                                eventNameLogStr = eventNameLogStr + "\n" + eventDescriptions[i];
-                            }
-                        }
-                        eventNameLogStr += "\n\n";
-                        s_logger.info("got event descriptions: " + eventNameLogStr);
-                    }
-                }
-            } else {
-                s_logger.error("list events failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-
-            // ----------------------------------
-            // STOP/DESTROY VIRTUAL MACHINES
-            // ----------------------------------
-            if (vmIds != null) {
-                String cmdName = (destroy ? "destroyVirtualMachine" : "stopVirtualMachine");
-                for (String vmId : vmIds) {
-                    requestToSign = "apikey=" + encodedApiKey + "&command=" + cmdName + "&id=" + vmId;
-                    requestToSign = requestToSign.toLowerCase();
-                    signature = signRequest(requestToSign, s_secretKey.get());
-                    encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-                    url = developerServer + "?command=" + cmdName + "&id=" + vmId + "&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-                    client = new HttpClient();
-                    method = new GetMethod(url);
-                    responseCode = client.executeMethod(method);
-                    s_logger.info(cmdName + " [" + vmId + "] response code: " + responseCode);
-                    if (responseCode == 200) {
-                        InputStream input = method.getResponseBodyAsStream();
-                        Element el = queryAsyncJobResult(server, input);
-                        Map<String, String> success = getSingleValueFromXML(el, new String[] {"success"});
-                        s_logger.info(cmdName + "..success? " + success.get("success"));
-                    } else {
-                        s_logger.error(cmdName + "test failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                        return responseCode;
-                    }
-                }
-            }
-        }
-
-        {
-            String[] ipAddresses = null;
-            // -----------------------------------------
-            // LIST NAT IP ADDRESSES
-            // -----------------------------------------
-            String encodedApiKey = URLEncoder.encode(s_apiKey.get(), "UTF-8");
-            String requestToSign = "apikey=" + encodedApiKey + "&command=listPublicIpAddresses";
-            requestToSign = requestToSign.toLowerCase();
-            String signature = signRequest(requestToSign, s_secretKey.get());
-            String encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-            url = developerServer + "?command=listPublicIpAddresses&apikey=" + encodedApiKey + "&signature=" + encodedSignature;
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("list ip addresses for user " + userId + " response code: " + responseCode);
-            if (responseCode == 200) {
-
-                InputStream is = method.getResponseBodyAsStream();
-                List<String> ipAddressList = getNonSourceNatIPs(is);
-                ipAddresses = new String[ipAddressList.size()];
-                ipAddressList.toArray(ipAddresses);
-                String ipAddrLogStr = "";
-                if ((ipAddresses != null) && (ipAddresses.length > 0)) {
-                    ipAddrLogStr = ipAddresses[0];
-                    for (int i = 1; i < ipAddresses.length; i++) {
-                        ipAddrLogStr = ipAddrLogStr + "," + ipAddresses[i];
-                    }
-                }
-                s_logger.info("got ip addresses: " + ipAddrLogStr);
-
-            } else {
-                s_logger.error("list nat ip addresses failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-
-            // -------------------------------------------------------------
-            // Delete IP FORWARDING RULE -- Windows VM
-            // -------------------------------------------------------------
-            String encodedIpFwdId = URLEncoder.encode(s_winipfwdid.get(), "UTF-8");
-
-            requestToSign = "apikey=" + encodedApiKey + "&command=deleteIpForwardingRule&id=" + encodedIpFwdId;
-            requestToSign = requestToSign.toLowerCase();
-            signature = signRequest(requestToSign, s_secretKey.get());
-            encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-            url = developerServer + "?command=deleteIpForwardingRule&apikey=" + encodedApiKey + "&id=" + encodedIpFwdId + "&signature=" + encodedSignature;
-
-            s_logger.info("Delete Ip forwarding rule with " + url);
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            if (responseCode == 200) {
-                InputStream input = method.getResponseBodyAsStream();
-                Element el = queryAsyncJobResult(server, input);
-                s_logger.info("IP forwarding rule was successfully deleted");
-
-            } else {
-                s_logger.error("IP forwarding rule creation failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-
-            //--------------------------------------------
-            // Disable Static NAT for the Source NAT Ip
-            //--------------------------------------------
-            encodedApiKey = URLEncoder.encode(s_apiKey.get(), "UTF-8");
-            String encodedPublicIpId = URLEncoder.encode(s_publicIpId.get(), "UTF-8");
-            requestToSign = "apikey=" + encodedApiKey + "&command=disableStaticNat" + "&id=" + encodedPublicIpId;
-            requestToSign = requestToSign.toLowerCase();
-            signature = signRequest(requestToSign, s_secretKey.get());
-            encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-            url = developerServer + "?command=disableStaticNat&apikey=" + encodedApiKey + "&id=" + encodedPublicIpId + "&signature=" + encodedSignature;
-            client = new HttpClient();
-            method = new GetMethod(url);
-            responseCode = client.executeMethod(method);
-            s_logger.info("url is " + url);
-            s_logger.info("list ip addresses for user " + userId + " response code: " + responseCode);
-            if (responseCode == 200) {
-                InputStream is = method.getResponseBodyAsStream();
-                Map<String, String> success = getSingleValueFromXML(is, new String[] {"success"});
-                s_logger.info("Disable Static NAT..success? " + success.get("success"));
-            } else {
-                s_logger.error("Disable Static NAT failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                return responseCode;
-            }
-
-            // -----------------------------------------
-            // DISASSOCIATE IP ADDRESSES
-            // -----------------------------------------
-            if (ipAddresses != null) {
-                for (String ipAddress : ipAddresses) {
-                    requestToSign = "apikey=" + encodedApiKey + "&command=disassociateIpAddress&id=" + ipAddress;
-                    requestToSign = requestToSign.toLowerCase();
-                    signature = signRequest(requestToSign, s_secretKey.get());
-                    encodedSignature = URLEncoder.encode(signature, "UTF-8");
-
-                    url = developerServer + "?command=disassociateIpAddress&apikey=" + encodedApiKey + "&id=" + ipAddress + "&signature=" + encodedSignature;
-                    client = new HttpClient();
-                    method = new GetMethod(url);
-                    responseCode = client.executeMethod(method);
-                    s_logger.info("disassociate ip address [" + userId + "/" + ipAddress + "] response code: " + responseCode);
-                    if (responseCode == 200) {
-                        InputStream input = method.getResponseBodyAsStream();
-                        Element disassocipel = queryAsyncJobResult(server, input);
-                        Map<String, String> success = getSingleValueFromXML(disassocipel, new String[] {"success"});
-                        //       Map<String, String> success = getSingleValueFromXML(input, new String[] { "success" });
-                        s_logger.info("disassociate ip address..success? " + success.get("success"));
-                    } else {
-                        s_logger.error("disassociate ip address failed with error code: " + responseCode + ". Following URL was sent: " + url);
-                        return responseCode;
-                    }
-                }
-            }
-        }
-        s_linuxIP.set("");
-        s_linuxIpId.set("");
-        s_linuxVmId.set("");
-        s_linuxPassword.set("");
-        s_windowsIP.set("");
-        s_windowsIpId.set("");
-        s_windowsVmId.set("");
-        s_secretKey.set("");
-        s_apiKey.set("");
-        s_userId.set(Long.parseLong("0"));
-        s_account.set("");
-        s_domainRouterId.set("");
-        return responseCode;
-    }
-
-    public static String signRequest(String request, String key) {
-        try {
-            Mac mac = Mac.getInstance("HmacSHA1");
-            SecretKeySpec keySpec = new SecretKeySpec(key.getBytes(), "HmacSHA1");
-            mac.init(keySpec);
-            mac.update(request.getBytes());
-            byte[] encryptedBytes = mac.doFinal();
-            return org.apache.commons.codec.binary.Base64.encodeBase64String(encryptedBytes);
-        } catch (Exception ex) {
-            s_logger.error("unable to sign request", ex);
-        }
-        return null;
-    }
-
-    private static String sshWinTest(String host) {
-        if (host == null) {
-            s_logger.info("Did not receive a host back from test, ignoring win ssh test");
-            return null;
-        }
-
-        // We will retry 5 times before quitting
-        int retry = 1;
-
-        while (true) {
-            try {
-                if (retry > 0) {
-                    s_logger.info("Retry attempt : " + retry + " ...sleeping 300 seconds before next attempt. Account is " + s_account.get());
-                    Thread.sleep(300000);
-                }
-
-                s_logger.info("Attempting to SSH into windows host " + host + " with retry attempt: " + retry + " for account " + s_account.get());
-
-                Connection conn = new Connection(host);
-                conn.connect(null, 60000, 60000);
-
-                s_logger.info("User " + s_account.get() + " ssHed successfully into windows host " + host);
-                boolean success = false;
-                boolean isAuthenticated = conn.authenticateWithPassword("Administrator", "password");
-                if (isAuthenticated == false) {
-                    return "Authentication failed";
-                } else {
-                    s_logger.info("Authentication is successful");
-                }
-
-                try {
-                    SCPClient scp = new SCPClient(conn);
-                    scp.put("wget.exe", "wget.exe", "C:\\Users\\Administrator", "0777");
-                    s_logger.info("Successfully put wget.exe file");
-                } catch (Exception ex) {
-                    s_logger.error("Unable to put wget.exe " + ex);
-                }
-
-                if (conn == null) {
-                    s_logger.error("Connection is null");
-                }
-                Session sess = conn.openSession();
-
-                s_logger.info("User + " + s_account.get() + " executing : wget http://" + downloadUrl);
-                String downloadCommand = "wget http://" + downloadUrl + " && dir dump.bin";
-                sess.execCommand(downloadCommand);
-
-                InputStream stdout = sess.getStdout();
-                InputStream stderr = sess.getStderr();
-
-                byte[] buffer = new byte[8192];
-                while (true) {
-                    if ((stdout.available() == 0) && (stderr.available() == 0)) {
-                        int conditions = sess.waitForCondition(ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA | ChannelCondition.EOF, 120000);
-
-                        if ((conditions & ChannelCondition.TIMEOUT) != 0) {
-                            s_logger.info("Timeout while waiting for data from peer.");
-                            return null;
-                        }
-
-                        if ((conditions & ChannelCondition.EOF) != 0) {
-                            if ((conditions & (ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA)) == 0) {
-                                break;
-                            }
-                        }
-                    }
-
-                    while (stdout.available() > 0) {
-                        success = true;
-                        int len = stdout.read(buffer);
-                        if (len > 0) // this check is somewhat paranoid
-                            s_logger.info(new String(buffer, 0, len));
-                    }
-
-                    while (stderr.available() > 0) {
-                        /* int len = */stderr.read(buffer);
-                    }
-                }
-                sess.close();
-                conn.close();
-
-                if (success) {
-                    return null;
-                } else {
-                    retry++;
-                    if (retry == MAX_RETRY_WIN) {
-                        return "SSH Windows Network test fail for account " + s_account.get();
-                    }
-                }
-            } catch (Exception e) {
-                s_logger.error(e);
-                retry++;
-                if (retry == MAX_RETRY_WIN) {
-                    return "SSH Windows Network test fail with error " + e.getMessage();
-                }
-            }
-        }
-    }
-
-    private static String sshTest(String host, String password, String snapshotTest) {
-        int i = 0;
-        if (host == null) {
-            s_logger.info("Did not receive a host back from test, ignoring ssh test");
-            return null;
-        }
-
-        if (password == null) {
-            s_logger.info("Did not receive a password back from test, ignoring ssh test");
-            return null;
-        }
-
-        // We will retry 5 times before quitting
-        String result = null;
-        int retry = 0;
-
-        while (true) {
-            try {
-                if (retry > 0) {
-                    s_logger.info("Retry attempt : " + retry + " ...sleeping 120 seconds before next attempt. Account is " + s_account.get());
-                    Thread.sleep(120000);
-                }
-
-                s_logger.info("Attempting to SSH into linux host " + host + " with retry attempt: " + retry + ". Account is " + s_account.get());
-
-                Connection conn = new Connection(host);
-                conn.connect(null, 60000, 60000);
-
-                s_logger.info("User + " + s_account.get() + " ssHed successfully into linux host " + host);
-
-                boolean isAuthenticated = conn.authenticateWithPassword("root", password);
-
-                if (isAuthenticated == false) {
-                    s_logger.info("Authentication failed for root with password" + password);
-                    return "Authentication failed";
-
-                }
-
-                boolean success = false;
-                String linuxCommand = null;
-
-                if (i % 10 == 0)
-                    linuxCommand = "rm -rf *; wget http://" + downloadUrl + " && ls -al dump.bin";
-                else
-                    linuxCommand = "wget http://" + downloadUrl + " && ls -al dump.bin";
-
-                Session sess = conn.openSession();
-                s_logger.info("User " + s_account.get() + " executing : " + linuxCommand);
-                sess.execCommand(linuxCommand);
-
-                InputStream stdout = sess.getStdout();
-                InputStream stderr = sess.getStderr();
-
-                byte[] buffer = new byte[8192];
-                while (true) {
-                    if ((stdout.available() == 0) && (stderr.available() == 0)) {
-                        int conditions = sess.waitForCondition(ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA | ChannelCondition.EOF, 120000);
-
-                        if ((conditions & ChannelCondition.TIMEOUT) != 0) {
-                            s_logger.info("Timeout while waiting for data from peer.");
-                            return null;
-                        }
-
-                        if ((conditions & ChannelCondition.EOF) != 0) {
-                            if ((conditions & (ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA)) == 0) {
-                                break;
-                            }
-                        }
-                    }
-
-                    while (stdout.available() > 0) {
-                        success = true;
-                        int len = stdout.read(buffer);
-                        if (len > 0) // this check is somewhat paranoid
-                            s_logger.info(new String(buffer, 0, len));
-                    }
-
-                    while (stderr.available() > 0) {
-                        /* int len = */stderr.read(buffer);
-                    }
-                }
-
-                sess.close();
-                conn.close();
-
-                if (!success) {
-                    retry++;
-                    if (retry == MAX_RETRY_LINUX) {
-                        result = "SSH Linux Network test fail";
-                    }
-                }
-
-                if (snapshotTest.equals("no"))
-                    return result;
-                else {
-                    Long sleep = 300000L;
-                    s_logger.info("Sleeping for " + sleep / 1000 / 60 + "minutes before executing next ssh test");
-                    Thread.sleep(sleep);
-                }
-            } catch (Exception e) {
-                retry++;
-                s_logger.error("SSH Linux Network test fail with error");
-                if ((retry == MAX_RETRY_LINUX) && (snapshotTest.equals("no"))) {
-                    return "SSH Linux Network test fail with error " + e.getMessage();
-                }
-            }
-            i++;
-        }
-    }
-
-    public static String createMD5Password(String password) {
-        MessageDigest md5;
-
-        try {
-            md5 = MessageDigest.getInstance("MD5");
-        } catch (NoSuchAlgorithmException e) {
-            throw new CloudRuntimeException("Error", e);
-        }
-
-        md5.reset();
-        BigInteger pwInt = new BigInteger(1, md5.digest(password.getBytes()));
-
-        // make sure our MD5 hash value is 32 digits long...
-        StringBuffer sb = new StringBuffer();
-        String pwStr = pwInt.toString(16);
-        int padding = 32 - pwStr.length();
-        for (int i = 0; i < padding; i++) {
-            sb.append('0');
-        }
-        sb.append(pwStr);
-        return sb.toString();
-    }
-
-    public static Element queryAsyncJobResult(String host, InputStream inputStream) {
-        Element returnBody = null;
-
-        Map<String, String> values = getSingleValueFromXML(inputStream, new String[] {"jobid"});
-        String jobId = values.get("jobid");
-
-        if (jobId == null) {
-            s_logger.error("Unable to get a jobId");
-            return null;
-        }
-
-        // s_logger.info("Job id is " + jobId);
-        String resultUrl = host + "?command=queryAsyncJobResult&jobid=" + jobId;
-        HttpClient client = new HttpClient();
-        HttpMethod method = new GetMethod(resultUrl);
-        while (true) {
-            try {
-                client.executeMethod(method);
-                // s_logger.info("Method is executed successfully. Following url was sent " + resultUrl);
-                InputStream is = method.getResponseBodyAsStream();
-                DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
-                DocumentBuilder builder = factory.newDocumentBuilder();
-                Document doc = builder.parse(is);
-                returnBody = doc.getDocumentElement();
-                doc.getDocumentElement().normalize();
-                Element jobStatusTag = (Element)returnBody.getElementsByTagName("jobstatus").item(0);
-                String jobStatus = jobStatusTag.getTextContent();
-                if (jobStatus.equals("0")) {
-                    try {
-                        Thread.sleep(1000);
-                    } catch (InterruptedException e) {
-                        s_logger.debug("[ignored] interrupted while during async job result query.");
-                    }
-                } else {
-                    break;
-                }
-
-            } catch (Exception ex) {
-                s_logger.error(ex);
-            }
-        }
-        return returnBody;
-    }
-
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/stress/WgetTest.java b/test/src-not-used/main/java/com/cloud/test/stress/WgetTest.java
deleted file mode 100644
index 9188556..0000000
--- a/test/src-not-used/main/java/com/cloud/test/stress/WgetTest.java
+++ /dev/null
@@ -1,150 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.stress;
-
-import java.io.InputStream;
-import java.util.Arrays;
-import java.util.Iterator;
-import java.util.List;
-
-import org.apache.log4j.Logger;
-
-import com.trilead.ssh2.ChannelCondition;
-import com.trilead.ssh2.Connection;
-import com.trilead.ssh2.Session;
-
-public class WgetTest {
-
-    public static final int MAX_RETRY_LINUX = 1;
-    public static final Logger s_logger = Logger.getLogger(WgetTest.class.getName());
-    public static String host = "";
-    public static String password = "rs-ccb35ea5";
-
-    public static void main(String[] args) {
-
-        // Parameters
-        List<String> argsList = Arrays.asList(args);
-        Iterator<String> iter = argsList.iterator();
-        while (iter.hasNext()) {
-            String arg = iter.next();
-            // host
-            if (arg.equals("-h")) {
-                host = iter.next();
-            }
-            //password
-
-            if (arg.equals("-p")) {
-                password = iter.next();
-            }
-
-        }
-
-        int i = 0;
-        if (host == null || host.equals("")) {
-            s_logger.info("Did not receive a host back from test, ignoring ssh test");
-            System.exit(2);
-        }
-
-        if (password == null) {
-            s_logger.info("Did not receive a password back from test, ignoring ssh test");
-            System.exit(2);
-        }
-        int retry = 0;
-
-        try {
-            if (retry > 0) {
-                s_logger.info("Retry attempt : " + retry + " ...sleeping 120 seconds before next attempt");
-                Thread.sleep(120000);
-            }
-
-            s_logger.info("Attempting to SSH into linux host " + host + " with retry attempt: " + retry);
-
-            Connection conn = new Connection(host);
-            conn.connect(null, 60000, 60000);
-
-            s_logger.info("User + ssHed successfully into linux host " + host);
-
-            boolean isAuthenticated = conn.authenticateWithPassword("root", password);
-
-            if (isAuthenticated == false) {
-                s_logger.info("Authentication failed for root with password" + password);
-                System.exit(2);
-            }
-
-            boolean success = false;
-            String linuxCommand = null;
-
-            if (i % 10 == 0)
-                linuxCommand = "rm -rf *; wget http://192.168.1.250/dump.bin && ls -al dump.bin";
-            else
-                linuxCommand = "wget http://192.168.1.250/dump.bin && ls -al dump.bin";
-
-            Session sess = conn.openSession();
-            sess.execCommand(linuxCommand);
-
-            InputStream stdout = sess.getStdout();
-            InputStream stderr = sess.getStderr();
-
-            byte[] buffer = new byte[8192];
-            while (true) {
-                if ((stdout.available() == 0) && (stderr.available() == 0)) {
-                    int conditions = sess.waitForCondition(ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA | ChannelCondition.EOF, 120000);
-
-                    if ((conditions & ChannelCondition.TIMEOUT) != 0) {
-                        s_logger.info("Timeout while waiting for data from peer.");
-                        System.exit(2);
-                    }
-
-                    if ((conditions & ChannelCondition.EOF) != 0) {
-                        if ((conditions & (ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA)) == 0) {
-                            break;
-                        }
-                    }
-                }
-
-                while (stdout.available() > 0) {
-                    success = true;
-                    int len = stdout.read(buffer);
-                    if (len > 0) // this check is somewhat paranoid
-                        s_logger.info(new String(buffer, 0, len));
-                }
-
-                while (stderr.available() > 0) {
-                    /* int len = */stderr.read(buffer);
-                }
-            }
-
-            sess.close();
-            conn.close();
-
-            if (!success) {
-                retry++;
-                if (retry == MAX_RETRY_LINUX) {
-                    System.exit(2);
-                }
-            }
-        } catch (Exception e) {
-            retry++;
-            s_logger.error("SSH Linux Network test fail with error");
-            if (retry == MAX_RETRY_LINUX) {
-                s_logger.error("Ssh test failed");
-                System.exit(2);
-            }
-        }
-    }
-
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/ui/AbstractSeleniumTestCase.java b/test/src-not-used/main/java/com/cloud/test/ui/AbstractSeleniumTestCase.java
deleted file mode 100644
index f9e678e..0000000
--- a/test/src-not-used/main/java/com/cloud/test/ui/AbstractSeleniumTestCase.java
+++ /dev/null
@@ -1,55 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.ui;
-
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
-import org.openqa.selenium.server.RemoteControlConfiguration;
-import org.openqa.selenium.server.SeleniumServer;
-
-import com.thoughtworks.selenium.DefaultSelenium;
-
-@RunWith(JUnit4.class)
-public abstract class AbstractSeleniumTestCase {
-    protected static DefaultSelenium selenium;
-    private static SeleniumServer seleniumServer;
-
-    @BeforeClass
-    public static void setUp() throws Exception {
-        System.out.println("*** Starting selenium ... ***");
-        RemoteControlConfiguration seleniumConfig = new RemoteControlConfiguration();
-        seleniumConfig.setPort(4444);
-        seleniumServer = new SeleniumServer(seleniumConfig);
-        seleniumServer.start();
-
-        String host = System.getProperty("myParam", "localhost");
-        selenium = createSeleniumClient("http://" + host + ":" + "8080/client/");
-        selenium.start();
-        System.out.println("*** Started selenium ***");
-    }
-
-    @AfterClass
-    public static void tearDown() throws Exception {
-        selenium.stop();
-    }
-
-    protected static DefaultSelenium createSeleniumClient(String url) throws Exception {
-        return new DefaultSelenium("localhost", 4444, "*firefox", url);
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/ui/AddAndDeleteAISO.java b/test/src-not-used/main/java/com/cloud/test/ui/AddAndDeleteAISO.java
deleted file mode 100644
index 1998ae7..0000000
--- a/test/src-not-used/main/java/com/cloud/test/ui/AddAndDeleteAISO.java
+++ /dev/null
@@ -1,127 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.ui;
-
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-
-import org.junit.Test;
-
-import com.thoughtworks.selenium.SeleniumException;
-
-public class AddAndDeleteAISO extends AbstractSeleniumTestCase {
-
-    @Test
-    public void testAddAndDeleteISO() throws Exception {
-        try {
-            selenium.open("/client/");
-            selenium.type("account_username", "admin");
-            selenium.type("account_password", "password");
-            selenium.click("loginbutton");
-            Thread.sleep(3000);
-            assertTrue(selenium.isTextPresent("admin"));
-            selenium.click("//div[@id='leftmenu_templates']/div");
-            selenium.click("//div[@id='leftmenu_submenu_my_iso']/div/div[2]");
-            Thread.sleep(3000);
-            selenium.click("label");
-
-            selenium.type("add_iso_name", "abc");
-            selenium.type("add_iso_display_text", "abc");
-            String iso_url = System.getProperty("add_iso_url", "http://10.91.28.6/ISO/Fedora-11-i386-DVD.iso");
-            selenium.type("add_iso_url", iso_url);
-            String iso_zone = System.getProperty("add_iso_zone", "All Zones");
-            selenium.select("add_iso_zone", "label=" + iso_zone);
-            String iso_os_type = System.getProperty("add_iso_os_type", "Fedora 11");
-            selenium.select("add_iso_os_type", "label=" + iso_os_type);
-            selenium.click("//div[28]/div[11]/button[1]");
-            Thread.sleep(3000);
-            int i = 1;
-            try {
-                for (;; i++) {
-                    System.out.println("i=   " + i);
-                    selenium.click("//div[" + i + "]/div/div[2]/span/span");
-                }
-            } catch (Exception ex) {
-                s_logger.info("[ignored]"
-                        + "error during clicking test on iso: " + e.getLocalizedMessage());
-            }
-
-            for (int second = 0;; second++) {
-                if (second >= 60)
-                    fail("timeout");
-                try {
-                    if (selenium.isVisible("//div[@id='after_action_info_container_on_top']"))
-                        break;
-                } catch (Exception e) {
-                    s_logger.info("[ignored]"
-                            + "error during visibility test of iso: " + e.getLocalizedMessage());
-                }
-                Thread.sleep(10000);
-            }
-
-            assertTrue(selenium.isTextPresent("Adding succeeded"));
-            Thread.sleep(3000);
-            int status = 1;
-            while (!selenium.isTextPresent("Ready")) {
-                for (int j = 1; j <= i; j++)
-
-                {
-                    if (selenium.isTextPresent("Ready")) {
-                        status = 0;
-                        break;
-                    }
-                    selenium.click("//div[" + j + "]/div/div[2]/span/span");
-                }
-                if (status == 0) {
-                    break;
-                } else {
-                    selenium.click("//div[@id='leftmenu_submenu_featured_iso']/div/div[2]");
-                    Thread.sleep(3000);
-                    selenium.click("//div[@id='leftmenu_submenu_my_iso']/div/div[2]");
-                    Thread.sleep(3000);
-                }
-
-            }
-            selenium.click("link=Delete ISO");
-            selenium.click("//div[28]/div[11]/button[1]");
-            for (int second = 0;; second++) {
-                if (second >= 60)
-                    fail("timeout");
-                try {
-                    if (selenium.isVisible("after_action_info_container_on_top"))
-                        break;
-                } catch (Exception e) {
-                    s_logger.info("[ignored]"
-                            + "error checking visibility after test completion for iso: " + e.getLocalizedMessage());
-                }
-                Thread.sleep(1000);
-            }
-
-            assertTrue(selenium.isTextPresent("Delete ISO action succeeded"));
-            selenium.click("main_logout");
-            selenium.waitForPageToLoad("30000");
-            assertTrue(selenium.isTextPresent("Welcome to Management Console"));
-
-        } catch (SeleniumException ex) {
-
-            System.err.println(ex.getMessage());
-            fail(ex.getMessage());
-
-            throw ex;
-        }
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/ui/AddAndDeleteATemplate.java b/test/src-not-used/main/java/com/cloud/test/ui/AddAndDeleteATemplate.java
deleted file mode 100644
index 3a3264e..0000000
--- a/test/src-not-used/main/java/com/cloud/test/ui/AddAndDeleteATemplate.java
+++ /dev/null
@@ -1,126 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.ui;
-
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-
-import org.junit.Test;
-
-import com.thoughtworks.selenium.SeleniumException;
-
-public class AddAndDeleteATemplate extends AbstractSeleniumTestCase {
-
-    @Test
-    public void testAddAndDeleteTemplate() throws Exception {
-        try {
-            selenium.open("/client/");
-            selenium.type("account_username", "admin");
-            selenium.type("account_password", "password");
-            selenium.click("loginbutton");
-            Thread.sleep(3000);
-            assertTrue(selenium.isTextPresent("admin"));
-            selenium.click("//div[@id='leftmenu_templates']/div");
-            selenium.click("//div[@id='leftmenu_submenu_my_template']/div/div[2]");
-            Thread.sleep(3000);
-            selenium.click("label");
-            selenium.type("add_template_name", "abc");
-            selenium.type("add_template_display_text", "abc");
-            String template_url =
-                System.getProperty("add_template_url", "http://10.91.28.6/templates/centos53-x86_64/latest/f59f18fb-ae94-4f97-afd2-f84755767aca.vhd.bz2");
-            selenium.type("add_template_url", template_url);
-            String template_zone = System.getProperty("add_template_zone", "All Zones");
-            selenium.select("add_template_zone", "label=" + template_zone);
-            String template_os_type = System.getProperty("add_template_os_type", "CentOS 5.3 (32-bit)");
-            selenium.select("add_template_os_type", "label=" + template_os_type);
-            selenium.click("//div[28]/div[11]/button[1]");
-            Thread.sleep(3000);
-            int i = 1;
-            try {
-                for (;; i++) {
-                    System.out.println("i=   " + i);
-                    selenium.click("//div[" + i + "]/div/div[2]/span/span");
-                }
-            } catch (Exception ex) {
-                s_logger.info("[ignored]"
-                        + "error during clicking test on template: " + ex.getLocalizedMessage());
-            }
-
-            for (int second = 0;; second++) {
-                if (second >= 60)
-                    fail("timeout");
-                try {
-                    if (selenium.isVisible("//div[@id='after_action_info_container_on_top']"))
-                        break;
-                } catch (Exception e) {
-                    s_logger.info("[ignored]"
-                            + "error during visibility test of template: " + e.getLocalizedMessage());
-                }
-                Thread.sleep(10000);
-            }
-
-            assertTrue(selenium.isTextPresent("Adding succeeded"));
-            Thread.sleep(3000);
-            int status = 1;
-            while (!selenium.isTextPresent("Ready")) {
-                for (int j = 1; j <= i; j++)
-
-                {
-                    if (selenium.isTextPresent("Ready")) {
-                        status = 0;
-                        break;
-                    }
-                    selenium.click("//div[" + j + "]/div/div[2]/span/span");
-                }
-                if (status == 0) {
-                    break;
-                } else {
-                    selenium.click("//div[@id='leftmenu_submenu_featured_template']/div/div[2]");
-                    Thread.sleep(3000);
-                    selenium.click("//div[@id='leftmenu_submenu_my_template']/div/div[2]");
-                    Thread.sleep(3000);
-                }
-
-            }
-            selenium.click("link=Delete Template");
-            selenium.click("//div[28]/div[11]/button[1]");
-            for (int second = 0;; second++) {
-                if (second >= 60)
-                    fail("timeout");
-                try {
-                    if (selenium.isVisible("after_action_info_container_on_top"))
-                        break;
-                } catch (Exception e) {
-                    s_logger.info("[ignored]"
-                            + "error checking visibility after test completion for template: " + e.getLocalizedMessage());
-                }
-                Thread.sleep(1000);
-            }
-
-            assertTrue(selenium.isTextPresent("Delete Template action succeeded"));
-            selenium.click("main_logout");
-            selenium.waitForPageToLoad("30000");
-            assertTrue(selenium.isTextPresent("Welcome to Management Console"));
-        } catch (SeleniumException ex) {
-
-            System.err.println(ex.getMessage());
-            fail(ex.getMessage());
-
-            throw ex;
-        }
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/ui/UIScenarioTest.java b/test/src-not-used/main/java/com/cloud/test/ui/UIScenarioTest.java
deleted file mode 100644
index 8fde7e3..0000000
--- a/test/src-not-used/main/java/com/cloud/test/ui/UIScenarioTest.java
+++ /dev/null
@@ -1,86 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.ui;
-
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-
-import org.junit.Test;
-
-import com.thoughtworks.selenium.SeleniumException;
-
-public class UIScenarioTest extends AbstractSeleniumTestCase {
-
-    @Test
-    public void testLoginStartStopVMScenario() throws Exception {
-        try {
-            selenium.open("/client/");
-            selenium.type("account_username", "admin");
-            selenium.type("account_password", "password");
-            selenium.click("loginbutton");
-            Thread.sleep(3000);
-            assertTrue(selenium.isTextPresent("admin"));
-            selenium.click("//div[@id='leftmenu_instances']/div");
-            selenium.click("//div[@id='leftmenu_instances_stopped_instances']/div/span");
-
-            Thread.sleep(3000);
-            selenium.click("//div[@id='midmenu_startvm_link']/div/div[2]");
-            selenium.click("//div[39]/div[11]/button[1]");
-
-            for (int second = 0;; second++) {
-                if (second >= 60)
-                    fail("timeout");
-                try {
-                    if (selenium.isVisible("//div/p[@id='after_action_info']"))
-                        break;
-                } catch (Exception e) {
-                    s_logger.info("[ignored]"
-                            + "error during visibility test after start vm: " + e.getLocalizedMessage());
-                }
-                Thread.sleep(10000);
-            }
-            assertTrue(selenium.isTextPresent("Start Instance action succeeded"));
-            selenium.click("//div[@id='leftmenu_instances_running_instances']/div/span");
-
-            Thread.sleep(3000);
-            selenium.click("//div[@id='midmenu_stopvm_link']/div/div[2]");
-            selenium.click("//div[39]/div[11]/button[1]");
-            for (int second = 0;; second++) {
-                if (second >= 60)
-                    fail("timeout");
-                try {
-                    if (selenium.isVisible("//div/p[@id='after_action_info']"))
-                        break;
-                } catch (Exception e) {
-                    s_logger.info("[ignored]"
-                            + "error during visibility test after stop vm: " + e.getLocalizedMessage());
-                }
-                Thread.sleep(10000);
-            }
-
-            assertTrue(selenium.isTextPresent("Stop Instance action succeeded"));
-            selenium.click("main_logout");
-            selenium.waitForPageToLoad("30000");
-            assertTrue(selenium.isTextPresent("Welcome to Management Console"));
-
-        } catch (SeleniumException ex) {
-            fail(ex.getMessage());
-            System.err.println(ex.getMessage());
-            throw ex;
-        }
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/utils/ConsoleProxy.java b/test/src-not-used/main/java/com/cloud/test/utils/ConsoleProxy.java
deleted file mode 100644
index 8c10d75..0000000
--- a/test/src-not-used/main/java/com/cloud/test/utils/ConsoleProxy.java
+++ /dev/null
@@ -1,110 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.utils;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-
-import org.apache.log4j.Logger;
-
-import com.cloud.utils.script.OutputInterpreter;
-import com.cloud.utils.script.Script;
-
-public class ConsoleProxy implements Runnable {
-    public static String proxyIp;
-    private String command;
-    private int connectionsMade;
-    private long responseTime;
-    public static final Logger s_logger = Logger.getLogger(ConsoleProxy.class.getClass());
-
-    public ConsoleProxy(String port, String sid, String host) {
-        this.command = "https://" + proxyIp + ".realhostip.com:8000/getscreen?w=100&h=75&host=" + host + "&port=" + port + "&sid=" + sid;
-        s_logger.info("Command for a console proxy is " + this.command);
-        this.connectionsMade = 0;
-        this.responseTime = 0;
-    }
-
-    public int getConnectionsMade() {
-        return this.connectionsMade;
-    }
-
-    public long getResponseTime() {
-        return this.responseTime;
-    }
-
-    @Override
-    public void run() {
-        while (true) {
-
-            Script myScript = new Script("wget");
-            myScript.add(command);
-            myScript.execute();
-            long begin = System.currentTimeMillis();
-            WgetInt process = new WgetInt();
-            String response = myScript.execute(process);
-            long end = process.getEnd();
-            if (response != null) {
-                s_logger.info("Content lenght is incorrect: " + response);
-            }
-
-            long duration = (end - begin);
-            this.connectionsMade++;
-            this.responseTime = this.responseTime + duration;
-            try {
-                Thread.sleep(1000);
-            } catch (InterruptedException e) {
-                s_logger.debug("[ignored] interrupted.");
-            }
-
-        }
-    }
-
-    public class WgetInt extends OutputInterpreter {
-        private long end;
-
-        public long getEnd() {
-            return end;
-        }
-
-        public void setEnd(long end) {
-            this.end = end;
-        }
-
-        @Override
-        public String interpret(BufferedReader reader) throws IOException {
-            // TODO Auto-generated method stub
-            end = System.currentTimeMillis();
-            String status = null;
-            String line = null;
-            while ((line = reader.readLine()) != null) {
-                int index = line.indexOf("Length:");
-                if (index == -1) {
-                    continue;
-                } else {
-                    int index1 = line.indexOf("Length: 1827");
-                    if (index1 == -1) {
-                        return status;
-                    } else
-                        status = line;
-                }
-
-            }
-            return status;
-        }
-
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/utils/IpSqlGenerator.java b/test/src-not-used/main/java/com/cloud/test/utils/IpSqlGenerator.java
deleted file mode 100644
index c37d08b..0000000
--- a/test/src-not-used/main/java/com/cloud/test/utils/IpSqlGenerator.java
+++ /dev/null
@@ -1,89 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.utils;
-
-import java.io.DataOutputStream;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.util.StringTokenizer;
-
-public class IpSqlGenerator {
-    public static void main(String[] args) {
-        try {
-            if (args.length != 5) {
-                System.out.println("Usage -- generate-ip.sh <public|private> <begin ip range> <end ip range> <data center id> <pod id>");
-                System.out.println("Example -- generate-ip.sh public 192.168.1.1 192.168.1.255 1 1");
-                System.out.println("  will generate ips ranging from public ips 192.168.1.1 to 192.168.1.255 for dc 1 and pod 1");
-                return;
-            }
-
-            String type = args[0];
-
-            StringTokenizer st = new StringTokenizer(args[1], ".");
-            int ipS1 = Integer.parseInt(st.nextToken());
-            int ipS2 = Integer.parseInt(st.nextToken());
-            int ipS3 = Integer.parseInt(st.nextToken());
-            int ipS4 = Integer.parseInt(st.nextToken());
-
-            st = new StringTokenizer(args[2], ".");
-            int ipE1 = Integer.parseInt(st.nextToken());
-            int ipE2 = Integer.parseInt(st.nextToken());
-            int ipE3 = Integer.parseInt(st.nextToken());
-            int ipE4 = Integer.parseInt(st.nextToken());
-
-            String dcId = args[3];
-            String podId = args[4];
-
-            if (type.equals("private")) {
-                FileOutputStream fs = new FileOutputStream(new File("private-ips.sql"));
-                DataOutputStream out = new DataOutputStream(fs);
-                for (int i = ipS1; i <= ipE1; i++) {
-                    for (int j = ipS2; j <= ipE2; j++) {
-                        for (int k = ipS3; k <= ipE3; k++) {
-                            for (int l = ipS4; l <= ipE4; l++) {
-                                out.writeBytes("INSERT INTO `vmops`.`dc_ip_address_alloc` (ip_address, data_center_id, pod_id) VALUES ('" + i + "." + j + "." + k + "." +
-                                    l + "'," + dcId + "," + podId + ");\r\n");
-                            }
-                        }
-                    }
-                }
-                out.writeBytes("\r\n");
-                out.flush();
-                out.close();
-            } else {
-                FileOutputStream fs = new FileOutputStream(new File("public-ips.sql"));
-                DataOutputStream out = new DataOutputStream(fs);
-                for (int i = ipS1; i <= ipE1; i++) {
-                    for (int j = ipS2; j <= ipE2; j++) {
-                        for (int k = ipS3; k <= ipE3; k++) {
-                            for (int l = ipS4; l <= ipE4; l++) {
-                                out.writeBytes("INSERT INTO `vmops`.`user_ip_address` (ip_address, data_center_id) VALUES ('" + i + "." + j + "." + k + "." + l + "'," +
-                                    dcId + ");\r\n");
-                            }
-                        }
-                    }
-                }
-                out.writeBytes("\r\n");
-                out.flush();
-                out.close();
-            }
-        } catch (Exception e) {
-            s_logger.info("[ignored]"
-                    + "error during ip insert generator: " + e.getLocalizedMessage());
-        }
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/utils/ProxyLoadTemp.java b/test/src-not-used/main/java/com/cloud/test/utils/ProxyLoadTemp.java
deleted file mode 100644
index f64b7d6..0000000
--- a/test/src-not-used/main/java/com/cloud/test/utils/ProxyLoadTemp.java
+++ /dev/null
@@ -1,112 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.utils;
-
-import java.io.BufferedReader;
-import java.io.FileReader;
-import java.util.ArrayList;
-
-import org.apache.log4j.Logger;
-
-public class ProxyLoadTemp {
-    public static final Logger s_logger = Logger.getLogger(ProxyLoadTemp.class.getClass());
-    public static int numThreads = 0;
-    public static ArrayList<ConsoleProxy> proxyList = new ArrayList<ConsoleProxy>();
-    public static long begin;
-    public static long end;
-    public static long sum = 0;
-
-    public ProxyLoadTemp() {
-    }
-
-    public static void main(String[] args) {
-        begin = System.currentTimeMillis();
-        Runtime.getRuntime().addShutdownHook(new ShutdownThread(new ProxyLoadTemp()));
-        ConsoleProxy.proxyIp = "172-16-1-101";
-
-        try {
-            BufferedReader consoleInput = new BufferedReader(new FileReader("console.input"));
-            boolean eof = false;
-            s_logger.info("Started reading file");
-            while (!eof) {
-                String line = consoleInput.readLine();
-                s_logger.info("Line is " + line);
-                if (line == null) {
-                    s_logger.info("Line " + numThreads + " is null");
-                    eof = true;
-                } else {
-                    String[] result = null;
-                    try {
-                        s_logger.info("Starting parsing line " + line);
-                        result = parseLine(line, "[,]");
-                        s_logger.info("Line retrieved from the file is " + result[0] + " " + result[1] + " " + result[2]);
-                        ConsoleProxy proxy = new ConsoleProxy(result[0], result[1], result[2]);
-                        proxyList.add(proxy);
-                        new Thread(proxy).start();
-                        numThreads++;
-
-                    } catch (Exception ex) {
-                        s_logger.warn(ex);
-                    }
-                }
-
-            }
-        } catch (Exception e) {
-            s_logger.warn(e);
-        }
-
-    }
-
-    public static class ShutdownThread extends Thread {
-        ProxyLoadTemp temp;
-
-        public ShutdownThread(ProxyLoadTemp temp) {
-            this.temp = temp;
-        }
-
-        @Override
-        public void run() {
-            s_logger.info("Program was running in " + numThreads + " threads");
-
-            for (int j = 0; j < proxyList.size(); j++) {
-                long av = 0;
-                if (proxyList.get(j).getConnectionsMade() != 0) {
-                    av = proxyList.get(j).getResponseTime() / proxyList.get(j).getConnectionsMade();
-                }
-                s_logger.info("Information for " + j + " thread: Number of requests sent is " + proxyList.get(j).getConnectionsMade() + ". Average response time is " +
-                    av + " milliseconds");
-                sum = sum + av;
-
-            }
-            ProxyLoadTemp.end = System.currentTimeMillis();
-            s_logger.info("Summary for all" + numThreads + " threads: Average response time is " + sum / numThreads + " milliseconds");
-            s_logger.info("Test was running for " + (ProxyLoadTemp.end - ProxyLoadTemp.begin) / 1000 + " seconds");
-        }
-    }
-
-    public static String[] parseLine(String line, String del) throws Exception {
-        String del1 = del.substring(1, del.length() - 1);
-        if (line.contains(del1) != true) {
-            throw new Exception();
-        } else {
-            String[] token = line.split(del);
-            return token;
-        }
-
-    }
-
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/utils/SignEC2.java b/test/src-not-used/main/java/com/cloud/test/utils/SignEC2.java
deleted file mode 100644
index 29e78c1..0000000
--- a/test/src-not-used/main/java/com/cloud/test/utils/SignEC2.java
+++ /dev/null
@@ -1,143 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.utils;
-
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.net.URLEncoder;
-import java.util.Arrays;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Properties;
-import java.util.Set;
-import java.util.StringTokenizer;
-import java.util.TreeMap;
-
-import org.apache.log4j.Logger;
-
-public class SignEC2 {
-    public static String url;
-    public static String secretkey;
-    public static String host;
-    public static String port;
-    public static String command;
-    public static String accessPoint;
-    public static final Logger s_logger = Logger.getLogger(SignEC2.class.getName());
-
-    public static void main(String[] args) {
-        // Parameters
-        List<String> argsList = Arrays.asList(args);
-        Iterator<String> iter = argsList.iterator();
-        while (iter.hasNext()) {
-            String arg = iter.next();
-
-            if (arg.equals("-u")) {
-                url = iter.next();
-            }
-        }
-
-        Properties prop = new Properties();
-        try {
-            prop.load(new FileInputStream("../conf/tool.properties"));
-        } catch (IOException ex) {
-            s_logger.error("Error reading from ../conf/tool.properties", ex);
-            System.exit(2);
-        }
-
-        host = prop.getProperty("host");
-        secretkey = prop.getProperty("secretkey");
-        port = prop.getProperty("port");
-
-        if (host == null) {
-            s_logger.info("Please set host in tool.properties file");
-            System.exit(1);
-        }
-
-        if (port == null) {
-            s_logger.info("Please set port in tool.properties file");
-            System.exit(1);
-        }
-
-        if (url == null) {
-            s_logger.info("Please specify url with -u option");
-            System.exit(1);
-        }
-
-        if (secretkey == null) {
-            s_logger.info("Please set secretkey in tool.properties file");
-            System.exit(1);
-        }
-
-        if (prop.get("apikey") == null) {
-            s_logger.info("Please set apikey in tool.properties file");
-            System.exit(1);
-        }
-
-        if (prop.get("accesspoint") == null) {
-            s_logger.info("Please set apikey in tool.properties file");
-            System.exit(1);
-        }
-
-        TreeMap<String, String> param = new TreeMap<String, String>();
-
-        String req = "GET\n" + host + ":" + prop.getProperty("port") + "\n/" + prop.getProperty("accesspoint") + "\n";
-        String temp = "";
-        param.put("AWSAccessKeyId", prop.getProperty("apikey"));
-        param.put("Expires", prop.getProperty("expires"));
-        param.put("SignatureMethod", "HmacSHA1");
-        param.put("SignatureVersion", "2");
-        param.put("Version", prop.getProperty("version"));
-        param.put("id", "1");
-
-        StringTokenizer str1 = new StringTokenizer(url, "&");
-        while (str1.hasMoreTokens()) {
-            String newEl = str1.nextToken();
-            StringTokenizer str2 = new StringTokenizer(newEl, "=");
-            String name = str2.nextToken();
-            String value = str2.nextToken();
-            param.put(name, value);
-        }
-
-        //sort url hash map by key
-        Set c = param.entrySet();
-        Iterator it = c.iterator();
-        while (it.hasNext()) {
-            Map.Entry me = (Map.Entry)it.next();
-            String key = (String)me.getKey();
-            String value = (String)me.getValue();
-            try {
-                temp = temp + key + "=" + URLEncoder.encode(value, "UTF-8") + "&";
-            } catch (Exception ex) {
-                s_logger.error("Unable to set parameter " + value + " for the command " + param.get("command"));
-            }
-
-        }
-        temp = temp.substring(0, temp.length() - 1);
-        String requestToSign = req + temp;
-        String signature = UtilsForTest.signRequest(requestToSign, secretkey);
-        String encodedSignature = "";
-        try {
-            encodedSignature = URLEncoder.encode(signature, "UTF-8");
-        } catch (Exception ex) {
-            s_logger.error(ex);
-        }
-        String url = "http://" + host + ":" + prop.getProperty("port") + "/" + prop.getProperty("accesspoint") + "?" + temp + "&Signature=" + encodedSignature;
-        s_logger.info("Url is " + url);
-
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/utils/SignRequest.java b/test/src-not-used/main/java/com/cloud/test/utils/SignRequest.java
deleted file mode 100644
index 95fd7b2..0000000
--- a/test/src-not-used/main/java/com/cloud/test/utils/SignRequest.java
+++ /dev/null
@@ -1,112 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.utils;
-
-import java.net.URLEncoder;
-import java.util.Arrays;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.StringTokenizer;
-import java.util.TreeMap;
-
-public class SignRequest {
-    public static String url;
-    public static String apikey;
-    public static String secretkey;
-    public static String command;
-
-    public static void main(String[] args) {
-        // Parameters
-        List<String> argsList = Arrays.asList(args);
-        Iterator<String> iter = argsList.iterator();
-        while (iter.hasNext()) {
-            String arg = iter.next();
-            if (arg.equals("-a")) {
-                apikey = iter.next();
-
-            }
-            if (arg.equals("-u")) {
-                url = iter.next();
-            }
-
-            if (arg.equals("-s")) {
-                secretkey = iter.next();
-            }
-        }
-
-        if (url == null) {
-            System.out.println("Please specify url with -u option. Example: -u \"command=listZones&id=1\"");
-            System.exit(1);
-        }
-
-        if (apikey == null) {
-            System.out.println("Please specify apikey with -a option");
-            System.exit(1);
-        }
-
-        if (secretkey == null) {
-            System.out.println("Please specify secretkey with -s option");
-            System.exit(1);
-        }
-
-        TreeMap<String, String> param = new TreeMap<String, String>();
-
-        String temp = "";
-        param.put("apikey", apikey);
-
-        StringTokenizer str1 = new StringTokenizer(url, "&");
-        while (str1.hasMoreTokens()) {
-            String newEl = str1.nextToken();
-            StringTokenizer str2 = new StringTokenizer(newEl, "=");
-            String name = str2.nextToken();
-            String value = str2.nextToken();
-            param.put(name, value);
-        }
-
-        //sort url hash map by key
-        Set c = param.entrySet();
-        Iterator it = c.iterator();
-        while (it.hasNext()) {
-            Map.Entry me = (Map.Entry)it.next();
-            String key = (String)me.getKey();
-            String value = (String)me.getValue();
-            try {
-                temp = temp + key + "=" + URLEncoder.encode(value, "UTF-8") + "&";
-            } catch (Exception ex) {
-                System.out.println("Unable to set parameter " + value + " for the command " + param.get("command"));
-            }
-
-        }
-        temp = temp.substring(0, temp.length() - 1);
-        String requestToSign = temp.toLowerCase();
-        System.out.println("After sorting: " + requestToSign);
-        String signature = UtilsForTest.signRequest(requestToSign, secretkey);
-        System.out.println("After Base64 encoding: " + signature);
-        String encodedSignature = "";
-        try {
-            encodedSignature = URLEncoder.encode(signature, "UTF-8");
-        } catch (Exception ex) {
-            System.out.println(ex);
-        }
-        System.out.println("After UTF8 encoding: " + encodedSignature);
-        String url = temp + "&signature=" + encodedSignature;
-        System.out.println("After sort and add signature: " + url);
-
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/utils/SqlDataGenerator.java b/test/src-not-used/main/java/com/cloud/test/utils/SqlDataGenerator.java
deleted file mode 100644
index 8b42b1f..0000000
--- a/test/src-not-used/main/java/com/cloud/test/utils/SqlDataGenerator.java
+++ /dev/null
@@ -1,49 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.utils;
-
-import java.io.DataOutputStream;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.util.Formatter;
-
-public class SqlDataGenerator {
-    public static void main(String[] args) {
-        try {
-            FileOutputStream fs = new FileOutputStream(new File("out.txt"));
-
-            DataOutputStream out = new DataOutputStream(fs);
-
-            for (int i = 20; i < 171; i++) {
-                out.writeBytes("INSERT INTO `vmops`.`dc_ip_address_alloc` (ip_address, data_center_id, pod_id) VALUES ('192.168.2." + i + "',1,1);\r\n");
-            }
-            out.writeBytes("\r\n");
-            for (int i = 1; i < 10000; i++) {
-                StringBuilder imagePath = new StringBuilder();
-                Formatter formatter = new Formatter(imagePath);
-                formatter.format("%04x", i);
-                out.writeBytes("INSERT INTO `vmops`.`dc_vnet_alloc` (vnet, data_center_id) VALUES ('" + imagePath.toString() + "',1);\r\n");
-            }
-
-            out.flush();
-            out.close();
-        } catch (Exception e) {
-            s_logger.info("[ignored]"
-                    + "error during sql generation: " + e.getLocalizedMessage());
-        }
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/utils/SubmitCert.java b/test/src-not-used/main/java/com/cloud/test/utils/SubmitCert.java
deleted file mode 100644
index a130d67..0000000
--- a/test/src-not-used/main/java/com/cloud/test/utils/SubmitCert.java
+++ /dev/null
@@ -1,198 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.utils;
-
-import java.io.BufferedReader;
-import java.io.FileInputStream;
-import java.io.FileReader;
-import java.io.IOException;
-import java.net.URLEncoder;
-import java.util.Arrays;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Properties;
-import java.util.Set;
-import java.util.StringTokenizer;
-import java.util.TreeMap;
-
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.HttpMethod;
-import org.apache.commons.httpclient.methods.GetMethod;
-import org.apache.log4j.Logger;
-
-public class SubmitCert {
-    public static String url = "Action=SetCertificate";
-    public static String secretKey;
-    public static String apiKey;
-    public static String host;
-    public static String port;
-    public static String command;
-    public static String accessPoint;
-    public static String signatureMethod;
-    public static String fileName = "tool.properties";
-    public static String certFileName;
-    public static String cert;
-    public static final Logger s_logger = Logger.getLogger(SubmitCert.class.getName());
-
-    public static void main(String[] args) {
-        // Parameters
-        List<String> argsList = Arrays.asList(args);
-        Iterator<String> iter = argsList.iterator();
-        while (iter.hasNext()) {
-            String arg = iter.next();
-
-            if (arg.equals("-c")) {
-                certFileName = iter.next();
-            }
-
-            if (arg.equals("-s")) {
-                secretKey = iter.next();
-            }
-
-            if (arg.equals("-a")) {
-                apiKey = iter.next();
-            }
-
-            if (arg.equals("-action")) {
-                url = "Action=" + iter.next();
-            }
-        }
-
-        Properties prop = new Properties();
-        try {
-            prop.load(new FileInputStream("conf/tool.properties"));
-        } catch (IOException ex) {
-            s_logger.error("Error reading from conf/tool.properties", ex);
-            System.exit(2);
-        }
-
-        host = prop.getProperty("host");
-        port = prop.getProperty("port");
-
-        if (url.equals("Action=SetCertificate") && certFileName == null) {
-            s_logger.error("Please set path to certificate (including file name) with -c option");
-            System.exit(1);
-        }
-
-        if (secretKey == null) {
-            s_logger.error("Please set secretkey  with -s option");
-            System.exit(1);
-        }
-
-        if (apiKey == null) {
-            s_logger.error("Please set apikey with -a option");
-            System.exit(1);
-        }
-
-        if (host == null) {
-            s_logger.error("Please set host in tool.properties file");
-            System.exit(1);
-        }
-
-        if (port == null) {
-            s_logger.error("Please set port in tool.properties file");
-            System.exit(1);
-        }
-
-        TreeMap<String, String> param = new TreeMap<String, String>();
-
-        String req = "GET\n" + host + ":" + prop.getProperty("port") + "\n/" + prop.getProperty("accesspoint") + "\n";
-        String temp = "";
-
-        if (certFileName != null) {
-            cert = readCert(certFileName);
-            param.put("cert", cert);
-        }
-
-        param.put("AWSAccessKeyId", apiKey);
-        param.put("Expires", prop.getProperty("expires"));
-        param.put("SignatureMethod", prop.getProperty("signaturemethod"));
-        param.put("SignatureVersion", "2");
-        param.put("Version", prop.getProperty("version"));
-
-        StringTokenizer str1 = new StringTokenizer(url, "&");
-        while (str1.hasMoreTokens()) {
-            String newEl = str1.nextToken();
-            StringTokenizer str2 = new StringTokenizer(newEl, "=");
-            String name = str2.nextToken();
-            String value = str2.nextToken();
-            param.put(name, value);
-        }
-
-        //sort url hash map by key
-        Set c = param.entrySet();
-        Iterator it = c.iterator();
-        while (it.hasNext()) {
-            Map.Entry me = (Map.Entry)it.next();
-            String key = (String)me.getKey();
-            String value = (String)me.getValue();
-            try {
-                temp = temp + key + "=" + URLEncoder.encode(value, "UTF-8") + "&";
-            } catch (Exception ex) {
-                s_logger.error("Unable to set parameter " + value + " for the command " + param.get("command"), ex);
-            }
-
-        }
-        temp = temp.substring(0, temp.length() - 1);
-        String requestToSign = req + temp;
-        String signature = UtilsForTest.signRequest(requestToSign, secretKey);
-        String encodedSignature = "";
-        try {
-            encodedSignature = URLEncoder.encode(signature, "UTF-8");
-        } catch (Exception ex) {
-            ex.printStackTrace();
-        }
-
-        String url = "http://" + host + ":" + prop.getProperty("port") + "/" + prop.getProperty("accesspoint") + "?" + temp + "&Signature=" + encodedSignature;
-        s_logger.info("Sending request with url:  " + url + "\n");
-        sendRequest(url);
-    }
-
-    public static String readCert(String filePath) {
-        try {
-            StringBuffer fileData = new StringBuffer(1000);
-            BufferedReader reader = new BufferedReader(new FileReader(filePath));
-            char[] buf = new char[1024];
-            int numRead = 0;
-            while ((numRead = reader.read(buf)) != -1) {
-                String readData = String.valueOf(buf, 0, numRead);
-                fileData.append(readData);
-                buf = new char[1024];
-            }
-            reader.close();
-            return fileData.toString();
-        } catch (Exception ex) {
-            s_logger.error(ex);
-            return null;
-        }
-    }
-
-    public static void sendRequest(String url) {
-        try {
-            HttpClient client = new HttpClient();
-            HttpMethod method = new GetMethod(url);
-            int responseCode = client.executeMethod(method);
-            String is = method.getResponseBodyAsString();
-            s_logger.info("Response code " + responseCode + ": " + is);
-        } catch (Exception ex) {
-            ex.printStackTrace();
-        }
-
-    }
-
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/utils/TestClient.java b/test/src-not-used/main/java/com/cloud/test/utils/TestClient.java
deleted file mode 100644
index 20df291..0000000
--- a/test/src-not-used/main/java/com/cloud/test/utils/TestClient.java
+++ /dev/null
@@ -1,385 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.utils;
-
-import java.io.InputStream;
-import java.util.Arrays;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Random;
-
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.HttpMethod;
-import org.apache.commons.httpclient.methods.GetMethod;
-import org.apache.log4j.Logger;
-import org.apache.log4j.NDC;
-
-import com.trilead.ssh2.ChannelCondition;
-import com.trilead.ssh2.Connection;
-import com.trilead.ssh2.SCPClient;
-import com.trilead.ssh2.Session;
-
-public class TestClient {
-    private static long sleepTime = 180000L; // default 0
-    private static boolean cleanUp = true;
-    public static final Logger s_logger = Logger.getLogger(TestClient.class.getName());
-    private static boolean repeat = true;
-    private static int numOfUsers = 0;
-    private static String[] users = null;
-    private static boolean internet = true;
-
-    private static final int MAX_RETRY_LINUX = 5;
-    private static final int MAX_RETRY_WIN = 10;
-
-    public static void main(String[] args) {
-        String host = "http://localhost";
-        String port = "8080";
-        String testUrl = "/client/test";
-        int numThreads = 1;
-
-        try {
-            // Parameters
-            List<String> argsList = Arrays.asList(args);
-            Iterator<String> iter = argsList.iterator();
-            while (iter.hasNext()) {
-                String arg = iter.next();
-                // host
-                if (arg.equals("-h")) {
-                    host = "http://" + iter.next();
-                }
-
-                if (arg.equals("-p")) {
-                    port = iter.next();
-                }
-
-                if (arg.equals("-t")) {
-                    numThreads = Integer.parseInt(iter.next());
-                }
-
-                if (arg.equals("-s")) {
-                    sleepTime = Long.parseLong(iter.next());
-                }
-
-                if (arg.equals("-c")) {
-                    cleanUp = Boolean.parseBoolean(iter.next());
-                    if (!cleanUp)
-                        sleepTime = 0L; // no need to wait if we don't ever cleanup
-                }
-
-                if (arg.equals("-r")) {
-                    repeat = Boolean.parseBoolean(iter.next());
-                }
-
-                if (arg.equals("-u")) {
-                    numOfUsers = Integer.parseInt(iter.next());
-                }
-
-                if (arg.equals("-i")) {
-                    internet = Boolean.parseBoolean(iter.next());
-                }
-            }
-
-            final String server = host + ":" + port + testUrl;
-            s_logger.info("Starting test against server: " + server + " with " + numThreads + " thread(s)");
-            if (cleanUp)
-                s_logger.info("Clean up is enabled, each test will wait " + sleepTime + " ms before cleaning up");
-
-            if (numOfUsers > 0) {
-                s_logger.info("Pre-generating users for test of size : " + numOfUsers);
-                users = new String[numOfUsers];
-                Random ran = new Random();
-                for (int i = 0; i < numOfUsers; i++) {
-                    users[i] = Math.abs(ran.nextInt()) + "-user";
-                }
-            }
-
-            for (int i = 0; i < numThreads; i++) {
-                new Thread(new Runnable() {
-                    @Override
-                    public void run() {
-                        do {
-                            String username = null;
-                            try {
-                                long now = System.currentTimeMillis();
-                                Random ran = new Random();
-                                if (users != null) {
-                                    username = users[Math.abs(ran.nextInt()) % numOfUsers];
-                                } else {
-                                    username = Math.abs(ran.nextInt()) + "-user";
-                                }
-                                NDC.push(username);
-
-                                String url = server + "?email=" + username + "&password=" + username + "&command=deploy";
-                                s_logger.info("Launching test for user: " + username + " with url: " + url);
-                                HttpClient client = new HttpClient();
-                                HttpMethod method = new GetMethod(url);
-                                int responseCode = client.executeMethod(method);
-                                boolean success = false;
-                                String reason = null;
-                                if (responseCode == 200) {
-                                    if (internet) {
-                                        s_logger.info("Deploy successful...waiting 5 minute before SSH tests");
-                                        Thread.sleep(300000L);  // Wait 60 seconds so the linux VM can boot up.
-
-                                        s_logger.info("Begin Linux SSH test");
-                                        reason = sshTest(method.getResponseHeader("linuxIP").getValue());
-
-                                        if (reason == null) {
-                                            s_logger.info("Linux SSH test successful");
-                                            s_logger.info("Begin Windows SSH test");
-                                            reason = sshWinTest(method.getResponseHeader("windowsIP").getValue());
-                                        }
-                                    }
-                                    if (reason == null) {
-                                        if (internet) {
-                                            s_logger.info("Windows SSH test successful");
-                                        } else {
-                                            s_logger.info("deploy test successful....now cleaning up");
-                                            if (cleanUp) {
-                                                s_logger.info("Waiting " + sleepTime + " ms before cleaning up vms");
-                                                Thread.sleep(sleepTime);
-                                            } else {
-                                                success = true;
-                                            }
-                                        }
-                                        if (users == null) {
-                                            s_logger.info("Sending cleanup command");
-                                            url = server + "?email=" + username + "&password=" + username + "&command=cleanup";
-                                        } else {
-                                            s_logger.info("Sending stop DomR / destroy VM command");
-                                            url = server + "?email=" + username + "&password=" + username + "&command=stopDomR";
-                                        }
-                                        method = new GetMethod(url);
-                                        responseCode = client.executeMethod(method);
-                                        if (responseCode == 200) {
-                                            success = true;
-                                        } else {
-                                            reason = method.getStatusText();
-                                        }
-                                    } else {
-                                        // Just stop but don't destroy the VMs/Routers
-                                        s_logger.info("SSH test failed with reason '" + reason + "', stopping VMs");
-                                        url = server + "?email=" + username + "&password=" + username + "&command=stop";
-                                        responseCode = client.executeMethod(new GetMethod(url));
-                                    }
-                                } else {
-                                    // Just stop but don't destroy the VMs/Routers
-                                    reason = method.getStatusText();
-                                    s_logger.info("Deploy test failed with reason '" + reason + "', stopping VMs");
-                                    url = server + "?email=" + username + "&password=" + username + "&command=stop";
-                                    client.executeMethod(new GetMethod(url));
-                                }
-
-                                if (success) {
-                                    s_logger.info("***** Completed test for user : " + username + " in " + ((System.currentTimeMillis() - now) / 1000L) + " seconds");
-                                } else {
-                                    s_logger.info("##### FAILED test for user : " + username + " in " + ((System.currentTimeMillis() - now) / 1000L) +
-                                        " seconds with reason : " + reason);
-                                }
-                            } catch (Exception e) {
-                                s_logger.warn("Error in thread", e);
-                                try {
-                                    HttpClient client = new HttpClient();
-                                    String url = server + "?email=" + username + "&password=" + username + "&command=stop";
-                                    client.executeMethod(new GetMethod(url));
-                                } catch (Exception e1) {
-                                    s_logger.info("[ignored]"
-                                            + "error while executing last resort stop attempt: " + e1.getLocalizedMessage());
-                                }
-                            } finally {
-                                NDC.clear();
-                            }
-                        } while (repeat);
-                    }
-                }).start();
-            }
-        } catch (Exception e) {
-            s_logger.error(e);
-        }
-    }
-
-    private static String sshWinTest(String host) {
-        if (host == null) {
-            s_logger.info("Did not receive a host back from test, ignoring win ssh test");
-            return null;
-        }
-
-        // We will retry 5 times before quitting
-        int retry = 0;
-
-        while (true) {
-            try {
-                if (retry > 0) {
-                    s_logger.info("Retry attempt : " + retry + " ...sleeping 300 seconds before next attempt");
-                    Thread.sleep(300000);
-                }
-
-                s_logger.info("Attempting to SSH into windows host " + host + " with retry attempt: " + retry);
-
-                Connection conn = new Connection(host);
-                conn.connect(null, 60000, 60000);
-
-                s_logger.info("SSHed successfully into windows host " + host);
-                boolean success = false;
-                boolean isAuthenticated = conn.authenticateWithPassword("vmops", "vmops");
-                if (isAuthenticated == false) {
-                    return "Authentication failed";
-                }
-                SCPClient scp = new SCPClient(conn);
-
-                scp.put("wget.exe", "");
-
-                Session sess = conn.openSession();
-                s_logger.info("Executing : wget http://172.16.0.220/dump.bin");
-                sess.execCommand("wget http://172.16.0.220/dump.bin && dir dump.bin");
-
-                InputStream stdout = sess.getStdout();
-                InputStream stderr = sess.getStderr();
-
-                byte[] buffer = new byte[8192];
-                while (true) {
-                    if ((stdout.available() == 0) && (stderr.available() == 0)) {
-                        int conditions = sess.waitForCondition(ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA | ChannelCondition.EOF, 120000);
-
-                        if ((conditions & ChannelCondition.TIMEOUT) != 0) {
-                            s_logger.info("Timeout while waiting for data from peer.");
-                            return null;
-                        }
-
-                        if ((conditions & ChannelCondition.EOF) != 0) {
-                            if ((conditions & (ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA)) == 0) {
-                                break;
-                            }
-                        }
-                    }
-
-                    while (stdout.available() > 0) {
-                        success = true;
-                        int len = stdout.read(buffer);
-                        if (len > 0) // this check is somewhat paranoid
-                            s_logger.info(new String(buffer, 0, len));
-                    }
-
-                    while (stderr.available() > 0) {
-                        int len = stderr.read(buffer);
-                    }
-                }
-                sess.close();
-                conn.close();
-
-                if (success) {
-                    return null;
-                } else {
-                    retry++;
-                    if (retry == MAX_RETRY_WIN) {
-                        return "SSH Windows Network test fail";
-                    }
-                }
-            } catch (Exception e) {
-                retry++;
-                if (retry == MAX_RETRY_WIN) {
-                    return "SSH Windows Network test fail with error " + e.getMessage();
-                }
-            }
-        }
-    }
-
-    private static String sshTest(String host) {
-        if (host == null) {
-            s_logger.info("Did not receive a host back from test, ignoring ssh test");
-            return null;
-        }
-
-        // We will retry 5 times before quitting
-        int retry = 0;
-
-        while (true) {
-            try {
-                if (retry > 0) {
-                    s_logger.info("Retry attempt : " + retry + " ...sleeping 120 seconds before next attempt");
-                    Thread.sleep(120000);
-                }
-
-                s_logger.info("Attempting to SSH into linux host " + host + " with retry attempt: " + retry);
-
-                Connection conn = new Connection(host);
-                conn.connect(null, 60000, 60000);
-
-                s_logger.info("SSHed successfully into linux host " + host);
-
-                boolean isAuthenticated = conn.authenticateWithPassword("root", "password");
-
-                if (isAuthenticated == false) {
-                    return "Authentication failed";
-                }
-                boolean success = false;
-                Session sess = conn.openSession();
-                s_logger.info("Executing : wget http://172.16.0.220/dump.bin");
-                sess.execCommand("wget http://172.16.0.220/dump.bin && ls -al dump.bin");
-
-                InputStream stdout = sess.getStdout();
-                InputStream stderr = sess.getStderr();
-
-                byte[] buffer = new byte[8192];
-                while (true) {
-                    if ((stdout.available() == 0) && (stderr.available() == 0)) {
-                        int conditions = sess.waitForCondition(ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA | ChannelCondition.EOF, 120000);
-
-                        if ((conditions & ChannelCondition.TIMEOUT) != 0) {
-                            s_logger.info("Timeout while waiting for data from peer.");
-                            return null;
-                        }
-
-                        if ((conditions & ChannelCondition.EOF) != 0) {
-                            if ((conditions & (ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA)) == 0) {
-                                break;
-                            }
-                        }
-                    }
-
-                    while (stdout.available() > 0) {
-                        success = true;
-                        int len = stdout.read(buffer);
-                        if (len > 0) // this check is somewhat paranoid
-                            s_logger.info(new String(buffer, 0, len));
-                    }
-
-                    while (stderr.available() > 0) {
-                        int len = stderr.read(buffer);
-                    }
-                }
-
-                sess.close();
-                conn.close();
-
-                if (success) {
-                    return null;
-                } else {
-                    retry++;
-                    if (retry == MAX_RETRY_LINUX) {
-                        return "SSH Linux Network test fail";
-                    }
-                }
-            } catch (Exception e) {
-                retry++;
-                if (retry == MAX_RETRY_LINUX) {
-                    return "SSH Linux Network test fail with error " + e.getMessage();
-                }
-            }
-        }
-    }
-}
diff --git a/test/src-not-used/main/java/com/cloud/test/utils/UtilsForTest.java b/test/src-not-used/main/java/com/cloud/test/utils/UtilsForTest.java
deleted file mode 100644
index 78ba001..0000000
--- a/test/src-not-used/main/java/com/cloud/test/utils/UtilsForTest.java
+++ /dev/null
@@ -1,210 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.test.utils;
-
-import java.io.InputStream;
-import java.math.BigInteger;
-import java.security.MessageDigest;
-import java.security.NoSuchAlgorithmException;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import javax.crypto.Mac;
-import javax.crypto.spec.SecretKeySpec;
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-
-import org.apache.commons.codec.binary.Base64;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-import com.cloud.utils.exception.CloudRuntimeException;
-
-public class UtilsForTest {
-
-    private static DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
-
-    public static boolean verifyTags(Map<String, String> params) {
-        boolean result = true;
-        for (String value : params.keySet()) {
-            if (params.get(value) == null) {
-                result = false;
-            }
-        }
-        return result;
-    }
-
-    public static boolean verifyTagValues(Map<String, String> params, Map<String, String> pattern) {
-        boolean result = true;
-
-        if (pattern != null) {
-            for (String value : pattern.keySet()) {
-                if (!pattern.get(value).equals(params.get(value))) {
-                    result = false;
-                    System.out.println("Tag " + value + " has " + params.get(value) + " while expected value is: " + pattern.get(value));
-                }
-            }
-        }
-        return result;
-    }
-
-    public static Map<String, String> parseXML(InputStream is, String[] tagNames) {
-        Map<String, String> returnValues = new HashMap<String, String>();
-        try {
-            DocumentBuilder docBuilder = factory.newDocumentBuilder();
-            Document doc = docBuilder.parse(is);
-            Element rootElement = doc.getDocumentElement();
-
-            for (int i = 0; i < tagNames.length; i++) {
-                NodeList targetNodes = rootElement.getElementsByTagName(tagNames[i]);
-                if (targetNodes.getLength() <= 0) {
-                    System.out.println("no " + tagNames[i] + " tag in the response");
-                    returnValues.put(tagNames[i], null);
-                } else {
-                    returnValues.put(tagNames[i], targetNodes.item(0).getTextContent());
-                }
-            }
-        } catch (Exception ex) {
-            System.out.println("error processing XML");
-            ex.printStackTrace();
-        }
-        return returnValues;
-    }
-
-    public static ArrayList<HashMap<String, String>> parseMulXML(InputStream is, String[] tagNames) {
-        ArrayList<HashMap<String, String>> returnValues = new ArrayList<HashMap<String, String>>();
-
-        try {
-            DocumentBuilder docBuilder = factory.newDocumentBuilder();
-            Document doc = docBuilder.parse(is);
-            Element rootElement = doc.getDocumentElement();
-            for (int i = 0; i < tagNames.length; i++) {
-                NodeList targetNodes = rootElement.getElementsByTagName(tagNames[i]);
-                if (targetNodes.getLength() <= 0) {
-                    System.out.println("no " + tagNames[i] + " tag in XML response...returning null");
-                } else {
-                    for (int j = 0; j < targetNodes.getLength(); j++) {
-                        HashMap<String, String> valueList = new HashMap<String, String>();
-                        Node node = targetNodes.item(j);
-                        //parse child nodes
-                        NodeList child = node.getChildNodes();
-                        for (int c = 0; c < node.getChildNodes().getLength(); c++) {
-                            child.item(c).getNodeName();
-                            valueList.put(child.item(c).getNodeName(), child.item(c).getTextContent());
-                        }
-                        returnValues.add(valueList);
-                    }
-
-                }
-            }
-        } catch (Exception ex) {
-            System.out.println(ex);
-        }
-
-        return returnValues;
-    }
-
-    public static String createMD5String(String password) {
-        MessageDigest md5;
-        try {
-            md5 = MessageDigest.getInstance("MD5");
-        } catch (NoSuchAlgorithmException e) {
-            throw new CloudRuntimeException("Error", e);
-        }
-
-        md5.reset();
-        BigInteger pwInt = new BigInteger(1, md5.digest(password.getBytes()));
-
-        // make sure our MD5 hash value is 32 digits long...
-        StringBuffer sb = new StringBuffer();
-        String pwStr = pwInt.toString(16);
-        int padding = 32 - pwStr.length();
-        for (int i = 0; i < padding; i++) {
-            sb.append('0');
-        }
-        sb.append(pwStr);
-        return sb.toString();
-    }
-
-    public static Map<String, String> getSingleValueFromXML(InputStream is, String[] tagNames) {
-        Map<String, String> returnValues = new HashMap<String, String>();
-        try {
-            DocumentBuilder docBuilder = factory.newDocumentBuilder();
-            Document doc = docBuilder.parse(is);
-            Element rootElement = doc.getDocumentElement();
-
-            for (int i = 0; i < tagNames.length; i++) {
-                NodeList targetNodes = rootElement.getElementsByTagName(tagNames[i]);
-                if (targetNodes.getLength() <= 0) {
-                    System.out.println("no " + tagNames[i] + " tag in XML response...returning null");
-                } else {
-                    returnValues.put(tagNames[i], targetNodes.item(0).getTextContent());
-                }
-            }
-        } catch (Exception ex) {
-            System.out.println("error processing XML");
-            ex.printStackTrace();
-        }
-        return returnValues;
-    }
-
-    public static Map<String, List<String>> getMultipleValuesFromXML(InputStream is, String[] tagNames) {
-        Map<String, List<String>> returnValues = new HashMap<String, List<String>>();
-        try {
-            DocumentBuilder docBuilder = factory.newDocumentBuilder();
-            Document doc = docBuilder.parse(is);
-            Element rootElement = doc.getDocumentElement();
-            for (int i = 0; i < tagNames.length; i++) {
-                NodeList targetNodes = rootElement.getElementsByTagName(tagNames[i]);
-                if (targetNodes.getLength() <= 0) {
-                    System.out.println("no " + tagNames[i] + " tag in XML response...returning null");
-                } else {
-                    List<String> valueList = new ArrayList<String>();
-                    for (int j = 0; j < targetNodes.getLength(); j++) {
-                        Node node = targetNodes.item(j);
-                        valueList.add(node.getTextContent());
-                    }
-                    returnValues.put(tagNames[i], valueList);
-                }
-            }
-        } catch (Exception ex) {
-            System.out.println(ex);
-        }
-        return returnValues;
-    }
-
-    public static String signRequest(String request, String key) {
-        try {
-            Mac mac = Mac.getInstance("HmacSHA1");
-            SecretKeySpec keySpec = new SecretKeySpec(key.getBytes(), "HmacSHA1");
-            mac.init(keySpec);
-            mac.update(request.getBytes());
-            byte[] encryptedBytes = mac.doFinal();
-            //System.out.println("HmacSHA1 hash: " + encryptedBytes);
-            return Base64.encodeBase64String(encryptedBytes);
-        } catch (Exception ex) {
-            System.out.println("unable to sign request");
-            ex.printStackTrace();
-        }
-        return null;
-    }
-
-}