You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ke...@apache.org on 2012/08/24 23:26:36 UTC

[13/38] m2e doesn't like it when the project root is the source folder

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/c6a9e1b3/deps/XenServerJava/com/xensource/xenapi/Types.java
----------------------------------------------------------------------
diff --git a/deps/XenServerJava/com/xensource/xenapi/Types.java b/deps/XenServerJava/com/xensource/xenapi/Types.java
deleted file mode 100644
index 2e9f699..0000000
--- a/deps/XenServerJava/com/xensource/xenapi/Types.java
+++ /dev/null
@@ -1,11056 +0,0 @@
-// Copyright 2012 Citrix Systems, Inc. Licensed under the
-// Apache License, Version 2.0 (the "License"); you may not use this
-// file except in compliance with the License.  Citrix Systems, Inc.
-// reserves all rights not expressly granted by the License.
-// You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-// 
-// Automatically generated by addcopyright.py at 04/03/2012
-package com.xensource.xenapi;
-
-import java.util.Date;
-import java.util.Map;
-import java.util.HashMap;
-import java.util.Set;
-import java.util.LinkedHashSet;
-import java.io.IOException;
-
-import java.util.regex.Pattern;
-import java.util.regex.Matcher;
-
-import org.apache.xmlrpc.XmlRpcException;
-
-/**
- * This class holds vital marshalling functions, enum types and exceptions.
- * 
- * @author Citrix Systems, Inc.
- */
-public class Types
-{
-    /**
-     * Interface for all Record classes
-     */
-    public static interface Record
-    {
-        /**
-         * Convert a Record to a Map
-         */
-        Map<String, Object> toMap();
-    }
-
-    /**
-     * Helper method.
-     */
-    private static String[] ObjectArrayToStringArray(Object[] objArray)
-    {
-        String[] result = new String[objArray.length];
-        for (int i = 0; i < objArray.length; i++)
-        {
-            result[i] = (String) objArray[i];
-        }
-        return result;
-    }
-
-    /**
-     * Base class for all XenAPI Exceptions
-     */
-    public static class XenAPIException extends IOException {
-        public final String shortDescription;
-        public final String[] errorDescription;
-
-        XenAPIException(String shortDescription)
-        {
-            this.shortDescription = shortDescription;
-            this.errorDescription = null;
-        }
-
-        XenAPIException(String[] errorDescription)
-        {
-            this.errorDescription = errorDescription;
-
-            if (errorDescription.length > 0)
-            {
-                shortDescription = errorDescription[0];
-            } else
-            {
-                shortDescription = "";
-            }
-        }
-
-        public String toString()
-        {
-            if (errorDescription == null)
-            {
-                return shortDescription;
-            } else if (errorDescription.length == 0)
-            {
-                return "";
-            }
-            StringBuilder sb = new StringBuilder();
-            for (int i = 0; i < errorDescription.length - 1; i++)
-            {
-                sb.append(errorDescription[i]);
-            }
-            sb.append(errorDescription[errorDescription.length - 1]);
-
-            return sb.toString();
-        }
-    }
-    /**
-     * Thrown if the response from the server contains an invalid status.
-     */
-    public static class BadServerResponse extends XenAPIException
-    {
-        public BadServerResponse(Map response)
-        {
-            super(ObjectArrayToStringArray((Object[]) response.get("ErrorDescription")));
-        }
-    }
-
-    public static class BadAsyncResult extends XenAPIException
-    {
-        public final String result;
-
-        public BadAsyncResult(String result)
-        {
-            super(result);
-            this.result = result;
-        }
-    }
-
-    /*
-     * A call has been made which should not be made against this version of host.
-     * Probably the host is out of date and cannot handle this call, or is
-     * unable to comply with the details of the call. For instance SR.create
-     * on Miami (4.1) hosts takes an smConfig parameter, which must be an empty map 
-     * when making this call on Rio (4.0) hosts.
-     */
-    public static class VersionException extends XenAPIException
-    {
-        public final String result;
-
-        public VersionException(String result)
-        {
-            super(result);
-            this.result = result;
-        }
-    }
-
-    private static String parseResult(String result) throws BadAsyncResult
-    {
-        Pattern pattern = Pattern.compile("<value>(.*)</value>");
-        Matcher matcher = pattern.matcher(result);
-        matcher.find();
-
-        if (matcher.groupCount() != 1)
-        {
-            throw new Types.BadAsyncResult("Can't interpret: " + result);
-        }
-
-        return matcher.group(1);
-    }
-      /**
-     * Checks the provided server response was successful. If the call failed, throws a XenAPIException. If the server
-     * returned an invalid response, throws a BadServerResponse. Otherwise, returns the server response as passed in.
-     */
-    static Map checkResponse(Map response) throws XenAPIException, BadServerResponse
-    {
-        if (response.get("Status").equals("Success"))
-        {
-            return response;
-        }
-
-        if (response.get("Status").equals("Failure"))
-        {
-            String[] ErrorDescription = ObjectArrayToStringArray((Object[]) response.get("ErrorDescription"));
-
-            if (ErrorDescription[0].equals("RESTORE_TARGET_MISSING_DEVICE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.RestoreTargetMissingDevice(p1);
-            }
-            if (ErrorDescription[0].equals("WLB_TIMEOUT"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.WlbTimeout(p1);
-            }
-            if (ErrorDescription[0].equals("MAC_DOES_NOT_EXIST"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.MacDoesNotExist(p1);
-            }
-            if (ErrorDescription[0].equals("HANDLE_INVALID"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.HandleInvalid(p1, p2);
-            }
-            if (ErrorDescription[0].equals("DEVICE_ALREADY_ATTACHED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.DeviceAlreadyAttached(p1);
-            }
-            if (ErrorDescription[0].equals("INVALID_IP_ADDRESS_SPECIFIED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.InvalidIpAddressSpecified(p1);
-            }
-            if (ErrorDescription[0].equals("SR_NOT_EMPTY"))
-            {
-                throw new Types.SrNotEmpty();
-            }
-            if (ErrorDescription[0].equals("VM_HVM_REQUIRED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmHvmRequired(p1);
-            }
-            if (ErrorDescription[0].equals("PIF_TUNNEL_STILL_EXISTS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.PifTunnelStillExists(p1);
-            }
-            if (ErrorDescription[0].equals("PIF_BOND_NEEDS_MORE_MEMBERS"))
-            {
-                throw new Types.PifBondNeedsMoreMembers();
-            }
-            if (ErrorDescription[0].equals("PIF_ALREADY_BONDED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.PifAlreadyBonded(p1);
-            }
-            if (ErrorDescription[0].equals("VLAN_TAG_INVALID"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VlanTagInvalid(p1);
-            }
-            if (ErrorDescription[0].equals("HOST_IS_SLAVE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.HostIsSlave(p1);
-            }
-            if (ErrorDescription[0].equals("SR_HAS_MULTIPLE_PBDS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.SrHasMultiplePbds(p1);
-            }
-            if (ErrorDescription[0].equals("POOL_AUTH_ENABLE_FAILED_INVALID_OU"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.PoolAuthEnableFailedInvalidOu(p1, p2);
-            }
-            if (ErrorDescription[0].equals("IMPORT_ERROR_SOME_CHECKSUMS_FAILED"))
-            {
-                throw new Types.ImportErrorSomeChecksumsFailed();
-            }
-            if (ErrorDescription[0].equals("OPENVSWITCH_NOT_ACTIVE"))
-            {
-                throw new Types.OpenvswitchNotActive();
-            }
-            if (ErrorDescription[0].equals("CANNOT_FIND_OEM_BACKUP_PARTITION"))
-            {
-                throw new Types.CannotFindOemBackupPartition();
-            }
-            if (ErrorDescription[0].equals("PIF_DEVICE_NOT_FOUND"))
-            {
-                throw new Types.PifDeviceNotFound();
-            }
-            if (ErrorDescription[0].equals("DOMAIN_BUILDER_ERROR"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                throw new Types.DomainBuilderError(p1, p2, p3);
-            }
-            if (ErrorDescription[0].equals("PATCH_PRECHECK_FAILED_VM_RUNNING"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.PatchPrecheckFailedVmRunning(p1);
-            }
-            if (ErrorDescription[0].equals("HA_HOST_CANNOT_SEE_PEERS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                throw new Types.HaHostCannotSeePeers(p1, p2, p3);
-            }
-            if (ErrorDescription[0].equals("POOL_AUTH_DISABLE_FAILED_PERMISSION_DENIED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.PoolAuthDisableFailedPermissionDenied(p1, p2);
-            }
-            if (ErrorDescription[0].equals("PERMISSION_DENIED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.PermissionDenied(p1);
-            }
-            if (ErrorDescription[0].equals("SSL_VERIFY_ERROR"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.SslVerifyError(p1);
-            }
-            if (ErrorDescription[0].equals("SR_ATTACH_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.SrAttachFailed(p1);
-            }
-            if (ErrorDescription[0].equals("SUBJECT_ALREADY_EXISTS"))
-            {
-                throw new Types.SubjectAlreadyExists();
-            }
-            if (ErrorDescription[0].equals("HA_LOST_STATEFILE"))
-            {
-                throw new Types.HaLostStatefile();
-            }
-            if (ErrorDescription[0].equals("HA_NOT_ENABLED"))
-            {
-                throw new Types.HaNotEnabled();
-            }
-            if (ErrorDescription[0].equals("HA_HEARTBEAT_DAEMON_STARTUP_FAILED"))
-            {
-                throw new Types.HaHeartbeatDaemonStartupFailed();
-            }
-            if (ErrorDescription[0].equals("SESSION_NOT_REGISTERED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.SessionNotRegistered(p1);
-            }
-            if (ErrorDescription[0].equals("VM_NO_SUSPEND_SR"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmNoSuspendSr(p1);
-            }
-            if (ErrorDescription[0].equals("PATCH_APPLY_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.PatchApplyFailed(p1);
-            }
-            if (ErrorDescription[0].equals("VDI_READONLY"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VdiReadonly(p1);
-            }
-            if (ErrorDescription[0].equals("SR_FULL"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.SrFull(p1, p2);
-            }
-            if (ErrorDescription[0].equals("VDI_NOT_AVAILABLE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VdiNotAvailable(p1);
-            }
-            if (ErrorDescription[0].equals("XMLRPC_UNMARSHAL_FAILURE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.XmlrpcUnmarshalFailure(p1, p2);
-            }
-            if (ErrorDescription[0].equals("CRL_ALREADY_EXISTS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.CrlAlreadyExists(p1);
-            }
-            if (ErrorDescription[0].equals("HOST_MASTER_CANNOT_TALK_BACK"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.HostMasterCannotTalkBack(p1);
-            }
-            if (ErrorDescription[0].equals("XAPI_HOOK_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                String p4 = ErrorDescription.length > 4 ? ErrorDescription[4] : "";
-                throw new Types.XapiHookFailed(p1, p2, p3, p4);
-            }
-            if (ErrorDescription[0].equals("IMPORT_INCOMPATIBLE_VERSION"))
-            {
-                throw new Types.ImportIncompatibleVersion();
-            }
-            if (ErrorDescription[0].equals("UNKNOWN_BOOTLOADER"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.UnknownBootloader(p1, p2);
-            }
-            if (ErrorDescription[0].equals("XEN_VSS_REQ_ERROR_PROV_NOT_LOADED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.XenVssReqErrorProvNotLoaded(p1, p2);
-            }
-            if (ErrorDescription[0].equals("SR_VDI_LOCKING_FAILED"))
-            {
-                throw new Types.SrVdiLockingFailed();
-            }
-            if (ErrorDescription[0].equals("PIF_IS_PHYSICAL"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.PifIsPhysical(p1);
-            }
-            if (ErrorDescription[0].equals("MAP_DUPLICATE_KEY"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                String p4 = ErrorDescription.length > 4 ? ErrorDescription[4] : "";
-                throw new Types.MapDuplicateKey(p1, p2, p3, p4);
-            }
-            if (ErrorDescription[0].equals("MISSING_CONNECTION_DETAILS"))
-            {
-                throw new Types.MissingConnectionDetails();
-            }
-            if (ErrorDescription[0].equals("XEN_VSS_REQ_ERROR_CREATING_SNAPSHOT_XML_STRING"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.XenVssReqErrorCreatingSnapshotXmlString(p1, p2);
-            }
-            if (ErrorDescription[0].equals("BOOTLOADER_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.BootloaderFailed(p1, p2);
-            }
-            if (ErrorDescription[0].equals("WLB_XENSERVER_MALFORMED_RESPONSE"))
-            {
-                throw new Types.WlbXenserverMalformedResponse();
-            }
-            if (ErrorDescription[0].equals("POOL_AUTH_ENABLE_FAILED_DUPLICATE_HOSTNAME"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.PoolAuthEnableFailedDuplicateHostname(p1, p2);
-            }
-            if (ErrorDescription[0].equals("SYSTEM_STATUS_RETRIEVAL_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.SystemStatusRetrievalFailed(p1);
-            }
-            if (ErrorDescription[0].equals("VDI_IN_USE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.VdiInUse(p1, p2);
-            }
-            if (ErrorDescription[0].equals("HOST_NOT_LIVE"))
-            {
-                throw new Types.HostNotLive();
-            }
-            if (ErrorDescription[0].equals("CERTIFICATE_ALREADY_EXISTS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.CertificateAlreadyExists(p1);
-            }
-            if (ErrorDescription[0].equals("SR_HAS_NO_PBDS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.SrHasNoPbds(p1);
-            }
-            if (ErrorDescription[0].equals("INVALID_PATCH"))
-            {
-                throw new Types.InvalidPatch();
-            }
-            if (ErrorDescription[0].equals("SR_INDESTRUCTIBLE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.SrIndestructible(p1);
-            }
-            if (ErrorDescription[0].equals("HA_ABORT_NEW_MASTER"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.HaAbortNewMaster(p1);
-            }
-            if (ErrorDescription[0].equals("WLB_MALFORMED_RESPONSE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                throw new Types.WlbMalformedResponse(p1, p2, p3);
-            }
-            if (ErrorDescription[0].equals("POOL_JOINING_HOST_MUST_HAVE_PHYSICAL_MANAGEMENT_NIC"))
-            {
-                throw new Types.PoolJoiningHostMustHavePhysicalManagementNic();
-            }
-            if (ErrorDescription[0].equals("WLB_XENSERVER_AUTHENTICATION_FAILED"))
-            {
-                throw new Types.WlbXenserverAuthenticationFailed();
-            }
-            if (ErrorDescription[0].equals("CANNOT_RESET_CONTROL_DOMAIN"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.CannotResetControlDomain(p1);
-            }
-            if (ErrorDescription[0].equals("PATCH_PRECHECK_FAILED_UNKNOWN_ERROR"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.PatchPrecheckFailedUnknownError(p1, p2);
-            }
-            if (ErrorDescription[0].equals("HOST_CANNOT_ATTACH_NETWORK"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.HostCannotAttachNetwork(p1, p2);
-            }
-            if (ErrorDescription[0].equals("WLB_URL_INVALID"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.WlbUrlInvalid(p1);
-            }
-            if (ErrorDescription[0].equals("DUPLICATE_VM"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.DuplicateVm(p1);
-            }
-            if (ErrorDescription[0].equals("HOST_CANNOT_DESTROY_SELF"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.HostCannotDestroySelf(p1);
-            }
-            if (ErrorDescription[0].equals("HOST_BROKEN"))
-            {
-                throw new Types.HostBroken();
-            }
-            if (ErrorDescription[0].equals("VM_CHECKPOINT_RESUME_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmCheckpointResumeFailed(p1);
-            }
-            if (ErrorDescription[0].equals("VM_TOO_MANY_VCPUS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmTooManyVcpus(p1);
-            }
-            if (ErrorDescription[0].equals("HOST_IS_LIVE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.HostIsLive(p1);
-            }
-            if (ErrorDescription[0].equals("IMPORT_ERROR_ATTACHED_DISKS_NOT_FOUND"))
-            {
-                throw new Types.ImportErrorAttachedDisksNotFound();
-            }
-            if (ErrorDescription[0].equals("VBD_NOT_UNPLUGGABLE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VbdNotUnpluggable(p1);
-            }
-            if (ErrorDescription[0].equals("XEN_VSS_REQ_ERROR_CREATING_SNAPSHOT"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.XenVssReqErrorCreatingSnapshot(p1, p2);
-            }
-            if (ErrorDescription[0].equals("CANNOT_ENABLE_REDO_LOG"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.CannotEnableRedoLog(p1);
-            }
-            if (ErrorDescription[0].equals("CANNOT_EVACUATE_HOST"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.CannotEvacuateHost(p1);
-            }
-            if (ErrorDescription[0].equals("NO_HOSTS_AVAILABLE"))
-            {
-                throw new Types.NoHostsAvailable();
-            }
-            if (ErrorDescription[0].equals("DEVICE_ATTACH_TIMEOUT"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.DeviceAttachTimeout(p1, p2);
-            }
-            if (ErrorDescription[0].equals("INVALID_DEVICE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.InvalidDevice(p1);
-            }
-            if (ErrorDescription[0].equals("PBD_EXISTS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                throw new Types.PbdExists(p1, p2, p3);
-            }
-            if (ErrorDescription[0].equals("WLB_XENSERVER_CONNECTION_REFUSED"))
-            {
-                throw new Types.WlbXenserverConnectionRefused();
-            }
-            if (ErrorDescription[0].equals("HOST_CANNOT_READ_METRICS"))
-            {
-                throw new Types.HostCannotReadMetrics();
-            }
-            if (ErrorDescription[0].equals("POOL_AUTH_ENABLE_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.PoolAuthEnableFailed(p1, p2);
-            }
-            if (ErrorDescription[0].equals("VM_SNAPSHOT_WITH_QUIESCE_NOT_SUPPORTED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.VmSnapshotWithQuiesceNotSupported(p1, p2);
-            }
-            if (ErrorDescription[0].equals("LICENSE_DOES_NOT_SUPPORT_POOLING"))
-            {
-                throw new Types.LicenseDoesNotSupportPooling();
-            }
-            if (ErrorDescription[0].equals("HOST_UNKNOWN_TO_MASTER"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.HostUnknownToMaster(p1);
-            }
-            if (ErrorDescription[0].equals("WLB_CONNECTION_REFUSED"))
-            {
-                throw new Types.WlbConnectionRefused();
-            }
-            if (ErrorDescription[0].equals("VM_SNAPSHOT_WITH_QUIESCE_PLUGIN_DEOS_NOT_RESPOND"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmSnapshotWithQuiescePluginDeosNotRespond(p1);
-            }
-            if (ErrorDescription[0].equals("VM_REQUIRES_SR"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.VmRequiresSr(p1, p2);
-            }
-            if (ErrorDescription[0].equals("VM_NO_CRASHDUMP_SR"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmNoCrashdumpSr(p1);
-            }
-            if (ErrorDescription[0].equals("HA_NOT_INSTALLED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.HaNotInstalled(p1);
-            }
-            if (ErrorDescription[0].equals("DUPLICATE_PIF_DEVICE_NAME"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.DuplicatePifDeviceName(p1);
-            }
-            if (ErrorDescription[0].equals("VM_BAD_POWER_STATE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                throw new Types.VmBadPowerState(p1, p2, p3);
-            }
-            if (ErrorDescription[0].equals("WLB_DISABLED"))
-            {
-                throw new Types.WlbDisabled();
-            }
-            if (ErrorDescription[0].equals("POOL_JOINING_EXTERNAL_AUTH_MISMATCH"))
-            {
-                throw new Types.PoolJoiningExternalAuthMismatch();
-            }
-            if (ErrorDescription[0].equals("VM_BIOS_STRINGS_ALREADY_SET"))
-            {
-                throw new Types.VmBiosStringsAlreadySet();
-            }
-            if (ErrorDescription[0].equals("WLB_XENSERVER_UNKNOWN_HOST"))
-            {
-                throw new Types.WlbXenserverUnknownHost();
-            }
-            if (ErrorDescription[0].equals("HA_HOST_CANNOT_ACCESS_STATEFILE"))
-            {
-                throw new Types.HaHostCannotAccessStatefile();
-            }
-            if (ErrorDescription[0].equals("VM_FAILED_SHUTDOWN_ACKNOWLEDGMENT"))
-            {
-                throw new Types.VmFailedShutdownAcknowledgment();
-            }
-            if (ErrorDescription[0].equals("AUTH_SERVICE_ERROR"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.AuthServiceError(p1);
-            }
-            if (ErrorDescription[0].equals("HOST_IN_EMERGENCY_MODE"))
-            {
-                throw new Types.HostInEmergencyMode();
-            }
-            if (ErrorDescription[0].equals("HOST_DISABLED_UNTIL_REBOOT"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.HostDisabledUntilReboot(p1);
-            }
-            if (ErrorDescription[0].equals("DEFAULT_SR_NOT_FOUND"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.DefaultSrNotFound(p1);
-            }
-            if (ErrorDescription[0].equals("DEVICE_ALREADY_EXISTS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.DeviceAlreadyExists(p1);
-            }
-            if (ErrorDescription[0].equals("SR_NOT_SHARABLE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.SrNotSharable(p1, p2);
-            }
-            if (ErrorDescription[0].equals("AUTH_DISABLE_FAILED_PERMISSION_DENIED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.AuthDisableFailedPermissionDenied(p1);
-            }
-            if (ErrorDescription[0].equals("LICENSE_CANNOT_DOWNGRADE_WHILE_IN_POOL"))
-            {
-                throw new Types.LicenseCannotDowngradeWhileInPool();
-            }
-            if (ErrorDescription[0].equals("RBAC_PERMISSION_DENIED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.RbacPermissionDenied(p1, p2);
-            }
-            if (ErrorDescription[0].equals("TOO_MANY_PENDING_TASKS"))
-            {
-                throw new Types.TooManyPendingTasks();
-            }
-            if (ErrorDescription[0].equals("VM_SNAPSHOT_WITH_QUIESCE_TIMEOUT"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmSnapshotWithQuiesceTimeout(p1);
-            }
-            if (ErrorDescription[0].equals("PATCH_ALREADY_APPLIED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.PatchAlreadyApplied(p1);
-            }
-            if (ErrorDescription[0].equals("SR_UUID_EXISTS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.SrUuidExists(p1);
-            }
-            if (ErrorDescription[0].equals("AUTH_ENABLE_FAILED_DOMAIN_LOOKUP_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.AuthEnableFailedDomainLookupFailed(p1);
-            }
-            if (ErrorDescription[0].equals("INVALID_FEATURE_STRING"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.InvalidFeatureString(p1);
-            }
-            if (ErrorDescription[0].equals("WLB_NOT_INITIALIZED"))
-            {
-                throw new Types.WlbNotInitialized();
-            }
-            if (ErrorDescription[0].equals("OPERATION_BLOCKED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.OperationBlocked(p1, p2);
-            }
-            if (ErrorDescription[0].equals("PROVISION_ONLY_ALLOWED_ON_TEMPLATE"))
-            {
-                throw new Types.ProvisionOnlyAllowedOnTemplate();
-            }
-            if (ErrorDescription[0].equals("VM_SHUTDOWN_TIMEOUT"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.VmShutdownTimeout(p1, p2);
-            }
-            if (ErrorDescription[0].equals("NETWORK_CONTAINS_PIF"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.NetworkContainsPif(p1);
-            }
-            if (ErrorDescription[0].equals("ROLE_ALREADY_EXISTS"))
-            {
-                throw new Types.RoleAlreadyExists();
-            }
-            if (ErrorDescription[0].equals("JOINING_HOST_SERVICE_FAILED"))
-            {
-                throw new Types.JoiningHostServiceFailed();
-            }
-            if (ErrorDescription[0].equals("VDI_MISSING"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.VdiMissing(p1, p2);
-            }
-            if (ErrorDescription[0].equals("VBD_TRAY_LOCKED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VbdTrayLocked(p1);
-            }
-            if (ErrorDescription[0].equals("POOL_AUTH_ENABLE_FAILED_PERMISSION_DENIED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.PoolAuthEnableFailedPermissionDenied(p1, p2);
-            }
-            if (ErrorDescription[0].equals("UUID_INVALID"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.UuidInvalid(p1, p2);
-            }
-            if (ErrorDescription[0].equals("LICENCE_RESTRICTION"))
-            {
-                throw new Types.LicenceRestriction();
-            }
-            if (ErrorDescription[0].equals("VIF_IN_USE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.VifInUse(p1, p2);
-            }
-            if (ErrorDescription[0].equals("ONLY_ALLOWED_ON_OEM_EDITION"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.OnlyAllowedOnOemEdition(p1);
-            }
-            if (ErrorDescription[0].equals("VDI_IS_A_PHYSICAL_DEVICE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VdiIsAPhysicalDevice(p1);
-            }
-            if (ErrorDescription[0].equals("LICENSE_PROCESSING_ERROR"))
-            {
-                throw new Types.LicenseProcessingError();
-            }
-            if (ErrorDescription[0].equals("CRL_DOES_NOT_EXIST"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.CrlDoesNotExist(p1);
-            }
-            if (ErrorDescription[0].equals("TASK_CANCELLED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.TaskCancelled(p1);
-            }
-            if (ErrorDescription[0].equals("VM_CRASHED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmCrashed(p1);
-            }
-            if (ErrorDescription[0].equals("POOL_AUTH_ENABLE_FAILED_DOMAIN_LOOKUP_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.PoolAuthEnableFailedDomainLookupFailed(p1, p2);
-            }
-            if (ErrorDescription[0].equals("HA_SHOULD_BE_FENCED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.HaShouldBeFenced(p1);
-            }
-            if (ErrorDescription[0].equals("VM_UNSAFE_BOOT"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmUnsafeBoot(p1);
-            }
-            if (ErrorDescription[0].equals("PIF_HAS_NO_NETWORK_CONFIGURATION"))
-            {
-                throw new Types.PifHasNoNetworkConfiguration();
-            }
-            if (ErrorDescription[0].equals("TOO_BUSY"))
-            {
-                throw new Types.TooBusy();
-            }
-            if (ErrorDescription[0].equals("VALUE_NOT_SUPPORTED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                throw new Types.ValueNotSupported(p1, p2, p3);
-            }
-            if (ErrorDescription[0].equals("SESSION_INVALID"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.SessionInvalid(p1);
-            }
-            if (ErrorDescription[0].equals("HA_CONSTRAINT_VIOLATION_NETWORK_NOT_SHARED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.HaConstraintViolationNetworkNotShared(p1);
-            }
-            if (ErrorDescription[0].equals("HA_FAILED_TO_FORM_LIVESET"))
-            {
-                throw new Types.HaFailedToFormLiveset();
-            }
-            if (ErrorDescription[0].equals("PIF_CANNOT_BOND_CROSS_HOST"))
-            {
-                throw new Types.PifCannotBondCrossHost();
-            }
-            if (ErrorDescription[0].equals("SR_REQUIRES_UPGRADE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.SrRequiresUpgrade(p1);
-            }
-            if (ErrorDescription[0].equals("CERTIFICATE_DOES_NOT_EXIST"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.CertificateDoesNotExist(p1);
-            }
-            if (ErrorDescription[0].equals("HA_OPERATION_WOULD_BREAK_FAILOVER_PLAN"))
-            {
-                throw new Types.HaOperationWouldBreakFailoverPlan();
-            }
-            if (ErrorDescription[0].equals("CANNOT_FETCH_PATCH"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.CannotFetchPatch(p1);
-            }
-            if (ErrorDescription[0].equals("CANNOT_FIND_PATCH"))
-            {
-                throw new Types.CannotFindPatch();
-            }
-            if (ErrorDescription[0].equals("DB_UNIQUENESS_CONSTRAINT_VIOLATION"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                throw new Types.DbUniquenessConstraintViolation(p1, p2, p3);
-            }
-            if (ErrorDescription[0].equals("VM_REQUIRES_NETWORK"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.VmRequiresNetwork(p1, p2);
-            }
-            if (ErrorDescription[0].equals("VBD_NOT_EMPTY"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VbdNotEmpty(p1);
-            }
-            if (ErrorDescription[0].equals("HOST_NOT_ENOUGH_FREE_MEMORY"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.HostNotEnoughFreeMemory(p1, p2);
-            }
-            if (ErrorDescription[0].equals("VM_MIGRATE_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                String p4 = ErrorDescription.length > 4 ? ErrorDescription[4] : "";
-                throw new Types.VmMigrateFailed(p1, p2, p3, p4);
-            }
-            if (ErrorDescription[0].equals("SR_OPERATION_NOT_SUPPORTED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.SrOperationNotSupported(p1);
-            }
-            if (ErrorDescription[0].equals("DEVICE_NOT_ATTACHED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.DeviceNotAttached(p1);
-            }
-            if (ErrorDescription[0].equals("HOST_DISABLED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.HostDisabled(p1);
-            }
-            if (ErrorDescription[0].equals("SYSTEM_STATUS_MUST_USE_TAR_ON_OEM"))
-            {
-                throw new Types.SystemStatusMustUseTarOnOem();
-            }
-            if (ErrorDescription[0].equals("XEN_VSS_REQ_ERROR_PREPARING_WRITERS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.XenVssReqErrorPreparingWriters(p1, p2);
-            }
-            if (ErrorDescription[0].equals("AUTH_ENABLE_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.AuthEnableFailed(p1);
-            }
-            if (ErrorDescription[0].equals("JOINING_HOST_CANNOT_CONTAIN_SHARED_SRS"))
-            {
-                throw new Types.JoiningHostCannotContainSharedSrs();
-            }
-            if (ErrorDescription[0].equals("VM_NO_VCPUS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmNoVcpus(p1);
-            }
-            if (ErrorDescription[0].equals("INVALID_PATCH_WITH_LOG"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.InvalidPatchWithLog(p1);
-            }
-            if (ErrorDescription[0].equals("SR_DEVICE_IN_USE"))
-            {
-                throw new Types.SrDeviceInUse();
-            }
-            if (ErrorDescription[0].equals("HOST_CD_DRIVE_EMPTY"))
-            {
-                throw new Types.HostCdDriveEmpty();
-            }
-            if (ErrorDescription[0].equals("HA_HOST_IS_ARMED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.HaHostIsArmed(p1);
-            }
-            if (ErrorDescription[0].equals("LICENSE_EXPIRED"))
-            {
-                throw new Types.LicenseExpired();
-            }
-            if (ErrorDescription[0].equals("SESSION_AUTHENTICATION_FAILED"))
-            {
-                throw new Types.SessionAuthenticationFailed();
-            }
-            if (ErrorDescription[0].equals("PIF_IS_VLAN"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.PifIsVlan(p1);
-            }
-            if (ErrorDescription[0].equals("VMPP_ARCHIVE_MORE_FREQUENT_THAN_BACKUP"))
-            {
-                throw new Types.VmppArchiveMoreFrequentThanBackup();
-            }
-            if (ErrorDescription[0].equals("JOINING_HOST_CANNOT_BE_MASTER_OF_OTHER_HOSTS"))
-            {
-                throw new Types.JoiningHostCannotBeMasterOfOtherHosts();
-            }
-            if (ErrorDescription[0].equals("HOST_HAS_RESIDENT_VMS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.HostHasResidentVms(p1);
-            }
-            if (ErrorDescription[0].equals("VM_CHECKPOINT_SUSPEND_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmCheckpointSuspendFailed(p1);
-            }
-            if (ErrorDescription[0].equals("PIF_IS_MANAGEMENT_INTERFACE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.PifIsManagementInterface(p1);
-            }
-            if (ErrorDescription[0].equals("MAC_INVALID"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.MacInvalid(p1);
-            }
-            if (ErrorDescription[0].equals("XEN_VSS_REQ_ERROR_START_SNAPSHOT_SET_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.XenVssReqErrorStartSnapshotSetFailed(p1, p2);
-            }
-            if (ErrorDescription[0].equals("VBD_IS_EMPTY"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VbdIsEmpty(p1);
-            }
-            if (ErrorDescription[0].equals("PATCH_PRECHECK_FAILED_WRONG_SERVER_VERSION"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                throw new Types.PatchPrecheckFailedWrongServerVersion(p1, p2, p3);
-            }
-            if (ErrorDescription[0].equals("CANNOT_FIND_STATE_PARTITION"))
-            {
-                throw new Types.CannotFindStatePartition();
-            }
-            if (ErrorDescription[0].equals("AUTH_UNKNOWN_TYPE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.AuthUnknownType(p1);
-            }
-            if (ErrorDescription[0].equals("WLB_AUTHENTICATION_FAILED"))
-            {
-                throw new Types.WlbAuthenticationFailed();
-            }
-            if (ErrorDescription[0].equals("NOT_IN_EMERGENCY_MODE"))
-            {
-                throw new Types.NotInEmergencyMode();
-            }
-            if (ErrorDescription[0].equals("AUTH_DISABLE_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.AuthDisableFailed(p1);
-            }
-            if (ErrorDescription[0].equals("NETWORK_ALREADY_CONNECTED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.NetworkAlreadyConnected(p1, p2);
-            }
-            if (ErrorDescription[0].equals("VDI_INCOMPATIBLE_TYPE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.VdiIncompatibleType(p1, p2);
-            }
-            if (ErrorDescription[0].equals("WLB_UNKNOWN_HOST"))
-            {
-                throw new Types.WlbUnknownHost();
-            }
-            if (ErrorDescription[0].equals("IMPORT_ERROR"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.ImportError(p1);
-            }
-            if (ErrorDescription[0].equals("SR_UNKNOWN_DRIVER"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.SrUnknownDriver(p1);
-            }
-            if (ErrorDescription[0].equals("AUTH_DISABLE_FAILED_WRONG_CREDENTIALS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.AuthDisableFailedWrongCredentials(p1);
-            }
-            if (ErrorDescription[0].equals("VM_HALTED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmHalted(p1);
-            }
-            if (ErrorDescription[0].equals("FEATURE_RESTRICTED"))
-            {
-                throw new Types.FeatureRestricted();
-            }
-            if (ErrorDescription[0].equals("CRL_NAME_INVALID"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.CrlNameInvalid(p1);
-            }
-            if (ErrorDescription[0].equals("HOST_POWER_ON_MODE_DISABLED"))
-            {
-                throw new Types.HostPowerOnModeDisabled();
-            }
-            if (ErrorDescription[0].equals("ACTIVATION_WHILE_NOT_FREE"))
-            {
-                throw new Types.ActivationWhileNotFree();
-            }
-            if (ErrorDescription[0].equals("XENAPI_PLUGIN_FAILURE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                throw new Types.XenapiPluginFailure(p1, p2, p3);
-            }
-            if (ErrorDescription[0].equals("MAC_STILL_EXISTS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.MacStillExists(p1);
-            }
-            if (ErrorDescription[0].equals("HOST_IN_USE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                throw new Types.HostInUse(p1, p2, p3);
-            }
-            if (ErrorDescription[0].equals("HA_TOO_FEW_HOSTS"))
-            {
-                throw new Types.HaTooFewHosts();
-            }
-            if (ErrorDescription[0].equals("WLB_CONNECTION_RESET"))
-            {
-                throw new Types.WlbConnectionReset();
-            }
-            if (ErrorDescription[0].equals("POOL_AUTH_ENABLE_FAILED_WRONG_CREDENTIALS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.PoolAuthEnableFailedWrongCredentials(p1, p2);
-            }
-            if (ErrorDescription[0].equals("PATCH_IS_APPLIED"))
-            {
-                throw new Types.PatchIsApplied();
-            }
-            if (ErrorDescription[0].equals("SR_HAS_PBD"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.SrHasPbd(p1);
-            }
-            if (ErrorDescription[0].equals("HOST_STILL_BOOTING"))
-            {
-                throw new Types.HostStillBooting();
-            }
-            if (ErrorDescription[0].equals("WLB_MALFORMED_REQUEST"))
-            {
-                throw new Types.WlbMalformedRequest();
-            }
-            if (ErrorDescription[0].equals("OBJECT_NOLONGER_EXISTS"))
-            {
-                throw new Types.ObjectNolongerExists();
-            }
-            if (ErrorDescription[0].equals("HOSTS_NOT_HOMOGENEOUS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.HostsNotHomogeneous(p1);
-            }
-            if (ErrorDescription[0].equals("POOL_JOINING_HOST_MUST_HAVE_SAME_PRODUCT_VERSION"))
-            {
-                throw new Types.PoolJoiningHostMustHaveSameProductVersion();
-            }
-            if (ErrorDescription[0].equals("PIF_VLAN_EXISTS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.PifVlanExists(p1);
-            }
-            if (ErrorDescription[0].equals("LICENSE_CHECKOUT_ERROR"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.LicenseCheckoutError(p1);
-            }
-            if (ErrorDescription[0].equals("CERTIFICATE_LIBRARY_CORRUPT"))
-            {
-                throw new Types.CertificateLibraryCorrupt();
-            }
-            if (ErrorDescription[0].equals("VDI_NOT_MANAGED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VdiNotManaged(p1);
-            }
-            if (ErrorDescription[0].equals("INVALID_EDITION"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.InvalidEdition(p1);
-            }
-            if (ErrorDescription[0].equals("PATCH_ALREADY_EXISTS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.PatchAlreadyExists(p1);
-            }
-            if (ErrorDescription[0].equals("OUT_OF_SPACE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.OutOfSpace(p1);
-            }
-            if (ErrorDescription[0].equals("IMPORT_ERROR_PREMATURE_EOF"))
-            {
-                throw new Types.ImportErrorPrematureEof();
-            }
-            if (ErrorDescription[0].equals("VM_MEMORY_SIZE_TOO_LOW"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmMemorySizeTooLow(p1);
-            }
-            if (ErrorDescription[0].equals("VMPP_HAS_VM"))
-            {
-                throw new Types.VmppHasVm();
-            }
-            if (ErrorDescription[0].equals("HOST_NOT_DISABLED"))
-            {
-                throw new Types.HostNotDisabled();
-            }
-            if (ErrorDescription[0].equals("FIELD_TYPE_ERROR"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.FieldTypeError(p1);
-            }
-            if (ErrorDescription[0].equals("SLAVE_REQUIRES_MANAGEMENT_INTERFACE"))
-            {
-                throw new Types.SlaveRequiresManagementInterface();
-            }
-            if (ErrorDescription[0].equals("VM_IS_TEMPLATE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmIsTemplate(p1);
-            }
-            if (ErrorDescription[0].equals("VM_IS_PROTECTED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmIsProtected(p1);
-            }
-            if (ErrorDescription[0].equals("JOINING_HOST_CANNOT_HAVE_RUNNING_VMS"))
-            {
-                throw new Types.JoiningHostCannotHaveRunningVms();
-            }
-            if (ErrorDescription[0].equals("VM_REQUIRES_VDI"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.VmRequiresVdi(p1, p2);
-            }
-            if (ErrorDescription[0].equals("VBD_CDS_MUST_BE_READONLY"))
-            {
-                throw new Types.VbdCdsMustBeReadonly();
-            }
-            if (ErrorDescription[0].equals("LICENSE_FILE_DEPRECATED"))
-            {
-                throw new Types.LicenseFileDeprecated();
-            }
-            if (ErrorDescription[0].equals("CANNOT_CREATE_STATE_FILE"))
-            {
-                throw new Types.CannotCreateStateFile();
-            }
-            if (ErrorDescription[0].equals("JOINING_HOST_CANNOT_HAVE_VMS_WITH_CURRENT_OPERATIONS"))
-            {
-                throw new Types.JoiningHostCannotHaveVmsWithCurrentOperations();
-            }
-            if (ErrorDescription[0].equals("MESSAGE_PARAMETER_COUNT_MISMATCH"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                throw new Types.MessageParameterCountMismatch(p1, p2, p3);
-            }
-            if (ErrorDescription[0].equals("POOL_AUTH_ALREADY_ENABLED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.PoolAuthAlreadyEnabled(p1);
-            }
-            if (ErrorDescription[0].equals("RESTORE_INCOMPATIBLE_VERSION"))
-            {
-                throw new Types.RestoreIncompatibleVersion();
-            }
-            if (ErrorDescription[0].equals("DEVICE_DETACH_REJECTED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                throw new Types.DeviceDetachRejected(p1, p2, p3);
-            }
-            if (ErrorDescription[0].equals("AUTH_IS_DISABLED"))
-            {
-                throw new Types.AuthIsDisabled();
-            }
-            if (ErrorDescription[0].equals("JOINING_HOST_CANNOT_HAVE_RUNNING_OR_SUSPENDED_VMS"))
-            {
-                throw new Types.JoiningHostCannotHaveRunningOrSuspendedVms();
-            }
-            if (ErrorDescription[0].equals("PATCH_PRECHECK_FAILED_PREREQUISITE_MISSING"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.PatchPrecheckFailedPrerequisiteMissing(p1, p2);
-            }
-            if (ErrorDescription[0].equals("WLB_XENSERVER_TIMEOUT"))
-            {
-                throw new Types.WlbXenserverTimeout();
-            }
-            if (ErrorDescription[0].equals("VM_SNAPSHOT_WITH_QUIESCE_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmSnapshotWithQuiesceFailed(p1);
-            }
-            if (ErrorDescription[0].equals("POOL_AUTH_DISABLE_FAILED_WRONG_CREDENTIALS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.PoolAuthDisableFailedWrongCredentials(p1, p2);
-            }
-            if (ErrorDescription[0].equals("CERTIFICATE_CORRUPT"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.CertificateCorrupt(p1);
-            }
-            if (ErrorDescription[0].equals("WLB_INTERNAL_ERROR"))
-            {
-                throw new Types.WlbInternalError();
-            }
-            if (ErrorDescription[0].equals("VM_REBOOTED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmRebooted(p1);
-            }
-            if (ErrorDescription[0].equals("CANNOT_CONTACT_HOST"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.CannotContactHost(p1);
-            }
-            if (ErrorDescription[0].equals("XEN_VSS_REQ_ERROR_NO_VOLUMES_SUPPORTED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.XenVssReqErrorNoVolumesSupported(p1, p2);
-            }
-            if (ErrorDescription[0].equals("HOST_ITS_OWN_SLAVE"))
-            {
-                throw new Types.HostItsOwnSlave();
-            }
-            if (ErrorDescription[0].equals("REDO_LOG_IS_ENABLED"))
-            {
-                throw new Types.RedoLogIsEnabled();
-            }
-            if (ErrorDescription[0].equals("VM_MISSING_PV_DRIVERS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmMissingPvDrivers(p1);
-            }
-            if (ErrorDescription[0].equals("CERTIFICATE_NAME_INVALID"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.CertificateNameInvalid(p1);
-            }
-            if (ErrorDescription[0].equals("IMPORT_ERROR_FAILED_TO_FIND_OBJECT"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.ImportErrorFailedToFindObject(p1);
-            }
-            if (ErrorDescription[0].equals("VDI_LOCATION_MISSING"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.VdiLocationMissing(p1, p2);
-            }
-            if (ErrorDescription[0].equals("AUTH_ENABLE_FAILED_PERMISSION_DENIED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.AuthEnableFailedPermissionDenied(p1);
-            }
-            if (ErrorDescription[0].equals("PIF_VLAN_STILL_EXISTS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.PifVlanStillExists(p1);
-            }
-            if (ErrorDescription[0].equals("VMS_FAILED_TO_COOPERATE"))
-            {
-                throw new Types.VmsFailedToCooperate();
-            }
-            if (ErrorDescription[0].equals("NETWORK_CONTAINS_VIF"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.NetworkContainsVif(p1);
-            }
-            if (ErrorDescription[0].equals("INVALID_VALUE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.InvalidValue(p1, p2);
-            }
-            if (ErrorDescription[0].equals("XENAPI_MISSING_PLUGIN"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.XenapiMissingPlugin(p1);
-            }
-            if (ErrorDescription[0].equals("RESTORE_TARGET_MGMT_IF_NOT_IN_BACKUP"))
-            {
-                throw new Types.RestoreTargetMgmtIfNotInBackup();
-            }
-            if (ErrorDescription[0].equals("IS_TUNNEL_ACCESS_PIF"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.IsTunnelAccessPif(p1);
-            }
-            if (ErrorDescription[0].equals("JOINING_HOST_CONNECTION_FAILED"))
-            {
-                throw new Types.JoiningHostConnectionFailed();
-            }
-            if (ErrorDescription[0].equals("XEN_VSS_REQ_ERROR_ADDING_VOLUME_TO_SNAPSET_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.XenVssReqErrorAddingVolumeToSnapsetFailed(p1, p2);
-            }
-            if (ErrorDescription[0].equals("SUBJECT_CANNOT_BE_RESOLVED"))
-            {
-                throw new Types.SubjectCannotBeResolved();
-            }
-            if (ErrorDescription[0].equals("PROVISION_FAILED_OUT_OF_SPACE"))
-            {
-                throw new Types.ProvisionFailedOutOfSpace();
-            }
-            if (ErrorDescription[0].equals("VDI_IS_NOT_ISO"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.VdiIsNotIso(p1, p2);
-            }
-            if (ErrorDescription[0].equals("MESSAGE_METHOD_UNKNOWN"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.MessageMethodUnknown(p1);
-            }
-            if (ErrorDescription[0].equals("VM_CANNOT_DELETE_DEFAULT_TEMPLATE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VmCannotDeleteDefaultTemplate(p1);
-            }
-            if (ErrorDescription[0].equals("ROLE_NOT_FOUND"))
-            {
-                throw new Types.RoleNotFound();
-            }
-            if (ErrorDescription[0].equals("NOT_ALLOWED_ON_OEM_EDITION"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.NotAllowedOnOemEdition(p1);
-            }
-            if (ErrorDescription[0].equals("RESTORE_SCRIPT_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.RestoreScriptFailed(p1);
-            }
-            if (ErrorDescription[0].equals("INTERNAL_ERROR"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.InternalError(p1);
-            }
-            if (ErrorDescription[0].equals("LICENSE_DOES_NOT_SUPPORT_XHA"))
-            {
-                throw new Types.LicenseDoesNotSupportXha();
-            }
-            if (ErrorDescription[0].equals("DEVICE_ALREADY_DETACHED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.DeviceAlreadyDetached(p1);
-            }
-            if (ErrorDescription[0].equals("AUTH_ENABLE_FAILED_UNAVAILABLE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.AuthEnableFailedUnavailable(p1);
-            }
-            if (ErrorDescription[0].equals("VBD_NOT_REMOVABLE_MEDIA"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.VbdNotRemovableMedia(p1);
-            }
-            if (ErrorDescription[0].equals("LOCATION_NOT_UNIQUE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.LocationNotUnique(p1, p2);
-            }
-            if (ErrorDescription[0].equals("NOT_IMPLEMENTED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.NotImplemented(p1);
-            }
-            if (ErrorDescription[0].equals("CANNOT_PLUG_VIF"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.CannotPlugVif(p1);
-            }
-            if (ErrorDescription[0].equals("USER_IS_NOT_LOCAL_SUPERUSER"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.UserIsNotLocalSuperuser(p1);
-            }
-            if (ErrorDescription[0].equals("BACKUP_SCRIPT_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.BackupScriptFailed(p1);
-            }
-            if (ErrorDescription[0].equals("IMPORT_ERROR_UNEXPECTED_FILE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.ImportErrorUnexpectedFile(p1, p2);
-            }
-            if (ErrorDescription[0].equals("AUTH_ALREADY_ENABLED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.AuthAlreadyEnabled(p1, p2);
-            }
-            if (ErrorDescription[0].equals("OPERATION_NOT_ALLOWED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.OperationNotAllowed(p1);
-            }
-            if (ErrorDescription[0].equals("HA_NO_PLAN"))
-            {
-                throw new Types.HaNoPlan();
-            }
-            if (ErrorDescription[0].equals("EVENTS_LOST"))
-            {
-                throw new Types.EventsLost();
-            }
-            if (ErrorDescription[0].equals("SR_BACKEND_FAILURE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                throw new Types.SrBackendFailure(p1, p2, p3);
-            }
-            if (ErrorDescription[0].equals("DEVICE_DETACH_TIMEOUT"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.DeviceDetachTimeout(p1, p2);
-            }
-            if (ErrorDescription[0].equals("VM_DUPLICATE_VBD_DEVICE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                throw new Types.VmDuplicateVbdDevice(p1, p2, p3);
-            }
-            if (ErrorDescription[0].equals("CRL_CORRUPT"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.CrlCorrupt(p1);
-            }
-            if (ErrorDescription[0].equals("VM_OLD_PV_DRIVERS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                String p3 = ErrorDescription.length > 3 ? ErrorDescription[3] : "";
-                throw new Types.VmOldPvDrivers(p1, p2, p3);
-            }
-            if (ErrorDescription[0].equals("PIF_DOES_NOT_ALLOW_UNPLUG"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.PifDoesNotAllowUnplug(p1);
-            }
-            if (ErrorDescription[0].equals("CHANGE_PASSWORD_REJECTED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.ChangePasswordRejected(p1);
-            }
-            if (ErrorDescription[0].equals("OTHER_OPERATION_IN_PROGRESS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.OtherOperationInProgress(p1, p2);
-            }
-            if (ErrorDescription[0].equals("XEN_VSS_REQ_ERROR_INIT_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.XenVssReqErrorInitFailed(p1, p2);
-            }
-            if (ErrorDescription[0].equals("CPU_FEATURE_MASKING_NOT_SUPPORTED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.CpuFeatureMaskingNotSupported(p1);
-            }
-            if (ErrorDescription[0].equals("VM_NOT_RESIDENT_HERE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.VmNotResidentHere(p1, p2);
-            }
-            if (ErrorDescription[0].equals("HOST_OFFLINE"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.HostOffline(p1);
-            }
-            if (ErrorDescription[0].equals("POOL_AUTH_DISABLE_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.PoolAuthDisableFailed(p1, p2);
-            }
-            if (ErrorDescription[0].equals("HOST_HAS_NO_MANAGEMENT_IP"))
-            {
-                throw new Types.HostHasNoManagementIp();
-            }
-            if (ErrorDescription[0].equals("TRANSPORT_PIF_NOT_CONFIGURED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.TransportPifNotConfigured(p1);
-            }
-            if (ErrorDescription[0].equals("HA_IS_ENABLED"))
-            {
-                throw new Types.HaIsEnabled();
-            }
-            if (ErrorDescription[0].equals("VM_REVERT_FAILED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.VmRevertFailed(p1, p2);
-            }
-            if (ErrorDescription[0].equals("HOST_NAME_INVALID"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.HostNameInvalid(p1);
-            }
-            if (ErrorDescription[0].equals("DOMAIN_EXISTS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.DomainExists(p1, p2);
-            }
-            if (ErrorDescription[0].equals("HA_POOL_IS_ENABLED_BUT_HOST_IS_DISABLED"))
-            {
-                throw new Types.HaPoolIsEnabledButHostIsDisabled();
-            }
-            if (ErrorDescription[0].equals("MESSAGE_DEPRECATED"))
-            {
-                throw new Types.MessageDeprecated();
-            }
-            if (ErrorDescription[0].equals("HA_CONSTRAINT_VIOLATION_SR_NOT_SHARED"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.HaConstraintViolationSrNotShared(p1);
-            }
-            if (ErrorDescription[0].equals("IMPORT_ERROR_CANNOT_HANDLE_CHUNKED"))
-            {
-                throw new Types.ImportErrorCannotHandleChunked();
-            }
-            if (ErrorDescription[0].equals("NOT_SUPPORTED_DURING_UPGRADE"))
-            {
-                throw new Types.NotSupportedDuringUpgrade();
-            }
-            if (ErrorDescription[0].equals("PIF_CONFIGURATION_ERROR"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                String p2 = ErrorDescription.length > 2 ? ErrorDescription[2] : "";
-                throw new Types.PifConfigurationError(p1, p2);
-            }
-            if (ErrorDescription[0].equals("INTERFACE_HAS_NO_IP"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.InterfaceHasNoIp(p1);
-            }
-            if (ErrorDescription[0].equals("AUTH_ENABLE_FAILED_WRONG_CREDENTIALS"))
-            {
-                String p1 = ErrorDescription.length > 1 ? ErrorDescription[1] : "";
-                throw new Types.AuthEnableFailedWrongCredentials(p1);
-            }
-
-            // An unknown error occurred
-            throw new Types.XenAPIException(ErrorDescription);
-        }
-
-        throw new BadServerResponse(response);
-    }
-
-    public enum VdiOperations {
-        /**
-         * The value does not belong to this enumeration
-         */
-        UNRECOGNIZED,
-        /**
-         * Scanning backends for new or deleted VDIs
-         */
-        SCAN,
-        /**
-         * Cloning the VDI
-         */
-        CLONE,
-        /**
-         * Copying the VDI
-         */
-        COPY,
-        /**
-         * Resizing the VDI
-         */
-        RESIZE,
-        /**
-         * Resizing the VDI which may or may not be online
-         */
-        RESIZE_ONLINE,
-        /**
-         * Snapshotting the VDI
-         */
-        SNAPSHOT,
-        /**
-         * Destroying the VDI
-         */
-        DESTROY,
-        /**
-         * Forget about the VDI
-         */
-        FORGET,
-        /**
-         * Refreshing the fields of the VDI
-         */
-        UPDATE,
-        /**
-         * Forcibly unlocking the VDI
-         */
-        FORCE_UNLOCK,
-        /**
-         * Generating static configuration
-         */
-        GENERATE_CONFIG,
-        /**
-         * Operations on this VDI are temporarily blocked
-         */
-        BLOCKED
-    };
-
-    public enum Cls {
-        /**
-         * The value does not belong to this enumeration
-         */
-        UNRECOGNIZED,
-        /**
-         * VM
-         */
-        VM,
-        /**
-         * Host
-         */
-        HOST,
-        /**
-         * SR
-         */
-        SR,
-        /**
-         * Pool
-         */
-        POOL,
-        /**
-         * VMPP
-         */
-        VMPP
-    };
-
-    public enum VdiType {
-        /**
-         * The value does not belong to this enumeration
-         */
-        UNRECOGNIZED,
-        /**
-         * a disk that may be replaced on upgrade
-         */
-        SYSTEM,
-        /**
-         * a disk that is always preserved on upgrade
-         */
-        USER,
-        /**
-         * a disk that may be reformatted on upgrade
-         */
-        EPHEMERAL,
-        /**
-         * a disk that stores a suspend image
-         */
-        SUSPEND,
-        /**
-         * a disk that stores VM crashdump information
-         */
-        CRASHDUMP,
-        /**
-         * a disk used for HA storage heartbeating
-         */
-        HA_STATEFILE,
-        /**
-         * a disk used for HA Pool metadata
-         */
-        METADATA,
-        /**
-         * a disk used for a general metadata redo-log
-         */
-        REDO_LOG
-    };
-
-    public enum AfterApplyGuidance {
-        /**
-         * The value does not belong to this enumeration
-         */
-        UNRECOGNIZED,
-        /**
-         * This patch requires HVM guests to be restarted once applied.
-         */
-        RESTARTHVM,
-        /**
-         * This patch requires PV guests to be restarted once applied.
-         */
-        RESTARTPV,
-        /**
-         * This patch requires the host to be restarted once applied.
-         */
-        RESTARTHOST,
-        /**
-         * This patch requires XAPI to be restarted once applied.
-         */
-        RESTARTXAPI
-    };
-
-    public enum EventOperation {
-        /**
-         * The value does not belong to this enumeration
-         */
-        UNRECOGNIZED,
-        /**
-         * An object has been created
-         */
-        ADD,
-        /**
-         * An object has been deleted
-         */
-        DEL,
-        /**
-         * An object has been modified
-         */
-        MOD
-    };
-
-    public enum TaskAllowedOperations {
-        /**
-         * The value does not belong to this enumeration
-         */
-        UNRECOGNIZED,
-        /**
-         * refers to the operation "cancel"
-         */
-        CANCEL
-    };
-
-    public enum TaskStatusType {
-        /**
-         * The value does not belong to this enumeration
-         */
-        UNRECOGNIZED,
-        /**
-         * task is in progress
-         */
-        PENDING,
-        /**
-         * task was completed successfully
-         */
-        SUCCESS,
-        /**
-         * task has failed
-         */
-        FAILURE,
-        /**
-         * task is being cancelled
-         */
-        CANCELLING,
-        /**
-         * task has been cancelled
-         */
-        CANCELLED
-    };
-
-    public enum NetworkOperations {
-        /**
-         * The value does not belong to this enumeration
-         */
-        UNRECOGNIZED,
-        /**
-         * Indicates this network is attaching to a VIF or PIF
-         */
-        ATTACHING
-    };
-
-    public enum ConsoleProtocol {
-        /**
-         * The value does not belong to this enumeration
-         */
-        UNRECOGNIZED,
-        /**
-         * VT100 terminal
-         */
-        VT100,
-        /**
-         * Remote FrameBuffer protocol (as used in VNC)
-         */
-        RFB,
-        /**
-         * Remote Desktop Protocol
-         */
-        RDP
-    };
-
-    public enum OnCrashBehaviour {
-        /**
-         * The value does not belong to this enumeration
-         */
-        UNRECOGNIZED,
-        /**
-         * destroy the VM state
-         */
-        DESTROY,
-        /**
-         * record a coredump and then destroy the VM state
-         */
-        COREDUMP_AND_DESTROY,
-        /**
-         * restart the VM
-         */
-        RESTART,
-        /**
-         * record a coredump and then restart the VM
-         */
-        COREDUMP_AND_RESTART,
-        /**
-         * leave the crashed VM paused
-         */
-        PRESERVE,
-        /**
-         * rename the crashed VM and start a new copy
-         */
-        RENAME_RESTART
-    };
-
-    public enum VmppBackupType {
-        /**
-         * The value does not belong to this enumeration
-         */
-        UNRECOGNIZED,
-        /**
-         * The backup is a snapshot
-         */
-        SNAPSHOT,
-        /**
-         * The backup is a checkpoint
-         */
-        CHECKPOINT
-    };
-
-    public enum OnNormalExit {
-        /**
-         * The value does not belong to this enumeration
-         */
-        UNRECOGNIZED,
-        /**
-         * destroy the VM state
-         */
-        DESTROY,
-        /**
-         * restart the VM
-         */
-        RESTART
-    };
-
-    public enum VifOperations {
-        /**
-         * The value does not belong to this enumeration
-         */
-        UNRECOGNIZED,
-        /**
-         * Attempting to attach this VIF to a VM
-         */
-        ATTACH,
-        /**
-         * Attempting to hotplug this VIF
-         */
-        PLUG,
-        /**
-         * Attempting to hot unplug this VIF
-         */
-        UNPLUG
-    };
-
-    public enum XenAPIObjects {
-        /**
-         * The value does not belong to this enumeration
-         */
-        UNRECOGNIZED,
-        /**
-         * A session
-         */
-        SESSION,
-        /**
-         * Management of remote authentication services
-         */
-        AUTH,
-        /**
-         * A user or group that can log in xapi
-         */
-        SUBJECT,
-        /**
-         * A set of permissions associated with a subject
-         */
-        ROLE,
-        /**
-         * A long-running asynchronous task
-         */
-        TASK,
-        /**
-         * Asynchronous event registration and handling
-         */
-        EVENT,
-        /**
-         * Pool-wide information
-         */
-        POOL,
-        /**
-         * Pool-wide patches
-         */
-        POOL_PATCH,
-        /**
-         * A virtual machine (or 'guest').
-         */
-        VM,
-        /**
-         * The metrics associated with a VM
-         */
-        VM_METRICS,
-        /**
-         * The metrics reported by the guest (as opposed to inferred from outside)
-         */
-        VM_GUEST_METRICS,
-        /**
-         * VM Protection Policy
-         */
-        VMPP,
-        /**
-         * A phys

<TRUNCATED>