You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ch...@apache.org on 2012/12/13 15:45:33 UTC

[27/36] CLOUDSTACK-594: Updating the xenserver java bindings used by cloudstack.

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/1e745017/deps/XenServerJava/src/com/xensource/xenapi/PoolPatch.java
----------------------------------------------------------------------
diff --git a/deps/XenServerJava/src/com/xensource/xenapi/PoolPatch.java b/deps/XenServerJava/src/com/xensource/xenapi/PoolPatch.java
deleted file mode 100644
index b274024..0000000
--- a/deps/XenServerJava/src/com/xensource/xenapi/PoolPatch.java
+++ /dev/null
@@ -1,622 +0,0 @@
-/* Copyright (c) Citrix Systems, Inc.
- * All rights reserved.
- * 
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 
- *   1) Redistributions of source code must retain the above copyright
- *      notice, this list of conditions and the following disclaimer.
- * 
- *   2) Redistributions in binary form must reproduce the above
- *      copyright notice, this list of conditions and the following
- *      disclaimer in the documentation and/or other materials
- *      provided with the distribution.
- * 
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-package com.xensource.xenapi;
-
-import com.xensource.xenapi.Types.BadServerResponse;
-import com.xensource.xenapi.Types.VersionException;
-import com.xensource.xenapi.Types.XenAPIException;
-
-import java.io.PrintWriter;
-import java.io.StringWriter;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.LinkedHashSet;
-import java.util.Map;
-import java.util.Set;
-
-import org.apache.xmlrpc.XmlRpcException;
-
-/**
- * Pool-wide patches
- *
- * @author Citrix Systems, Inc.
- */
-public class PoolPatch extends XenAPIObject {
-
-    /**
-     * The XenAPI reference to this object.
-     */
-    protected final String ref;
-
-    /**
-     * For internal use only.
-     */
-    PoolPatch(String ref) {
-       this.ref = ref;
-    }
-
-    public String toWireString() {
-       return this.ref;
-    }
-
-    /**
-     * If obj is a PoolPatch, compares XenAPI references for equality.
-     */
-    @Override
-    public boolean equals(Object obj)
-    {
-        if (obj != null && obj instanceof PoolPatch)
-        {
-            PoolPatch other = (PoolPatch) obj;
-            return other.ref.equals(this.ref);
-        } else
-        {
-            return false;
-        }
-    }
-
-    @Override
-    public int hashCode()
-    {
-        return ref.hashCode();
-    }
-
-    /**
-     * Represents all the fields in a PoolPatch
-     */
-    public static class Record implements Types.Record {
-        public String toString() {
-            StringWriter writer = new StringWriter();
-            PrintWriter print = new PrintWriter(writer);
-            print.printf("%1$20s: %2$s\n", "uuid", this.uuid);
-            print.printf("%1$20s: %2$s\n", "nameLabel", this.nameLabel);
-            print.printf("%1$20s: %2$s\n", "nameDescription", this.nameDescription);
-            print.printf("%1$20s: %2$s\n", "version", this.version);
-            print.printf("%1$20s: %2$s\n", "size", this.size);
-            print.printf("%1$20s: %2$s\n", "poolApplied", this.poolApplied);
-            print.printf("%1$20s: %2$s\n", "hostPatches", this.hostPatches);
-            print.printf("%1$20s: %2$s\n", "afterApplyGuidance", this.afterApplyGuidance);
-            print.printf("%1$20s: %2$s\n", "otherConfig", this.otherConfig);
-            return writer.toString();
-        }
-
-        /**
-         * Convert a pool_patch.Record to a Map
-         */
-        public Map<String,Object> toMap() {
-            Map<String,Object> map = new HashMap<String,Object>();
-            map.put("uuid", this.uuid == null ? "" : this.uuid);
-            map.put("name_label", this.nameLabel == null ? "" : this.nameLabel);
-            map.put("name_description", this.nameDescription == null ? "" : this.nameDescription);
-            map.put("version", this.version == null ? "" : this.version);
-            map.put("size", this.size == null ? 0 : this.size);
-            map.put("pool_applied", this.poolApplied == null ? false : this.poolApplied);
-            map.put("host_patches", this.hostPatches == null ? new LinkedHashSet<HostPatch>() : this.hostPatches);
-            map.put("after_apply_guidance", this.afterApplyGuidance == null ? new LinkedHashSet<Types.AfterApplyGuidance>() : this.afterApplyGuidance);
-            map.put("other_config", this.otherConfig == null ? new HashMap<String, String>() : this.otherConfig);
-            return map;
-        }
-
-        /**
-         * Unique identifier/object reference
-         */
-        public String uuid;
-        /**
-         * a human-readable name
-         */
-        public String nameLabel;
-        /**
-         * a notes field containg human-readable description
-         */
-        public String nameDescription;
-        /**
-         * Patch version number
-         */
-        public String version;
-        /**
-         * Size of the patch
-         */
-        public Long size;
-        /**
-         * This patch should be applied across the entire pool
-         */
-        public Boolean poolApplied;
-        /**
-         * This hosts this patch is applied to.
-         */
-        public Set<HostPatch> hostPatches;
-        /**
-         * What the client should do after this patch has been applied.
-         */
-        public Set<Types.AfterApplyGuidance> afterApplyGuidance;
-        /**
-         * additional configuration
-         */
-        public Map<String, String> otherConfig;
-    }
-
-    /**
-     * Get a record containing the current state of the given pool_patch.
-     *
-     * @return all fields from the object
-     */
-    public PoolPatch.Record getRecord(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.get_record";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toPoolPatchRecord(result);
-    }
-
-    /**
-     * Get a reference to the pool_patch instance with the specified UUID.
-     *
-     * @param uuid UUID of object to return
-     * @return reference to the object
-     */
-    public static PoolPatch getByUuid(Connection c, String uuid) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.get_by_uuid";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(uuid)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toPoolPatch(result);
-    }
-
-    /**
-     * Get all the pool_patch instances with the given label.
-     *
-     * @param label label of object to return
-     * @return references to objects with matching names
-     */
-    public static Set<PoolPatch> getByNameLabel(Connection c, String label) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.get_by_name_label";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(label)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toSetOfPoolPatch(result);
-    }
-
-    /**
-     * Get the uuid field of the given pool_patch.
-     *
-     * @return value of the field
-     */
-    public String getUuid(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.get_uuid";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Get the name/label field of the given pool_patch.
-     *
-     * @return value of the field
-     */
-    public String getNameLabel(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.get_name_label";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Get the name/description field of the given pool_patch.
-     *
-     * @return value of the field
-     */
-    public String getNameDescription(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.get_name_description";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Get the version field of the given pool_patch.
-     *
-     * @return value of the field
-     */
-    public String getVersion(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.get_version";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Get the size field of the given pool_patch.
-     *
-     * @return value of the field
-     */
-    public Long getSize(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.get_size";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toLong(result);
-    }
-
-    /**
-     * Get the pool_applied field of the given pool_patch.
-     *
-     * @return value of the field
-     */
-    public Boolean getPoolApplied(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.get_pool_applied";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toBoolean(result);
-    }
-
-    /**
-     * Get the host_patches field of the given pool_patch.
-     *
-     * @return value of the field
-     */
-    public Set<HostPatch> getHostPatches(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.get_host_patches";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toSetOfHostPatch(result);
-    }
-
-    /**
-     * Get the after_apply_guidance field of the given pool_patch.
-     *
-     * @return value of the field
-     */
-    public Set<Types.AfterApplyGuidance> getAfterApplyGuidance(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.get_after_apply_guidance";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toSetOfAfterApplyGuidance(result);
-    }
-
-    /**
-     * Get the other_config field of the given pool_patch.
-     *
-     * @return value of the field
-     */
-    public Map<String, String> getOtherConfig(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.get_other_config";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toMapOfStringString(result);
-    }
-
-    /**
-     * Set the other_config field of the given pool_patch.
-     *
-     * @param otherConfig New value to set
-     */
-    public void setOtherConfig(Connection c, Map<String, String> otherConfig) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.set_other_config";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref), Marshalling.toXMLRPC(otherConfig)};
-        Map response = c.dispatch(method_call, method_params);
-        return;
-    }
-
-    /**
-     * Add the given key-value pair to the other_config field of the given pool_patch.
-     *
-     * @param key Key to add
-     * @param value Value to add
-     */
-    public void addToOtherConfig(Connection c, String key, String value) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.add_to_other_config";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref), Marshalling.toXMLRPC(key), Marshalling.toXMLRPC(value)};
-        Map response = c.dispatch(method_call, method_params);
-        return;
-    }
-
-    /**
-     * Remove the given key and its corresponding value from the other_config field of the given pool_patch.  If the key is not in that Map, then do nothing.
-     *
-     * @param key Key to remove
-     */
-    public void removeFromOtherConfig(Connection c, String key) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.remove_from_other_config";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref), Marshalling.toXMLRPC(key)};
-        Map response = c.dispatch(method_call, method_params);
-        return;
-    }
-
-    /**
-     * Apply the selected patch to a host and return its output
-     *
-     * @param host The host to apply the patch too
-     * @return Task
-     */
-    public Task applyAsync(Connection c, Host host) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "Async.pool_patch.apply";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref), Marshalling.toXMLRPC(host)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-        return Types.toTask(result);
-    }
-
-    /**
-     * Apply the selected patch to a host and return its output
-     *
-     * @param host The host to apply the patch too
-     * @return the output of the patch application process
-     */
-    public String apply(Connection c, Host host) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.apply";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref), Marshalling.toXMLRPC(host)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Apply the selected patch to all hosts in the pool and return a map of host_ref -> patch output
-     *
-     * @return Task
-     */
-    public Task poolApplyAsync(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "Async.pool_patch.pool_apply";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-        return Types.toTask(result);
-    }
-
-    /**
-     * Apply the selected patch to all hosts in the pool and return a map of host_ref -> patch output
-     *
-     */
-    public void poolApply(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.pool_apply";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        return;
-    }
-
-    /**
-     * Execute the precheck stage of the selected patch on a host and return its output
-     *
-     * @param host The host to run the prechecks on
-     * @return Task
-     */
-    public Task precheckAsync(Connection c, Host host) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "Async.pool_patch.precheck";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref), Marshalling.toXMLRPC(host)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-        return Types.toTask(result);
-    }
-
-    /**
-     * Execute the precheck stage of the selected patch on a host and return its output
-     *
-     * @param host The host to run the prechecks on
-     * @return the output of the patch prechecks
-     */
-    public String precheck(Connection c, Host host) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.precheck";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref), Marshalling.toXMLRPC(host)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Removes the patch's files from all hosts in the pool, but does not remove the database entries
-     *
-     * @return Task
-     */
-    public Task cleanAsync(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "Async.pool_patch.clean";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-        return Types.toTask(result);
-    }
-
-    /**
-     * Removes the patch's files from all hosts in the pool, but does not remove the database entries
-     *
-     */
-    public void clean(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.clean";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        return;
-    }
-
-    /**
-     * Removes the patch's files from all hosts in the pool, and removes the database entries.  Only works on unapplied patches.
-     *
-     * @return Task
-     */
-    public Task destroyAsync(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "Async.pool_patch.destroy";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-        return Types.toTask(result);
-    }
-
-    /**
-     * Removes the patch's files from all hosts in the pool, and removes the database entries.  Only works on unapplied patches.
-     *
-     */
-    public void destroy(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.destroy";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        return;
-    }
-
-    /**
-     * Return a list of all the pool_patchs known to the system.
-     *
-     * @return references to all objects
-     */
-    public static Set<PoolPatch> getAll(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.get_all";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toSetOfPoolPatch(result);
-    }
-
-    /**
-     * Return a map of pool_patch references to pool_patch records for all pool_patchs known to the system.
-     *
-     * @return records of all objects
-     */
-    public static Map<PoolPatch, PoolPatch.Record> getAllRecords(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "pool_patch.get_all_records";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toMapOfPoolPatchPoolPatchRecord(result);
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/1e745017/deps/XenServerJava/src/com/xensource/xenapi/Role.java
----------------------------------------------------------------------
diff --git a/deps/XenServerJava/src/com/xensource/xenapi/Role.java b/deps/XenServerJava/src/com/xensource/xenapi/Role.java
deleted file mode 100644
index c64d18f..0000000
--- a/deps/XenServerJava/src/com/xensource/xenapi/Role.java
+++ /dev/null
@@ -1,359 +0,0 @@
-/* Copyright (c) Citrix Systems, Inc.
- * All rights reserved.
- * 
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 
- *   1) Redistributions of source code must retain the above copyright
- *      notice, this list of conditions and the following disclaimer.
- * 
- *   2) Redistributions in binary form must reproduce the above
- *      copyright notice, this list of conditions and the following
- *      disclaimer in the documentation and/or other materials
- *      provided with the distribution.
- * 
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-package com.xensource.xenapi;
-
-import com.xensource.xenapi.Types.BadServerResponse;
-import com.xensource.xenapi.Types.VersionException;
-import com.xensource.xenapi.Types.XenAPIException;
-
-import java.io.PrintWriter;
-import java.io.StringWriter;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.LinkedHashSet;
-import java.util.Map;
-import java.util.Set;
-
-import org.apache.xmlrpc.XmlRpcException;
-
-/**
- * A set of permissions associated with a subject
- *
- * @author Citrix Systems, Inc.
- */
-public class Role extends XenAPIObject {
-
-    /**
-     * The XenAPI reference to this object.
-     */
-    protected final String ref;
-
-    /**
-     * For internal use only.
-     */
-    Role(String ref) {
-       this.ref = ref;
-    }
-
-    public String toWireString() {
-       return this.ref;
-    }
-
-    /**
-     * If obj is a Role, compares XenAPI references for equality.
-     */
-    @Override
-    public boolean equals(Object obj)
-    {
-        if (obj != null && obj instanceof Role)
-        {
-            Role other = (Role) obj;
-            return other.ref.equals(this.ref);
-        } else
-        {
-            return false;
-        }
-    }
-
-    @Override
-    public int hashCode()
-    {
-        return ref.hashCode();
-    }
-
-    /**
-     * Represents all the fields in a Role
-     */
-    public static class Record implements Types.Record {
-        public String toString() {
-            StringWriter writer = new StringWriter();
-            PrintWriter print = new PrintWriter(writer);
-            print.printf("%1$20s: %2$s\n", "uuid", this.uuid);
-            print.printf("%1$20s: %2$s\n", "nameLabel", this.nameLabel);
-            print.printf("%1$20s: %2$s\n", "nameDescription", this.nameDescription);
-            print.printf("%1$20s: %2$s\n", "subroles", this.subroles);
-            return writer.toString();
-        }
-
-        /**
-         * Convert a role.Record to a Map
-         */
-        public Map<String,Object> toMap() {
-            Map<String,Object> map = new HashMap<String,Object>();
-            map.put("uuid", this.uuid == null ? "" : this.uuid);
-            map.put("name_label", this.nameLabel == null ? "" : this.nameLabel);
-            map.put("name_description", this.nameDescription == null ? "" : this.nameDescription);
-            map.put("subroles", this.subroles == null ? new LinkedHashSet<Role>() : this.subroles);
-            return map;
-        }
-
-        /**
-         * Unique identifier/object reference
-         */
-        public String uuid;
-        /**
-         * a short user-friendly name for the role
-         */
-        public String nameLabel;
-        /**
-         * what this role is for
-         */
-        public String nameDescription;
-        /**
-         * a list of pointers to other roles or permissions
-         */
-        public Set<Role> subroles;
-    }
-
-    /**
-     * Get a record containing the current state of the given role.
-     *
-     * @return all fields from the object
-     */
-    public Role.Record getRecord(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "role.get_record";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toRoleRecord(result);
-    }
-
-    /**
-     * Get a reference to the role instance with the specified UUID.
-     *
-     * @param uuid UUID of object to return
-     * @return reference to the object
-     */
-    public static Role getByUuid(Connection c, String uuid) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "role.get_by_uuid";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(uuid)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toRole(result);
-    }
-
-    /**
-     * Get all the role instances with the given label.
-     *
-     * @param label label of object to return
-     * @return references to objects with matching names
-     */
-    public static Set<Role> getByNameLabel(Connection c, String label) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "role.get_by_name_label";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(label)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toSetOfRole(result);
-    }
-
-    /**
-     * Get the uuid field of the given role.
-     *
-     * @return value of the field
-     */
-    public String getUuid(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "role.get_uuid";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Get the name/label field of the given role.
-     *
-     * @return value of the field
-     */
-    public String getNameLabel(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "role.get_name_label";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Get the name/description field of the given role.
-     *
-     * @return value of the field
-     */
-    public String getNameDescription(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "role.get_name_description";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Get the subroles field of the given role.
-     *
-     * @return value of the field
-     */
-    public Set<Role> getSubroles(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "role.get_subroles";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toSetOfRole(result);
-    }
-
-    /**
-     * This call returns a list of permissions given a role
-     *
-     * @return a list of permissions
-     */
-    public Set<Role> getPermissions(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "role.get_permissions";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toSetOfRole(result);
-    }
-
-    /**
-     * This call returns a list of permission names given a role
-     *
-     * @return a list of permission names
-     */
-    public Set<String> getPermissionsNameLabel(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "role.get_permissions_name_label";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toSetOfString(result);
-    }
-
-    /**
-     * This call returns a list of roles given a permission
-     *
-     * @return a list of references to roles
-     */
-    public Set<Role> getByPermission(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "role.get_by_permission";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toSetOfRole(result);
-    }
-
-    /**
-     * This call returns a list of roles given a permission name
-     *
-     * @param label The short friendly name of the role
-     * @return a list of references to roles
-     */
-    public static Set<Role> getByPermissionNameLabel(Connection c, String label) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "role.get_by_permission_name_label";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(label)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toSetOfRole(result);
-    }
-
-    /**
-     * Return a list of all the roles known to the system.
-     *
-     * @return references to all objects
-     */
-    public static Set<Role> getAll(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "role.get_all";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toSetOfRole(result);
-    }
-
-    /**
-     * Return a map of role references to role records for all roles known to the system.
-     *
-     * @return records of all objects
-     */
-    public static Map<Role, Role.Record> getAllRecords(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "role.get_all_records";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toMapOfRoleRoleRecord(result);
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/1e745017/deps/XenServerJava/src/com/xensource/xenapi/SM.java
----------------------------------------------------------------------
diff --git a/deps/XenServerJava/src/com/xensource/xenapi/SM.java b/deps/XenServerJava/src/com/xensource/xenapi/SM.java
deleted file mode 100644
index 12b6a82..0000000
--- a/deps/XenServerJava/src/com/xensource/xenapi/SM.java
+++ /dev/null
@@ -1,523 +0,0 @@
-/* Copyright (c) Citrix Systems, Inc.
- * All rights reserved.
- * 
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 
- *   1) Redistributions of source code must retain the above copyright
- *      notice, this list of conditions and the following disclaimer.
- * 
- *   2) Redistributions in binary form must reproduce the above
- *      copyright notice, this list of conditions and the following
- *      disclaimer in the documentation and/or other materials
- *      provided with the distribution.
- * 
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-package com.xensource.xenapi;
-
-import com.xensource.xenapi.Types.BadServerResponse;
-import com.xensource.xenapi.Types.VersionException;
-import com.xensource.xenapi.Types.XenAPIException;
-
-import java.io.PrintWriter;
-import java.io.StringWriter;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.LinkedHashSet;
-import java.util.Map;
-import java.util.Set;
-
-import org.apache.xmlrpc.XmlRpcException;
-
-/**
- * A storage manager plugin
- *
- * @author Citrix Systems, Inc.
- */
-public class SM extends XenAPIObject {
-
-    /**
-     * The XenAPI reference to this object.
-     */
-    protected final String ref;
-
-    /**
-     * For internal use only.
-     */
-    SM(String ref) {
-       this.ref = ref;
-    }
-
-    public String toWireString() {
-       return this.ref;
-    }
-
-    /**
-     * If obj is a SM, compares XenAPI references for equality.
-     */
-    @Override
-    public boolean equals(Object obj)
-    {
-        if (obj != null && obj instanceof SM)
-        {
-            SM other = (SM) obj;
-            return other.ref.equals(this.ref);
-        } else
-        {
-            return false;
-        }
-    }
-
-    @Override
-    public int hashCode()
-    {
-        return ref.hashCode();
-    }
-
-    /**
-     * Represents all the fields in a SM
-     */
-    public static class Record implements Types.Record {
-        public String toString() {
-            StringWriter writer = new StringWriter();
-            PrintWriter print = new PrintWriter(writer);
-            print.printf("%1$20s: %2$s\n", "uuid", this.uuid);
-            print.printf("%1$20s: %2$s\n", "nameLabel", this.nameLabel);
-            print.printf("%1$20s: %2$s\n", "nameDescription", this.nameDescription);
-            print.printf("%1$20s: %2$s\n", "type", this.type);
-            print.printf("%1$20s: %2$s\n", "vendor", this.vendor);
-            print.printf("%1$20s: %2$s\n", "copyright", this.copyright);
-            print.printf("%1$20s: %2$s\n", "version", this.version);
-            print.printf("%1$20s: %2$s\n", "requiredApiVersion", this.requiredApiVersion);
-            print.printf("%1$20s: %2$s\n", "configuration", this.configuration);
-            print.printf("%1$20s: %2$s\n", "capabilities", this.capabilities);
-            print.printf("%1$20s: %2$s\n", "otherConfig", this.otherConfig);
-            print.printf("%1$20s: %2$s\n", "driverFilename", this.driverFilename);
-            return writer.toString();
-        }
-
-        /**
-         * Convert a SM.Record to a Map
-         */
-        public Map<String,Object> toMap() {
-            Map<String,Object> map = new HashMap<String,Object>();
-            map.put("uuid", this.uuid == null ? "" : this.uuid);
-            map.put("name_label", this.nameLabel == null ? "" : this.nameLabel);
-            map.put("name_description", this.nameDescription == null ? "" : this.nameDescription);
-            map.put("type", this.type == null ? "" : this.type);
-            map.put("vendor", this.vendor == null ? "" : this.vendor);
-            map.put("copyright", this.copyright == null ? "" : this.copyright);
-            map.put("version", this.version == null ? "" : this.version);
-            map.put("required_api_version", this.requiredApiVersion == null ? "" : this.requiredApiVersion);
-            map.put("configuration", this.configuration == null ? new HashMap<String, String>() : this.configuration);
-            map.put("capabilities", this.capabilities == null ? new LinkedHashSet<String>() : this.capabilities);
-            map.put("other_config", this.otherConfig == null ? new HashMap<String, String>() : this.otherConfig);
-            map.put("driver_filename", this.driverFilename == null ? "" : this.driverFilename);
-            return map;
-        }
-
-        /**
-         * Unique identifier/object reference
-         */
-        public String uuid;
-        /**
-         * a human-readable name
-         */
-        public String nameLabel;
-        /**
-         * a notes field containg human-readable description
-         */
-        public String nameDescription;
-        /**
-         * SR.type
-         */
-        public String type;
-        /**
-         * Vendor who created this plugin
-         */
-        public String vendor;
-        /**
-         * Entity which owns the copyright of this plugin
-         */
-        public String copyright;
-        /**
-         * Version of the plugin
-         */
-        public String version;
-        /**
-         * Minimum SM API version required on the server
-         */
-        public String requiredApiVersion;
-        /**
-         * names and descriptions of device config keys
-         */
-        public Map<String, String> configuration;
-        /**
-         * capabilities of the SM plugin
-         */
-        public Set<String> capabilities;
-        /**
-         * additional configuration
-         */
-        public Map<String, String> otherConfig;
-        /**
-         * filename of the storage driver
-         */
-        public String driverFilename;
-    }
-
-    /**
-     * Get a record containing the current state of the given SM.
-     *
-     * @return all fields from the object
-     */
-    public SM.Record getRecord(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.get_record";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toSMRecord(result);
-    }
-
-    /**
-     * Get a reference to the SM instance with the specified UUID.
-     *
-     * @param uuid UUID of object to return
-     * @return reference to the object
-     */
-    public static SM getByUuid(Connection c, String uuid) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.get_by_uuid";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(uuid)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toSM(result);
-    }
-
-    /**
-     * Get all the SM instances with the given label.
-     *
-     * @param label label of object to return
-     * @return references to objects with matching names
-     */
-    public static Set<SM> getByNameLabel(Connection c, String label) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.get_by_name_label";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(label)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toSetOfSM(result);
-    }
-
-    /**
-     * Get the uuid field of the given SM.
-     *
-     * @return value of the field
-     */
-    public String getUuid(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.get_uuid";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Get the name/label field of the given SM.
-     *
-     * @return value of the field
-     */
-    public String getNameLabel(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.get_name_label";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Get the name/description field of the given SM.
-     *
-     * @return value of the field
-     */
-    public String getNameDescription(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.get_name_description";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Get the type field of the given SM.
-     *
-     * @return value of the field
-     */
-    public String getType(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.get_type";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Get the vendor field of the given SM.
-     *
-     * @return value of the field
-     */
-    public String getVendor(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.get_vendor";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Get the copyright field of the given SM.
-     *
-     * @return value of the field
-     */
-    public String getCopyright(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.get_copyright";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Get the version field of the given SM.
-     *
-     * @return value of the field
-     */
-    public String getVersion(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.get_version";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Get the required_api_version field of the given SM.
-     *
-     * @return value of the field
-     */
-    public String getRequiredApiVersion(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.get_required_api_version";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Get the configuration field of the given SM.
-     *
-     * @return value of the field
-     */
-    public Map<String, String> getConfiguration(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.get_configuration";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toMapOfStringString(result);
-    }
-
-    /**
-     * Get the capabilities field of the given SM.
-     *
-     * @return value of the field
-     */
-    public Set<String> getCapabilities(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.get_capabilities";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toSetOfString(result);
-    }
-
-    /**
-     * Get the other_config field of the given SM.
-     *
-     * @return value of the field
-     */
-    public Map<String, String> getOtherConfig(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.get_other_config";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toMapOfStringString(result);
-    }
-
-    /**
-     * Get the driver_filename field of the given SM.
-     *
-     * @return value of the field
-     */
-    public String getDriverFilename(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.get_driver_filename";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toString(result);
-    }
-
-    /**
-     * Set the other_config field of the given SM.
-     *
-     * @param otherConfig New value to set
-     */
-    public void setOtherConfig(Connection c, Map<String, String> otherConfig) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.set_other_config";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref), Marshalling.toXMLRPC(otherConfig)};
-        Map response = c.dispatch(method_call, method_params);
-        return;
-    }
-
-    /**
-     * Add the given key-value pair to the other_config field of the given SM.
-     *
-     * @param key Key to add
-     * @param value Value to add
-     */
-    public void addToOtherConfig(Connection c, String key, String value) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.add_to_other_config";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref), Marshalling.toXMLRPC(key), Marshalling.toXMLRPC(value)};
-        Map response = c.dispatch(method_call, method_params);
-        return;
-    }
-
-    /**
-     * Remove the given key and its corresponding value from the other_config field of the given SM.  If the key is not in that Map, then do nothing.
-     *
-     * @param key Key to remove
-     */
-    public void removeFromOtherConfig(Connection c, String key) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.remove_from_other_config";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref), Marshalling.toXMLRPC(key)};
-        Map response = c.dispatch(method_call, method_params);
-        return;
-    }
-
-    /**
-     * Return a list of all the SMs known to the system.
-     *
-     * @return references to all objects
-     */
-    public static Set<SM> getAll(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.get_all";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toSetOfSM(result);
-    }
-
-    /**
-     * Return a map of SM references to SM records for all SMs known to the system.
-     *
-     * @return records of all objects
-     */
-    public static Map<SM, SM.Record> getAllRecords(Connection c) throws
-       BadServerResponse,
-       XenAPIException,
-       XmlRpcException {
-        String method_call = "SM.get_all_records";
-        String session = c.getSessionReference();
-        Object[] method_params = {Marshalling.toXMLRPC(session)};
-        Map response = c.dispatch(method_call, method_params);
-        Object result = response.get("Value");
-            return Types.toMapOfSMSMRecord(result);
-    }
-
-}