Return-Path: X-Original-To: apmail-incubator-cloudstack-commits-archive@minotaur.apache.org Delivered-To: apmail-incubator-cloudstack-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id DED65DA3D for ; Thu, 13 Dec 2012 14:45:47 +0000 (UTC) Received: (qmail 94066 invoked by uid 500); 13 Dec 2012 14:45:45 -0000 Delivered-To: apmail-incubator-cloudstack-commits-archive@incubator.apache.org Received: (qmail 93536 invoked by uid 500); 13 Dec 2012 14:45:44 -0000 Mailing-List: contact cloudstack-commits-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: cloudstack-dev@incubator.apache.org Delivered-To: mailing list cloudstack-commits@incubator.apache.org Received: (qmail 90138 invoked by uid 99); 13 Dec 2012 14:45:33 -0000 Received: from tyr.zones.apache.org (HELO tyr.zones.apache.org) (140.211.11.114) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 13 Dec 2012 14:45:33 +0000 Received: by tyr.zones.apache.org (Postfix, from userid 65534) id A68C981C06E; Thu, 13 Dec 2012 14:45:33 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: chipchilders@apache.org To: cloudstack-commits@incubator.apache.org X-Mailer: ASF-Git Admin Mailer Subject: [20/36] git commit: CLOUDSTACK-594: Updating the xenserver java bindings used by cloudstack. Message-Id: <20121213144533.A68C981C06E@tyr.zones.apache.org> Date: Thu, 13 Dec 2012 14:45:33 +0000 (UTC) CLOUDSTACK-594: Updating the xenserver java bindings used by cloudstack. Updating the java bindings that are used in cloudstack with the latest one. This is part 1 of the change and it removes the older bindings. 1. https://reviews.apache.org/r/8566/ - removes the old bindings. 2. https://reviews.apache.org/r/8567/ - introduces the latest bindings. 3. https://reviews.apache.org/r/8568/ - adds the customization's made to them for cloudstack. Signed-off-by: Chip Childers Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/1e745017 Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/1e745017 Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/1e745017 Branch: refs/heads/master Commit: 1e7450173923c8de6e29e8ad505bcb1369ee2d8d Parents: b5eec20 Author: Devdeep Singh Authored: Thu Dec 13 09:40:39 2012 -0500 Committer: Chip Childers Committed: Thu Dec 13 09:40:39 2012 -0500 ---------------------------------------------------------------------- .../src/com/xensource/xenapi/APIVersion.java | 100 - .../src/com/xensource/xenapi/Auth.java | 112 - .../src/com/xensource/xenapi/Blob.java | 401 - .../src/com/xensource/xenapi/Bond.java | 393 - .../src/com/xensource/xenapi/Connection.java | 385 - .../src/com/xensource/xenapi/Console.java | 414 - .../src/com/xensource/xenapi/Crashdump.java | 353 - .../src/com/xensource/xenapi/DataSource.java | 159 - .../src/com/xensource/xenapi/Event.java | 258 - .../src/com/xensource/xenapi/Host.java | 2769 ---- .../src/com/xensource/xenapi/HostCpu.java | 531 - .../src/com/xensource/xenapi/HostCrashdump.java | 412 - .../src/com/xensource/xenapi/HostMetrics.java | 368 - .../src/com/xensource/xenapi/HostPatch.java | 547 - .../src/com/xensource/xenapi/Marshalling.java | 76 - .../src/com/xensource/xenapi/Message.java | 315 - .../src/com/xensource/xenapi/Network.java | 727 - .../src/com/xensource/xenapi/PBD.java | 537 - .../src/com/xensource/xenapi/PIF.java | 1231 -- .../src/com/xensource/xenapi/PIFMetrics.java | 528 - .../src/com/xensource/xenapi/Pool.java | 2294 --- .../src/com/xensource/xenapi/PoolPatch.java | 622 - .../src/com/xensource/xenapi/Role.java | 359 - .../XenServerJava/src/com/xensource/xenapi/SM.java | 523 - .../XenServerJava/src/com/xensource/xenapi/SR.java | 1477 -- .../src/com/xensource/xenapi/Secret.java | 312 - .../src/com/xensource/xenapi/Session.java | 670 - .../src/com/xensource/xenapi/Subject.java | 391 - .../src/com/xensource/xenapi/Task.java | 683 - .../src/com/xensource/xenapi/Tunnel.java | 469 - .../src/com/xensource/xenapi/Types.java |11096 --------------- .../src/com/xensource/xenapi/User.java | 379 - .../src/com/xensource/xenapi/VBD.java | 1156 -- .../src/com/xensource/xenapi/VBDMetrics.java | 344 - .../src/com/xensource/xenapi/VDI.java | 1815 --- .../src/com/xensource/xenapi/VIF.java | 842 -- .../src/com/xensource/xenapi/VIFMetrics.java | 344 - .../src/com/xensource/xenapi/VLAN.java | 416 - .../XenServerJava/src/com/xensource/xenapi/VM.java | 4270 ------ .../src/com/xensource/xenapi/VMGuestMetrics.java | 482 - .../src/com/xensource/xenapi/VMMetrics.java | 505 - .../src/com/xensource/xenapi/VMPP.java | 1153 -- .../src/com/xensource/xenapi/VTPM.java | 285 - .../src/com/xensource/xenapi/XenAPIObject.java | 35 - 44 files changed, 0 insertions(+), 41538 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/1e745017/deps/XenServerJava/src/com/xensource/xenapi/APIVersion.java ---------------------------------------------------------------------- diff --git a/deps/XenServerJava/src/com/xensource/xenapi/APIVersion.java b/deps/XenServerJava/src/com/xensource/xenapi/APIVersion.java deleted file mode 100644 index 763b98f..0000000 --- a/deps/XenServerJava/src/com/xensource/xenapi/APIVersion.java +++ /dev/null @@ -1,100 +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; - -public enum APIVersion -{ - API_1_1, API_1_2, API_1_3, API_1_4, API_1_5, API_1_6, API_1_7, UNKNOWN; - - public static APIVersion latest() - { - return API_1_7; - } - - public static APIVersion fromMajorMinor(long major, long minor) - { - if (major == 1 && minor == 7) - { - return API_1_7; - } - else if (major == 1 && minor == 6) - { - return API_1_6; - } - else if (major == 1 && minor == 5) - { - return API_1_5; - } - else if (major == 1 && minor == 4) - { - return API_1_4; - } - else if (major == 1 && minor == 3) - { - return API_1_3; - } - else if (major == 1 && minor == 2) - { - return API_1_2; - } - else if (major == 1 && minor == 1) - { - return API_1_1; - } - else - { - return UNKNOWN; - } - } - - @Override - public String toString() - { - switch (this) - { - case API_1_1: - return "1.1"; - case API_1_2: - return "1.2"; - case API_1_3: - return "1.3"; - case API_1_4: - return "1.4"; - case API_1_5: - return "1.5"; - case API_1_6: - return "1.6"; - case API_1_7: - return "1.7"; - default: - return "Unknown"; - } - } -} http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/1e745017/deps/XenServerJava/src/com/xensource/xenapi/Auth.java ---------------------------------------------------------------------- diff --git a/deps/XenServerJava/src/com/xensource/xenapi/Auth.java b/deps/XenServerJava/src/com/xensource/xenapi/Auth.java deleted file mode 100644 index 1bf615e..0000000 --- a/deps/XenServerJava/src/com/xensource/xenapi/Auth.java +++ /dev/null @@ -1,112 +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; - -/** - * Management of remote authentication services - * - * @author Citrix Systems, Inc. - */ -public class Auth extends XenAPIObject { - - - public String toWireString() { - return null; - } - - /** - * This call queries the external directory service to obtain the subject_identifier as a string from the human-readable subject_name - * - * @param subjectName The human-readable subject_name, such as a username or a groupname - * @return the subject_identifier obtained from the external directory service - */ - public static String getSubjectIdentifier(Connection c, String subjectName) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "auth.get_subject_identifier"; - String session = c.getSessionReference(); - Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(subjectName)}; - Map response = c.dispatch(method_call, method_params); - Object result = response.get("Value"); - return Types.toString(result); - } - - /** - * This call queries the external directory service to obtain the user information (e.g. username, organization etc) from the specified subject_identifier - * - * @param subjectIdentifier A string containing the subject_identifier, unique in the external directory service - * @return key-value pairs containing at least a key called subject_name - */ - public static Map getSubjectInformationFromIdentifier(Connection c, String subjectIdentifier) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "auth.get_subject_information_from_identifier"; - String session = c.getSessionReference(); - Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(subjectIdentifier)}; - Map response = c.dispatch(method_call, method_params); - Object result = response.get("Value"); - return Types.toMapOfStringString(result); - } - - /** - * This calls queries the external directory service to obtain the transitively-closed set of groups that the the subject_identifier is member of. - * - * @param subjectIdentifier A string containing the subject_identifier, unique in the external directory service - * @return set of subject_identifiers that provides the group membership of subject_identifier passed as argument, it contains, recursively, all groups a subject_identifier is member of. - */ - public static Set getGroupMembership(Connection c, String subjectIdentifier) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "auth.get_group_membership"; - String session = c.getSessionReference(); - Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(subjectIdentifier)}; - Map response = c.dispatch(method_call, method_params); - Object result = response.get("Value"); - return Types.toSetOfString(result); - } - -} http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/1e745017/deps/XenServerJava/src/com/xensource/xenapi/Blob.java ---------------------------------------------------------------------- diff --git a/deps/XenServerJava/src/com/xensource/xenapi/Blob.java b/deps/XenServerJava/src/com/xensource/xenapi/Blob.java deleted file mode 100644 index 7d3ad58..0000000 --- a/deps/XenServerJava/src/com/xensource/xenapi/Blob.java +++ /dev/null @@ -1,401 +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 placeholder for a binary blob - * - * @author Citrix Systems, Inc. - */ -public class Blob extends XenAPIObject { - - /** - * The XenAPI reference to this object. - */ - protected final String ref; - - /** - * For internal use only. - */ - Blob(String ref) { - this.ref = ref; - } - - public String toWireString() { - return this.ref; - } - - /** - * If obj is a Blob, compares XenAPI references for equality. - */ - @Override - public boolean equals(Object obj) - { - if (obj != null && obj instanceof Blob) - { - Blob other = (Blob) obj; - return other.ref.equals(this.ref); - } else - { - return false; - } - } - - @Override - public int hashCode() - { - return ref.hashCode(); - } - - /** - * Represents all the fields in a Blob - */ - 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", "size", this.size); - print.printf("%1$20s: %2$s\n", "lastUpdated", this.lastUpdated); - print.printf("%1$20s: %2$s\n", "mimeType", this.mimeType); - return writer.toString(); - } - - /** - * Convert a blob.Record to a Map - */ - public Map toMap() { - Map map = new HashMap(); - 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("size", this.size == null ? 0 : this.size); - map.put("last_updated", this.lastUpdated == null ? new Date(0) : this.lastUpdated); - map.put("mime_type", this.mimeType == null ? "" : this.mimeType); - 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; - /** - * Size of the binary data, in bytes - */ - public Long size; - /** - * Time at which the data in the blob was last updated - */ - public Date lastUpdated; - /** - * The mime type associated with this object. Defaults to 'application/octet-stream' if the empty string is supplied - */ - public String mimeType; - } - - /** - * Get a record containing the current state of the given blob. - * - * @return all fields from the object - */ - public Blob.Record getRecord(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "blob.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.toBlobRecord(result); - } - - /** - * Get a reference to the blob instance with the specified UUID. - * - * @param uuid UUID of object to return - * @return reference to the object - */ - public static Blob getByUuid(Connection c, String uuid) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "blob.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.toBlob(result); - } - - /** - * Get all the blob instances with the given label. - * - * @param label label of object to return - * @return references to objects with matching names - */ - public static Set getByNameLabel(Connection c, String label) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "blob.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.toSetOfBlob(result); - } - - /** - * Get the uuid field of the given blob. - * - * @return value of the field - */ - public String getUuid(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "blob.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 blob. - * - * @return value of the field - */ - public String getNameLabel(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "blob.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 blob. - * - * @return value of the field - */ - public String getNameDescription(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "blob.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 size field of the given blob. - * - * @return value of the field - */ - public Long getSize(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "blob.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 last_updated field of the given blob. - * - * @return value of the field - */ - public Date getLastUpdated(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "blob.get_last_updated"; - 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.toDate(result); - } - - /** - * Get the mime_type field of the given blob. - * - * @return value of the field - */ - public String getMimeType(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "blob.get_mime_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); - } - - /** - * Set the name/label field of the given blob. - * - * @param label New value to set - */ - public void setNameLabel(Connection c, String label) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "blob.set_name_label"; - String session = c.getSessionReference(); - Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref), Marshalling.toXMLRPC(label)}; - Map response = c.dispatch(method_call, method_params); - return; - } - - /** - * Set the name/description field of the given blob. - * - * @param description New value to set - */ - public void setNameDescription(Connection c, String description) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "blob.set_name_description"; - String session = c.getSessionReference(); - Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref), Marshalling.toXMLRPC(description)}; - Map response = c.dispatch(method_call, method_params); - return; - } - - /** - * Create a placeholder for a binary blob - * - * @param mimeType The mime-type of the blob. Defaults to 'application/octet-stream' if the empty string is supplied - * @return The reference to the created blob - */ - public static Blob create(Connection c, String mimeType) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "blob.create"; - String session = c.getSessionReference(); - Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(mimeType)}; - Map response = c.dispatch(method_call, method_params); - Object result = response.get("Value"); - return Types.toBlob(result); - } - - /** - * - * - */ - public void destroy(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "blob.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 blobs known to the system. - * - * @return references to all objects - */ - public static Set getAll(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "blob.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.toSetOfBlob(result); - } - - /** - * Return a map of blob references to blob records for all blobs known to the system. - * - * @return records of all objects - */ - public static Map getAllRecords(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "blob.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.toMapOfBlobBlobRecord(result); - } - -} http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/1e745017/deps/XenServerJava/src/com/xensource/xenapi/Bond.java ---------------------------------------------------------------------- diff --git a/deps/XenServerJava/src/com/xensource/xenapi/Bond.java b/deps/XenServerJava/src/com/xensource/xenapi/Bond.java deleted file mode 100644 index ee67e3c..0000000 --- a/deps/XenServerJava/src/com/xensource/xenapi/Bond.java +++ /dev/null @@ -1,393 +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; - -/** - * - * - * @author Citrix Systems, Inc. - */ -public class Bond extends XenAPIObject { - - /** - * The XenAPI reference to this object. - */ - protected final String ref; - - /** - * For internal use only. - */ - Bond(String ref) { - this.ref = ref; - } - - public String toWireString() { - return this.ref; - } - - /** - * If obj is a Bond, compares XenAPI references for equality. - */ - @Override - public boolean equals(Object obj) - { - if (obj != null && obj instanceof Bond) - { - Bond other = (Bond) obj; - return other.ref.equals(this.ref); - } else - { - return false; - } - } - - @Override - public int hashCode() - { - return ref.hashCode(); - } - - /** - * Represents all the fields in a Bond - */ - 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", "master", this.master); - print.printf("%1$20s: %2$s\n", "slaves", this.slaves); - print.printf("%1$20s: %2$s\n", "otherConfig", this.otherConfig); - return writer.toString(); - } - - /** - * Convert a Bond.Record to a Map - */ - public Map toMap() { - Map map = new HashMap(); - map.put("uuid", this.uuid == null ? "" : this.uuid); - map.put("master", this.master == null ? new PIF("OpaqueRef:NULL") : this.master); - map.put("slaves", this.slaves == null ? new LinkedHashSet() : this.slaves); - map.put("other_config", this.otherConfig == null ? new HashMap() : this.otherConfig); - return map; - } - - /** - * Unique identifier/object reference - */ - public String uuid; - /** - * The bonded interface - */ - public PIF master; - /** - * The interfaces which are part of this bond - */ - public Set slaves; - /** - * additional configuration - */ - public Map otherConfig; - } - - /** - * Get a record containing the current state of the given Bond. - * - * @return all fields from the object - */ - public Bond.Record getRecord(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "Bond.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.toBondRecord(result); - } - - /** - * Get a reference to the Bond instance with the specified UUID. - * - * @param uuid UUID of object to return - * @return reference to the object - */ - public static Bond getByUuid(Connection c, String uuid) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "Bond.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.toBond(result); - } - - /** - * Get the uuid field of the given Bond. - * - * @return value of the field - */ - public String getUuid(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "Bond.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 master field of the given Bond. - * - * @return value of the field - */ - public PIF getMaster(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "Bond.get_master"; - 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.toPIF(result); - } - - /** - * Get the slaves field of the given Bond. - * - * @return value of the field - */ - public Set getSlaves(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "Bond.get_slaves"; - 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.toSetOfPIF(result); - } - - /** - * Get the other_config field of the given Bond. - * - * @return value of the field - */ - public Map getOtherConfig(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "Bond.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 Bond. - * - * @param otherConfig New value to set - */ - public void setOtherConfig(Connection c, Map otherConfig) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "Bond.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 Bond. - * - * @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 = "Bond.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 Bond. 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 = "Bond.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; - } - - /** - * Create an interface bond - * - * @param network Network to add the bonded PIF to - * @param members PIFs to add to this bond - * @param MAC The MAC address to use on the bond itself. If this parameter is the empty string then the bond will inherit its MAC address from the first of the specified 'members' - * @return Task - */ - public static Task createAsync(Connection c, Network network, Set members, String MAC) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "Async.Bond.create"; - String session = c.getSessionReference(); - Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(network), Marshalling.toXMLRPC(members), Marshalling.toXMLRPC(MAC)}; - Map response = c.dispatch(method_call, method_params); - Object result = response.get("Value"); - return Types.toTask(result); - } - - /** - * Create an interface bond - * - * @param network Network to add the bonded PIF to - * @param members PIFs to add to this bond - * @param MAC The MAC address to use on the bond itself. If this parameter is the empty string then the bond will inherit its MAC address from the first of the specified 'members' - * @return The reference of the created Bond object - */ - public static Bond create(Connection c, Network network, Set members, String MAC) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "Bond.create"; - String session = c.getSessionReference(); - Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(network), Marshalling.toXMLRPC(members), Marshalling.toXMLRPC(MAC)}; - Map response = c.dispatch(method_call, method_params); - Object result = response.get("Value"); - return Types.toBond(result); - } - - /** - * Destroy an interface bond - * - * @return Task - */ - public Task destroyAsync(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "Async.Bond.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); - } - - /** - * Destroy an interface bond - * - */ - public void destroy(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "Bond.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 Bonds known to the system. - * - * @return references to all objects - */ - public static Set getAll(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "Bond.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.toSetOfBond(result); - } - - /** - * Return a map of Bond references to Bond records for all Bonds known to the system. - * - * @return records of all objects - */ - public static Map getAllRecords(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "Bond.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.toMapOfBondBondRecord(result); - } - -} http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/1e745017/deps/XenServerJava/src/com/xensource/xenapi/Connection.java ---------------------------------------------------------------------- diff --git a/deps/XenServerJava/src/com/xensource/xenapi/Connection.java b/deps/XenServerJava/src/com/xensource/xenapi/Connection.java deleted file mode 100644 index 6c205a2..0000000 --- a/deps/XenServerJava/src/com/xensource/xenapi/Connection.java +++ /dev/null @@ -1,385 +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 java.net.URL; -import java.util.Map; -import java.util.TimeZone; - -import org.apache.xmlrpc.XmlRpcException; -import org.apache.xmlrpc.client.XmlRpcClient; -import org.apache.xmlrpc.client.XmlRpcClientConfig; -import org.apache.xmlrpc.client.XmlRpcClientConfigImpl; -import org.apache.xmlrpc.client.XmlRpcHttpClientConfig; -import org.apache.xmlrpc.client.XmlRpcSun15HttpTransportFactory; - -import com.xensource.xenapi.Types.BadServerResponse; -import com.xensource.xenapi.Types.SessionAuthenticationFailed; -import com.xensource.xenapi.Types.XenAPIException; - -/** - * Represents a connection to a XenServer. Creating a new instance of this class initialises a new XmlRpcClient that is - * then used by all method calls: each method call in xenapi takes a Connection as a parameter, composes an XMLRPC - * method call, and dispatches it on the Connection's client via the dispatch method. - */ -public class Connection -{ - /** - * The version of the bindings that this class belongs to. - */ - public static final String BINDINGS_VERSION = "5.6.100-1"; - - /** - * true if the connection is to the Rio edition of XenServer. Certain function calls are not allowed. - * - * @deprecated Use getAPIVersion() instead. - */ - @Deprecated - public Boolean rioConnection = false; - - private APIVersion apiVersion; - - protected int _wait = 600; - - /** - * Updated when Session.login_with_password() is called. - */ - public APIVersion getAPIVersion() - { - return apiVersion; - } - - /** - * The opaque reference to the session used by this connection - */ - private String sessionReference; - - /** - * As seen by the xmlrpc library. From our point of view it's a server. - */ - private final XmlRpcClient client; - - private final boolean deprecatedConstructorUsed; - - /** - * Creates a connection to a particular server using a given username and password. This object can then be passed - * in to any other API calls. - * - * This constructor calls Session.loginWithPassword, passing itself as the first parameter. - * - * When this constructor is used, a call to dispose() (also called in the Connection's finalizer) will attempt a - * Session.logout on this connection. - * - * @deprecated Use a constructor that takes a URL as the first parameter instead. - */ - @Deprecated - public Connection(String client, String username, String password) throws java.net.MalformedURLException, - XmlRpcException, BadServerResponse, SessionAuthenticationFailed, XenAPIException - { - deprecatedConstructorUsed = true; - - // To login normally we call login_with_password(username, password, "1.X"). On rio this call fails and we - // should use login_with_password(username,password) instead, and note that we are talking to a rio host so that we - // can refuse to make certain miami-specific calls - final String ApiVersion = APIVersion.latest().toString(); - this.client = getClientFromURL(new URL(client)); - try - { - //first try to login the modern way - this.sessionReference = loginWithPassword(this.client, username, password, ApiVersion); - } catch (BadServerResponse e) - { - //oops, something went wrong - String[] errDesc = e.errorDescription; - //was the problem that the host was running rio? If so it will have complained that it got three parameters - //instead of two. Let us carefully verify the details of this complaint - if (0 == errDesc[0].compareTo("MESSAGE_PARAMETER_COUNT_MISMATCH") - && 0 == errDesc[1].compareTo("session.login_with_password") - && 0 == errDesc[2].compareTo("2") - && 0 == errDesc[3].compareTo("3")) - { - //and if so, we can have another go, using the older login method, and see how that goes. - this.sessionReference = loginWithPassword(this.client, username, password); - //success!. Note that we are talking to an old host on this connection - this.rioConnection = true; - } else - { - //Hmm... Can't solve this here. Let upstairs know about the problem. - throw e; - } - } - - try - { - setAPIVersion(new Session(sessionReference)); - } - catch (XenAPIException exn) - { - dispose(); - throw exn; - } - catch (XmlRpcException exn) - { - dispose(); - throw exn; - } - } - - /** - * Creates a connection to a particular server using a given username and password. This object can then be passed - * in to any other API calls. - * - * Note this constructor does NOT call Session.loginWithPassword; the programmer is responsible for calling it, - * passing the Connection as a parameter. No attempt to connect to the server is made until login is called. - * - * When this constructor is used, a call to dispose() will do nothing. The programmer is responsible for manually - * logging out the Session. - */ - public Connection(URL url, int wait) - { - deprecatedConstructorUsed = false; - _wait = wait; - this.client = getClientFromURL(url); - } - - /** - * Creates a connection to a particular server using a given username and password. This object can then be passed - * in to any other API calls. - * - * The additional sessionReference parameter must be a reference to a logged-in Session. Any method calls on this - * Connection will use it. This constructor does not call Session.loginWithPassword, and dispose() on the resulting - * Connection object does not call Session.logout. The programmer is responsible for ensuring the Session is logged - * in and out correctly. - */ - public Connection(URL url, String sessionReference) - { - deprecatedConstructorUsed = false; - - this.client = getClientFromURL(url); - this.sessionReference = sessionReference; - } - - protected void finalize() throws Throwable - { - dispose(); - super.finalize(); - } - - /** - * Nothrow guarantee. - */ - public void dispose() - { - if (!deprecatedConstructorUsed) - { - // We only need to do the Session.logout if they used the old deprecated constructor. - return; - } - - try - { - if (sessionReference != null) - { - String method_call = "session.logout"; - Object[] method_params = { Marshalling.toXMLRPC(this.sessionReference) }; - client.execute(method_call, method_params); - sessionReference = null; - } - } - catch (XmlRpcException exn) - { - } - } - - /** - * @deprecated The programmer is now responsible for calling login/logout themselves. - */ - @Deprecated - private static String loginWithPassword(XmlRpcClient client, String username, String password) - throws BadServerResponse, XmlRpcException, SessionAuthenticationFailed - { - String method_call = "session.login_with_password"; - Object[] method_params = { Marshalling.toXMLRPC(username), Marshalling.toXMLRPC(password) }; - Map response = (Map) client.execute(method_call, method_params); - if (response.get("Status").equals("Success")) - { - return (String) response.get("Value"); - } else if (response.get("Status").equals("Failure")) - { - Object[] error = (Object[]) response.get("ErrorDescription"); - if (error[0].equals("SESSION_AUTHENTICATION_FAILED")) - { - throw new SessionAuthenticationFailed(); - } - } - throw new BadServerResponse(response); - } - - /** - * @deprecated The programmer is now responsible for calling login/logout themselves. - */ - @Deprecated - private static String loginWithPassword(XmlRpcClient client, String username, String password, String ApiVersion) - throws BadServerResponse, XmlRpcException, SessionAuthenticationFailed - { - String method_call = "session.login_with_password"; - Object[] method_params = { Marshalling.toXMLRPC(username), Marshalling.toXMLRPC(password), - Marshalling.toXMLRPC(ApiVersion) }; - Map response = (Map) client.execute(method_call, method_params); - if (response.get("Status").equals("Success")) - { - return (String) response.get("Value"); - } else if (response.get("Status").equals("Failure")) - { - Object[] error = (Object[]) response.get("ErrorDescription"); - if (error[0].equals("SESSION_AUTHENTICATION_FAILED")) - { - throw new SessionAuthenticationFailed(); - } - } - throw new BadServerResponse(response); - } - - private XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl(); - - public XmlRpcClientConfigImpl getConfig() - { - return config; - } - private XmlRpcClient getClientFromURL(URL url) - { - config.setTimeZone(TimeZone.getTimeZone("UTC")); - config.setServerURL(url); - config.setReplyTimeout(_wait * 1000); - config.setConnectionTimeout(5000); - XmlRpcClient client = new XmlRpcClient(); - client.setConfig(config); - return client; - } - - /* - * Because the binding calls are constructing their own parameter lists, they need to be able to get to - * the session reference directly. This is all rather ugly and needs redone - * Changed to public to allow easier integration with HTTP-level streaming interface, - * see CA-15447 - */ - public String getSessionReference() - { - return this.sessionReference; - } - - /** - * The (auto-generated parts of) the bindings dispatch XMLRPC calls on this Connection's client through this method. - */ - protected Map dispatch(String method_call, Object[] method_params) throws XmlRpcException, XenAPIException - { - Map response = (Map) client.execute(method_call, method_params); - - if (!deprecatedConstructorUsed) - { - // We are using the new-style constructor which doesn't perform login. - // Set this Connection's Session reference from the value returned on the wire. - if (method_call.equals("session.login_with_password") && - response.get("Status").equals("Success")) - { - // Store the Session reference and ask the server what the - // API version it's using is. - Session session = Types.toSession(response.get("Value")); - sessionReference = session.ref; - setAPIVersion(session); - } - else if (method_call.equals("session.slave_local_login_with_password") && - response.get("Status").equals("Success")) - { - // Store the Session reference and assume API version 1.2. - sessionReference = Types.toSession(response.get("Value")).ref; - apiVersion = APIVersion.API_1_2; - } - else if (method_call.equals("session.logout")) - { - // Work around a bug in XenServer 5.0 and below. - // session.login_with_password should have rejected us with - // HOST_IS_SLAVE, but instead we don't find out until later. - // We don't want to leak the session, so we need to log out - // this session from the master instead. - if (response.get("Status").equals("Failure")) - { - Object[] error = (Object[]) response.get("ErrorDescription"); - if (error.length == 2 && error[0].equals("HOST_IS_SLAVE")) - { - try - { - URL client_url = - ((XmlRpcHttpClientConfig)client.getClientConfig()).getServerURL(); - Connection tmp_conn = - new Connection(new URL(client_url.getProtocol(), - (String)error[1], - client_url.getPort(), - client_url.getFile()), _wait); - tmp_conn.sessionReference = sessionReference; - try - { - Session.logout(tmp_conn); - } - finally - { - tmp_conn.dispose(); - } - } - catch (Exception exn2) - { - // Ignore -- we're going to throw HostIsSlave anyway. - } - } - } - - // Clear the stored Session reference. - this.sessionReference = null; - } - } - - return Types.checkResponse(response); - } - - - private void setAPIVersion(Session session) throws XenAPIException, XmlRpcException - { - try - { - long major = session.getThisHost(this).getAPIVersionMajor(this); - long minor = session.getThisHost(this).getAPIVersionMinor(this); - apiVersion = APIVersion.fromMajorMinor(major, minor); - } - catch (BadServerResponse exn) - { - apiVersion = APIVersion.API_1_1; - } - } -} http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/1e745017/deps/XenServerJava/src/com/xensource/xenapi/Console.java ---------------------------------------------------------------------- diff --git a/deps/XenServerJava/src/com/xensource/xenapi/Console.java b/deps/XenServerJava/src/com/xensource/xenapi/Console.java deleted file mode 100644 index e73e685..0000000 --- a/deps/XenServerJava/src/com/xensource/xenapi/Console.java +++ /dev/null @@ -1,414 +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 console - * - * @author Citrix Systems, Inc. - */ -public class Console extends XenAPIObject { - - /** - * The XenAPI reference to this object. - */ - protected final String ref; - - /** - * For internal use only. - */ - Console(String ref) { - this.ref = ref; - } - - public String toWireString() { - return this.ref; - } - - /** - * If obj is a Console, compares XenAPI references for equality. - */ - @Override - public boolean equals(Object obj) - { - if (obj != null && obj instanceof Console) - { - Console other = (Console) obj; - return other.ref.equals(this.ref); - } else - { - return false; - } - } - - @Override - public int hashCode() - { - return ref.hashCode(); - } - - /** - * Represents all the fields in a Console - */ - 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", "protocol", this.protocol); - print.printf("%1$20s: %2$s\n", "location", this.location); - print.printf("%1$20s: %2$s\n", "VM", this.VM); - print.printf("%1$20s: %2$s\n", "otherConfig", this.otherConfig); - return writer.toString(); - } - - /** - * Convert a console.Record to a Map - */ - public Map toMap() { - Map map = new HashMap(); - map.put("uuid", this.uuid == null ? "" : this.uuid); - map.put("protocol", this.protocol == null ? Types.ConsoleProtocol.UNRECOGNIZED : this.protocol); - map.put("location", this.location == null ? "" : this.location); - map.put("VM", this.VM == null ? new VM("OpaqueRef:NULL") : this.VM); - map.put("other_config", this.otherConfig == null ? new HashMap() : this.otherConfig); - return map; - } - - /** - * Unique identifier/object reference - */ - public String uuid; - /** - * the protocol used by this console - */ - public Types.ConsoleProtocol protocol; - /** - * URI for the console service - */ - public String location; - /** - * VM to which this console is attached - */ - public VM VM; - /** - * additional configuration - */ - public Map otherConfig; - } - - /** - * Get a record containing the current state of the given console. - * - * @return all fields from the object - */ - public Console.Record getRecord(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "console.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.toConsoleRecord(result); - } - - /** - * Get a reference to the console instance with the specified UUID. - * - * @param uuid UUID of object to return - * @return reference to the object - */ - public static Console getByUuid(Connection c, String uuid) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "console.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.toConsole(result); - } - - /** - * Create a new console instance, and return its handle. - * - * @param record All constructor arguments - * @return Task - */ - public static Task createAsync(Connection c, Console.Record record) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "Async.console.create"; - String session = c.getSessionReference(); - Map record_map = record.toMap(); - Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(record_map)}; - Map response = c.dispatch(method_call, method_params); - Object result = response.get("Value"); - return Types.toTask(result); - } - - /** - * Create a new console instance, and return its handle. - * - * @param record All constructor arguments - * @return reference to the newly created object - */ - public static Console create(Connection c, Console.Record record) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "console.create"; - String session = c.getSessionReference(); - Map record_map = record.toMap(); - Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(record_map)}; - Map response = c.dispatch(method_call, method_params); - Object result = response.get("Value"); - return Types.toConsole(result); - } - - /** - * Destroy the specified console instance. - * - * @return Task - */ - public Task destroyAsync(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "Async.console.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); - } - - /** - * Destroy the specified console instance. - * - */ - public void destroy(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "console.destroy"; - String session = c.getSessionReference(); - Object[] method_params = {Marshalling.toXMLRPC(session), Marshalling.toXMLRPC(this.ref)}; - Map response = c.dispatch(method_call, method_params); - return; - } - - /** - * Get the uuid field of the given console. - * - * @return value of the field - */ - public String getUuid(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "console.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 protocol field of the given console. - * - * @return value of the field - */ - public Types.ConsoleProtocol getProtocol(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "console.get_protocol"; - 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.toConsoleProtocol(result); - } - - /** - * Get the location field of the given console. - * - * @return value of the field - */ - public String getLocation(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "console.get_location"; - 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 VM field of the given console. - * - * @return value of the field - */ - public VM getVM(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "console.get_VM"; - 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.toVM(result); - } - - /** - * Get the other_config field of the given console. - * - * @return value of the field - */ - public Map getOtherConfig(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "console.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 console. - * - * @param otherConfig New value to set - */ - public void setOtherConfig(Connection c, Map otherConfig) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "console.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 console. - * - * @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 = "console.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 console. 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 = "console.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 consoles known to the system. - * - * @return references to all objects - */ - public static Set getAll(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "console.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.toSetOfConsole(result); - } - - /** - * Return a map of console references to console records for all consoles known to the system. - * - * @return records of all objects - */ - public static Map getAllRecords(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "console.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.toMapOfConsoleConsoleRecord(result); - } - -} http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/1e745017/deps/XenServerJava/src/com/xensource/xenapi/Crashdump.java ---------------------------------------------------------------------- diff --git a/deps/XenServerJava/src/com/xensource/xenapi/Crashdump.java b/deps/XenServerJava/src/com/xensource/xenapi/Crashdump.java deleted file mode 100644 index 31cf418..0000000 --- a/deps/XenServerJava/src/com/xensource/xenapi/Crashdump.java +++ /dev/null @@ -1,353 +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 VM crashdump - * - * @author Citrix Systems, Inc. - */ -public class Crashdump extends XenAPIObject { - - /** - * The XenAPI reference to this object. - */ - protected final String ref; - - /** - * For internal use only. - */ - Crashdump(String ref) { - this.ref = ref; - } - - public String toWireString() { - return this.ref; - } - - /** - * If obj is a Crashdump, compares XenAPI references for equality. - */ - @Override - public boolean equals(Object obj) - { - if (obj != null && obj instanceof Crashdump) - { - Crashdump other = (Crashdump) obj; - return other.ref.equals(this.ref); - } else - { - return false; - } - } - - @Override - public int hashCode() - { - return ref.hashCode(); - } - - /** - * Represents all the fields in a Crashdump - */ - 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", "VM", this.VM); - print.printf("%1$20s: %2$s\n", "VDI", this.VDI); - print.printf("%1$20s: %2$s\n", "otherConfig", this.otherConfig); - return writer.toString(); - } - - /** - * Convert a crashdump.Record to a Map - */ - public Map toMap() { - Map map = new HashMap(); - map.put("uuid", this.uuid == null ? "" : this.uuid); - map.put("VM", this.VM == null ? new VM("OpaqueRef:NULL") : this.VM); - map.put("VDI", this.VDI == null ? new VDI("OpaqueRef:NULL") : this.VDI); - map.put("other_config", this.otherConfig == null ? new HashMap() : this.otherConfig); - return map; - } - - /** - * Unique identifier/object reference - */ - public String uuid; - /** - * the virtual machine - */ - public VM VM; - /** - * the virtual disk - */ - public VDI VDI; - /** - * additional configuration - */ - public Map otherConfig; - } - - /** - * Get a record containing the current state of the given crashdump. - * - * @return all fields from the object - */ - public Crashdump.Record getRecord(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "crashdump.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.toCrashdumpRecord(result); - } - - /** - * Get a reference to the crashdump instance with the specified UUID. - * - * @param uuid UUID of object to return - * @return reference to the object - */ - public static Crashdump getByUuid(Connection c, String uuid) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "crashdump.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.toCrashdump(result); - } - - /** - * Get the uuid field of the given crashdump. - * - * @return value of the field - */ - public String getUuid(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "crashdump.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 VM field of the given crashdump. - * - * @return value of the field - */ - public VM getVM(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "crashdump.get_VM"; - 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.toVM(result); - } - - /** - * Get the VDI field of the given crashdump. - * - * @return value of the field - */ - public VDI getVDI(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "crashdump.get_VDI"; - 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.toVDI(result); - } - - /** - * Get the other_config field of the given crashdump. - * - * @return value of the field - */ - public Map getOtherConfig(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "crashdump.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 crashdump. - * - * @param otherConfig New value to set - */ - public void setOtherConfig(Connection c, Map otherConfig) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "crashdump.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 crashdump. - * - * @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 = "crashdump.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 crashdump. 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 = "crashdump.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; - } - - /** - * Destroy the specified crashdump - * - * @return Task - */ - public Task destroyAsync(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "Async.crashdump.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); - } - - /** - * Destroy the specified crashdump - * - */ - public void destroy(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "crashdump.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 crashdumps known to the system. - * - * @return references to all objects - */ - public static Set getAll(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "crashdump.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.toSetOfCrashdump(result); - } - - /** - * Return a map of crashdump references to crashdump records for all crashdumps known to the system. - * - * @return records of all objects - */ - public static Map getAllRecords(Connection c) throws - BadServerResponse, - XenAPIException, - XmlRpcException { - String method_call = "crashdump.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.toMapOfCrashdumpCrashdumpRecord(result); - } - -}