/*
* 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.
*/
using System;
using System.Collections;
using System.Collections.Generic;
namespace XenAPI
{
///
/// A virtual machine (or 'guest').
/// First published in XenServer 4.0.
///
public partial class VM : XenObject
{
public VM()
{
}
public VM(string uuid,
List allowed_operations,
Dictionary current_operations,
vm_power_state power_state,
string name_label,
string name_description,
long user_version,
bool is_a_template,
bool is_default_template,
XenRef suspend_VDI,
XenRef resident_on,
XenRef affinity,
long memory_overhead,
long memory_target,
long memory_static_max,
long memory_dynamic_max,
long memory_dynamic_min,
long memory_static_min,
Dictionary VCPUs_params,
long VCPUs_max,
long VCPUs_at_startup,
on_normal_exit actions_after_shutdown,
on_normal_exit actions_after_reboot,
on_crash_behaviour actions_after_crash,
List> consoles,
List> VIFs,
List> VBDs,
List> crash_dumps,
List> VTPMs,
string PV_bootloader,
string PV_kernel,
string PV_ramdisk,
string PV_args,
string PV_bootloader_args,
string PV_legacy_args,
string HVM_boot_policy,
Dictionary HVM_boot_params,
double HVM_shadow_multiplier,
Dictionary platform,
string PCI_bus,
Dictionary other_config,
long domid,
string domarch,
Dictionary last_boot_CPU_flags,
bool is_control_domain,
XenRef metrics,
XenRef guest_metrics,
string last_booted_record,
string recommendations,
Dictionary xenstore_data,
bool ha_always_run,
string ha_restart_priority,
bool is_a_snapshot,
XenRef snapshot_of,
List> snapshots,
DateTime snapshot_time,
string transportable_snapshot_id,
Dictionary> blobs,
string[] tags,
Dictionary blocked_operations,
Dictionary snapshot_info,
string snapshot_metadata,
XenRef parent,
List> children,
Dictionary bios_strings,
XenRef protection_policy,
bool is_snapshot_from_vmpp,
XenRef snapshot_schedule,
bool is_vmss_snapshot,
XenRef appliance,
long start_delay,
long shutdown_delay,
long order,
List> VGPUs,
List> attached_PCIs,
XenRef suspend_SR,
long version,
string generation_id,
long hardware_platform_version,
bool has_vendor_device,
bool requires_reboot,
string reference_label)
{
this.uuid = uuid;
this.allowed_operations = allowed_operations;
this.current_operations = current_operations;
this.power_state = power_state;
this.name_label = name_label;
this.name_description = name_description;
this.user_version = user_version;
this.is_a_template = is_a_template;
this.is_default_template = is_default_template;
this.suspend_VDI = suspend_VDI;
this.resident_on = resident_on;
this.affinity = affinity;
this.memory_overhead = memory_overhead;
this.memory_target = memory_target;
this.memory_static_max = memory_static_max;
this.memory_dynamic_max = memory_dynamic_max;
this.memory_dynamic_min = memory_dynamic_min;
this.memory_static_min = memory_static_min;
this.VCPUs_params = VCPUs_params;
this.VCPUs_max = VCPUs_max;
this.VCPUs_at_startup = VCPUs_at_startup;
this.actions_after_shutdown = actions_after_shutdown;
this.actions_after_reboot = actions_after_reboot;
this.actions_after_crash = actions_after_crash;
this.consoles = consoles;
this.VIFs = VIFs;
this.VBDs = VBDs;
this.crash_dumps = crash_dumps;
this.VTPMs = VTPMs;
this.PV_bootloader = PV_bootloader;
this.PV_kernel = PV_kernel;
this.PV_ramdisk = PV_ramdisk;
this.PV_args = PV_args;
this.PV_bootloader_args = PV_bootloader_args;
this.PV_legacy_args = PV_legacy_args;
this.HVM_boot_policy = HVM_boot_policy;
this.HVM_boot_params = HVM_boot_params;
this.HVM_shadow_multiplier = HVM_shadow_multiplier;
this.platform = platform;
this.PCI_bus = PCI_bus;
this.other_config = other_config;
this.domid = domid;
this.domarch = domarch;
this.last_boot_CPU_flags = last_boot_CPU_flags;
this.is_control_domain = is_control_domain;
this.metrics = metrics;
this.guest_metrics = guest_metrics;
this.last_booted_record = last_booted_record;
this.recommendations = recommendations;
this.xenstore_data = xenstore_data;
this.ha_always_run = ha_always_run;
this.ha_restart_priority = ha_restart_priority;
this.is_a_snapshot = is_a_snapshot;
this.snapshot_of = snapshot_of;
this.snapshots = snapshots;
this.snapshot_time = snapshot_time;
this.transportable_snapshot_id = transportable_snapshot_id;
this.blobs = blobs;
this.tags = tags;
this.blocked_operations = blocked_operations;
this.snapshot_info = snapshot_info;
this.snapshot_metadata = snapshot_metadata;
this.parent = parent;
this.children = children;
this.bios_strings = bios_strings;
this.protection_policy = protection_policy;
this.is_snapshot_from_vmpp = is_snapshot_from_vmpp;
this.snapshot_schedule = snapshot_schedule;
this.is_vmss_snapshot = is_vmss_snapshot;
this.appliance = appliance;
this.start_delay = start_delay;
this.shutdown_delay = shutdown_delay;
this.order = order;
this.VGPUs = VGPUs;
this.attached_PCIs = attached_PCIs;
this.suspend_SR = suspend_SR;
this.version = version;
this.generation_id = generation_id;
this.hardware_platform_version = hardware_platform_version;
this.has_vendor_device = has_vendor_device;
this.requires_reboot = requires_reboot;
this.reference_label = reference_label;
}
///
/// Creates a new VM from a Proxy_VM.
///
///
public VM(Proxy_VM proxy)
{
this.UpdateFromProxy(proxy);
}
public override void UpdateFrom(VM update)
{
uuid = update.uuid;
allowed_operations = update.allowed_operations;
current_operations = update.current_operations;
power_state = update.power_state;
name_label = update.name_label;
name_description = update.name_description;
user_version = update.user_version;
is_a_template = update.is_a_template;
is_default_template = update.is_default_template;
suspend_VDI = update.suspend_VDI;
resident_on = update.resident_on;
affinity = update.affinity;
memory_overhead = update.memory_overhead;
memory_target = update.memory_target;
memory_static_max = update.memory_static_max;
memory_dynamic_max = update.memory_dynamic_max;
memory_dynamic_min = update.memory_dynamic_min;
memory_static_min = update.memory_static_min;
VCPUs_params = update.VCPUs_params;
VCPUs_max = update.VCPUs_max;
VCPUs_at_startup = update.VCPUs_at_startup;
actions_after_shutdown = update.actions_after_shutdown;
actions_after_reboot = update.actions_after_reboot;
actions_after_crash = update.actions_after_crash;
consoles = update.consoles;
VIFs = update.VIFs;
VBDs = update.VBDs;
crash_dumps = update.crash_dumps;
VTPMs = update.VTPMs;
PV_bootloader = update.PV_bootloader;
PV_kernel = update.PV_kernel;
PV_ramdisk = update.PV_ramdisk;
PV_args = update.PV_args;
PV_bootloader_args = update.PV_bootloader_args;
PV_legacy_args = update.PV_legacy_args;
HVM_boot_policy = update.HVM_boot_policy;
HVM_boot_params = update.HVM_boot_params;
HVM_shadow_multiplier = update.HVM_shadow_multiplier;
platform = update.platform;
PCI_bus = update.PCI_bus;
other_config = update.other_config;
domid = update.domid;
domarch = update.domarch;
last_boot_CPU_flags = update.last_boot_CPU_flags;
is_control_domain = update.is_control_domain;
metrics = update.metrics;
guest_metrics = update.guest_metrics;
last_booted_record = update.last_booted_record;
recommendations = update.recommendations;
xenstore_data = update.xenstore_data;
ha_always_run = update.ha_always_run;
ha_restart_priority = update.ha_restart_priority;
is_a_snapshot = update.is_a_snapshot;
snapshot_of = update.snapshot_of;
snapshots = update.snapshots;
snapshot_time = update.snapshot_time;
transportable_snapshot_id = update.transportable_snapshot_id;
blobs = update.blobs;
tags = update.tags;
blocked_operations = update.blocked_operations;
snapshot_info = update.snapshot_info;
snapshot_metadata = update.snapshot_metadata;
parent = update.parent;
children = update.children;
bios_strings = update.bios_strings;
protection_policy = update.protection_policy;
is_snapshot_from_vmpp = update.is_snapshot_from_vmpp;
snapshot_schedule = update.snapshot_schedule;
is_vmss_snapshot = update.is_vmss_snapshot;
appliance = update.appliance;
start_delay = update.start_delay;
shutdown_delay = update.shutdown_delay;
order = update.order;
VGPUs = update.VGPUs;
attached_PCIs = update.attached_PCIs;
suspend_SR = update.suspend_SR;
version = update.version;
generation_id = update.generation_id;
hardware_platform_version = update.hardware_platform_version;
has_vendor_device = update.has_vendor_device;
requires_reboot = update.requires_reboot;
reference_label = update.reference_label;
}
internal void UpdateFromProxy(Proxy_VM proxy)
{
uuid = proxy.uuid == null ? null : (string)proxy.uuid;
allowed_operations = proxy.allowed_operations == null ? null : Helper.StringArrayToEnumList(proxy.allowed_operations);
current_operations = proxy.current_operations == null ? null : Maps.convert_from_proxy_string_vm_operations(proxy.current_operations);
power_state = proxy.power_state == null ? (vm_power_state) 0 : (vm_power_state)Helper.EnumParseDefault(typeof(vm_power_state), (string)proxy.power_state);
name_label = proxy.name_label == null ? null : (string)proxy.name_label;
name_description = proxy.name_description == null ? null : (string)proxy.name_description;
user_version = proxy.user_version == null ? 0 : long.Parse((string)proxy.user_version);
is_a_template = (bool)proxy.is_a_template;
is_default_template = (bool)proxy.is_default_template;
suspend_VDI = proxy.suspend_VDI == null ? null : XenRef.Create(proxy.suspend_VDI);
resident_on = proxy.resident_on == null ? null : XenRef.Create(proxy.resident_on);
affinity = proxy.affinity == null ? null : XenRef.Create(proxy.affinity);
memory_overhead = proxy.memory_overhead == null ? 0 : long.Parse((string)proxy.memory_overhead);
memory_target = proxy.memory_target == null ? 0 : long.Parse((string)proxy.memory_target);
memory_static_max = proxy.memory_static_max == null ? 0 : long.Parse((string)proxy.memory_static_max);
memory_dynamic_max = proxy.memory_dynamic_max == null ? 0 : long.Parse((string)proxy.memory_dynamic_max);
memory_dynamic_min = proxy.memory_dynamic_min == null ? 0 : long.Parse((string)proxy.memory_dynamic_min);
memory_static_min = proxy.memory_static_min == null ? 0 : long.Parse((string)proxy.memory_static_min);
VCPUs_params = proxy.VCPUs_params == null ? null : Maps.convert_from_proxy_string_string(proxy.VCPUs_params);
VCPUs_max = proxy.VCPUs_max == null ? 0 : long.Parse((string)proxy.VCPUs_max);
VCPUs_at_startup = proxy.VCPUs_at_startup == null ? 0 : long.Parse((string)proxy.VCPUs_at_startup);
actions_after_shutdown = proxy.actions_after_shutdown == null ? (on_normal_exit) 0 : (on_normal_exit)Helper.EnumParseDefault(typeof(on_normal_exit), (string)proxy.actions_after_shutdown);
actions_after_reboot = proxy.actions_after_reboot == null ? (on_normal_exit) 0 : (on_normal_exit)Helper.EnumParseDefault(typeof(on_normal_exit), (string)proxy.actions_after_reboot);
actions_after_crash = proxy.actions_after_crash == null ? (on_crash_behaviour) 0 : (on_crash_behaviour)Helper.EnumParseDefault(typeof(on_crash_behaviour), (string)proxy.actions_after_crash);
consoles = proxy.consoles == null ? null : XenRef.Create(proxy.consoles);
VIFs = proxy.VIFs == null ? null : XenRef.Create(proxy.VIFs);
VBDs = proxy.VBDs == null ? null : XenRef.Create(proxy.VBDs);
crash_dumps = proxy.crash_dumps == null ? null : XenRef.Create(proxy.crash_dumps);
VTPMs = proxy.VTPMs == null ? null : XenRef.Create(proxy.VTPMs);
PV_bootloader = proxy.PV_bootloader == null ? null : (string)proxy.PV_bootloader;
PV_kernel = proxy.PV_kernel == null ? null : (string)proxy.PV_kernel;
PV_ramdisk = proxy.PV_ramdisk == null ? null : (string)proxy.PV_ramdisk;
PV_args = proxy.PV_args == null ? null : (string)proxy.PV_args;
PV_bootloader_args = proxy.PV_bootloader_args == null ? null : (string)proxy.PV_bootloader_args;
PV_legacy_args = proxy.PV_legacy_args == null ? null : (string)proxy.PV_legacy_args;
HVM_boot_policy = proxy.HVM_boot_policy == null ? null : (string)proxy.HVM_boot_policy;
HVM_boot_params = proxy.HVM_boot_params == null ? null : Maps.convert_from_proxy_string_string(proxy.HVM_boot_params);
HVM_shadow_multiplier = Convert.ToDouble(proxy.HVM_shadow_multiplier);
platform = proxy.platform == null ? null : Maps.convert_from_proxy_string_string(proxy.platform);
PCI_bus = proxy.PCI_bus == null ? null : (string)proxy.PCI_bus;
other_config = proxy.other_config == null ? null : Maps.convert_from_proxy_string_string(proxy.other_config);
domid = proxy.domid == null ? 0 : long.Parse((string)proxy.domid);
domarch = proxy.domarch == null ? null : (string)proxy.domarch;
last_boot_CPU_flags = proxy.last_boot_CPU_flags == null ? null : Maps.convert_from_proxy_string_string(proxy.last_boot_CPU_flags);
is_control_domain = (bool)proxy.is_control_domain;
metrics = proxy.metrics == null ? null : XenRef.Create(proxy.metrics);
guest_metrics = proxy.guest_metrics == null ? null : XenRef.Create(proxy.guest_metrics);
last_booted_record = proxy.last_booted_record == null ? null : (string)proxy.last_booted_record;
recommendations = proxy.recommendations == null ? null : (string)proxy.recommendations;
xenstore_data = proxy.xenstore_data == null ? null : Maps.convert_from_proxy_string_string(proxy.xenstore_data);
ha_always_run = (bool)proxy.ha_always_run;
ha_restart_priority = proxy.ha_restart_priority == null ? null : (string)proxy.ha_restart_priority;
is_a_snapshot = (bool)proxy.is_a_snapshot;
snapshot_of = proxy.snapshot_of == null ? null : XenRef.Create(proxy.snapshot_of);
snapshots = proxy.snapshots == null ? null : XenRef.Create(proxy.snapshots);
snapshot_time = proxy.snapshot_time;
transportable_snapshot_id = proxy.transportable_snapshot_id == null ? null : (string)proxy.transportable_snapshot_id;
blobs = proxy.blobs == null ? null : Maps.convert_from_proxy_string_XenRefBlob(proxy.blobs);
tags = proxy.tags == null ? new string[] {} : (string [])proxy.tags;
blocked_operations = proxy.blocked_operations == null ? null : Maps.convert_from_proxy_vm_operations_string(proxy.blocked_operations);
snapshot_info = proxy.snapshot_info == null ? null : Maps.convert_from_proxy_string_string(proxy.snapshot_info);
snapshot_metadata = proxy.snapshot_metadata == null ? null : (string)proxy.snapshot_metadata;
parent = proxy.parent == null ? null : XenRef.Create(proxy.parent);
children = proxy.children == null ? null : XenRef.Create(proxy.children);
bios_strings = proxy.bios_strings == null ? null : Maps.convert_from_proxy_string_string(proxy.bios_strings);
protection_policy = proxy.protection_policy == null ? null : XenRef.Create(proxy.protection_policy);
is_snapshot_from_vmpp = (bool)proxy.is_snapshot_from_vmpp;
snapshot_schedule = proxy.snapshot_schedule == null ? null : XenRef.Create(proxy.snapshot_schedule);
is_vmss_snapshot = (bool)proxy.is_vmss_snapshot;
appliance = proxy.appliance == null ? null : XenRef.Create(proxy.appliance);
start_delay = proxy.start_delay == null ? 0 : long.Parse((string)proxy.start_delay);
shutdown_delay = proxy.shutdown_delay == null ? 0 : long.Parse((string)proxy.shutdown_delay);
order = proxy.order == null ? 0 : long.Parse((string)proxy.order);
VGPUs = proxy.VGPUs == null ? null : XenRef.Create(proxy.VGPUs);
attached_PCIs = proxy.attached_PCIs == null ? null : XenRef.Create(proxy.attached_PCIs);
suspend_SR = proxy.suspend_SR == null ? null : XenRef.Create(proxy.suspend_SR);
version = proxy.version == null ? 0 : long.Parse((string)proxy.version);
generation_id = proxy.generation_id == null ? null : (string)proxy.generation_id;
hardware_platform_version = proxy.hardware_platform_version == null ? 0 : long.Parse((string)proxy.hardware_platform_version);
has_vendor_device = (bool)proxy.has_vendor_device;
requires_reboot = (bool)proxy.requires_reboot;
reference_label = proxy.reference_label == null ? null : (string)proxy.reference_label;
}
public Proxy_VM ToProxy()
{
Proxy_VM result_ = new Proxy_VM();
result_.uuid = uuid ?? "";
result_.allowed_operations = (allowed_operations != null) ? Helper.ObjectListToStringArray(allowed_operations) : new string[] {};
result_.current_operations = Maps.convert_to_proxy_string_vm_operations(current_operations);
result_.power_state = vm_power_state_helper.ToString(power_state);
result_.name_label = name_label ?? "";
result_.name_description = name_description ?? "";
result_.user_version = user_version.ToString();
result_.is_a_template = is_a_template;
result_.is_default_template = is_default_template;
result_.suspend_VDI = suspend_VDI ?? "";
result_.resident_on = resident_on ?? "";
result_.affinity = affinity ?? "";
result_.memory_overhead = memory_overhead.ToString();
result_.memory_target = memory_target.ToString();
result_.memory_static_max = memory_static_max.ToString();
result_.memory_dynamic_max = memory_dynamic_max.ToString();
result_.memory_dynamic_min = memory_dynamic_min.ToString();
result_.memory_static_min = memory_static_min.ToString();
result_.VCPUs_params = Maps.convert_to_proxy_string_string(VCPUs_params);
result_.VCPUs_max = VCPUs_max.ToString();
result_.VCPUs_at_startup = VCPUs_at_startup.ToString();
result_.actions_after_shutdown = on_normal_exit_helper.ToString(actions_after_shutdown);
result_.actions_after_reboot = on_normal_exit_helper.ToString(actions_after_reboot);
result_.actions_after_crash = on_crash_behaviour_helper.ToString(actions_after_crash);
result_.consoles = (consoles != null) ? Helper.RefListToStringArray(consoles) : new string[] {};
result_.VIFs = (VIFs != null) ? Helper.RefListToStringArray(VIFs) : new string[] {};
result_.VBDs = (VBDs != null) ? Helper.RefListToStringArray(VBDs) : new string[] {};
result_.crash_dumps = (crash_dumps != null) ? Helper.RefListToStringArray(crash_dumps) : new string[] {};
result_.VTPMs = (VTPMs != null) ? Helper.RefListToStringArray(VTPMs) : new string[] {};
result_.PV_bootloader = PV_bootloader ?? "";
result_.PV_kernel = PV_kernel ?? "";
result_.PV_ramdisk = PV_ramdisk ?? "";
result_.PV_args = PV_args ?? "";
result_.PV_bootloader_args = PV_bootloader_args ?? "";
result_.PV_legacy_args = PV_legacy_args ?? "";
result_.HVM_boot_policy = HVM_boot_policy ?? "";
result_.HVM_boot_params = Maps.convert_to_proxy_string_string(HVM_boot_params);
result_.HVM_shadow_multiplier = HVM_shadow_multiplier;
result_.platform = Maps.convert_to_proxy_string_string(platform);
result_.PCI_bus = PCI_bus ?? "";
result_.other_config = Maps.convert_to_proxy_string_string(other_config);
result_.domid = domid.ToString();
result_.domarch = domarch ?? "";
result_.last_boot_CPU_flags = Maps.convert_to_proxy_string_string(last_boot_CPU_flags);
result_.is_control_domain = is_control_domain;
result_.metrics = metrics ?? "";
result_.guest_metrics = guest_metrics ?? "";
result_.last_booted_record = last_booted_record ?? "";
result_.recommendations = recommendations ?? "";
result_.xenstore_data = Maps.convert_to_proxy_string_string(xenstore_data);
result_.ha_always_run = ha_always_run;
result_.ha_restart_priority = ha_restart_priority ?? "";
result_.is_a_snapshot = is_a_snapshot;
result_.snapshot_of = snapshot_of ?? "";
result_.snapshots = (snapshots != null) ? Helper.RefListToStringArray(snapshots) : new string[] {};
result_.snapshot_time = snapshot_time;
result_.transportable_snapshot_id = transportable_snapshot_id ?? "";
result_.blobs = Maps.convert_to_proxy_string_XenRefBlob(blobs);
result_.tags = tags;
result_.blocked_operations = Maps.convert_to_proxy_vm_operations_string(blocked_operations);
result_.snapshot_info = Maps.convert_to_proxy_string_string(snapshot_info);
result_.snapshot_metadata = snapshot_metadata ?? "";
result_.parent = parent ?? "";
result_.children = (children != null) ? Helper.RefListToStringArray(children) : new string[] {};
result_.bios_strings = Maps.convert_to_proxy_string_string(bios_strings);
result_.protection_policy = protection_policy ?? "";
result_.is_snapshot_from_vmpp = is_snapshot_from_vmpp;
result_.snapshot_schedule = snapshot_schedule ?? "";
result_.is_vmss_snapshot = is_vmss_snapshot;
result_.appliance = appliance ?? "";
result_.start_delay = start_delay.ToString();
result_.shutdown_delay = shutdown_delay.ToString();
result_.order = order.ToString();
result_.VGPUs = (VGPUs != null) ? Helper.RefListToStringArray(VGPUs) : new string[] {};
result_.attached_PCIs = (attached_PCIs != null) ? Helper.RefListToStringArray(attached_PCIs) : new string[] {};
result_.suspend_SR = suspend_SR ?? "";
result_.version = version.ToString();
result_.generation_id = generation_id ?? "";
result_.hardware_platform_version = hardware_platform_version.ToString();
result_.has_vendor_device = has_vendor_device;
result_.requires_reboot = requires_reboot;
result_.reference_label = reference_label ?? "";
return result_;
}
///
/// Creates a new VM from a Hashtable.
///
///
public VM(Hashtable table)
{
uuid = Marshalling.ParseString(table, "uuid");
allowed_operations = Helper.StringArrayToEnumList(Marshalling.ParseStringArray(table, "allowed_operations"));
current_operations = Maps.convert_from_proxy_string_vm_operations(Marshalling.ParseHashTable(table, "current_operations"));
power_state = (vm_power_state)Helper.EnumParseDefault(typeof(vm_power_state), Marshalling.ParseString(table, "power_state"));
name_label = Marshalling.ParseString(table, "name_label");
name_description = Marshalling.ParseString(table, "name_description");
user_version = Marshalling.ParseLong(table, "user_version");
is_a_template = Marshalling.ParseBool(table, "is_a_template");
is_default_template = Marshalling.ParseBool(table, "is_default_template");
suspend_VDI = Marshalling.ParseRef(table, "suspend_VDI");
resident_on = Marshalling.ParseRef(table, "resident_on");
affinity = Marshalling.ParseRef(table, "affinity");
memory_overhead = Marshalling.ParseLong(table, "memory_overhead");
memory_target = Marshalling.ParseLong(table, "memory_target");
memory_static_max = Marshalling.ParseLong(table, "memory_static_max");
memory_dynamic_max = Marshalling.ParseLong(table, "memory_dynamic_max");
memory_dynamic_min = Marshalling.ParseLong(table, "memory_dynamic_min");
memory_static_min = Marshalling.ParseLong(table, "memory_static_min");
VCPUs_params = Maps.convert_from_proxy_string_string(Marshalling.ParseHashTable(table, "VCPUs_params"));
VCPUs_max = Marshalling.ParseLong(table, "VCPUs_max");
VCPUs_at_startup = Marshalling.ParseLong(table, "VCPUs_at_startup");
actions_after_shutdown = (on_normal_exit)Helper.EnumParseDefault(typeof(on_normal_exit), Marshalling.ParseString(table, "actions_after_shutdown"));
actions_after_reboot = (on_normal_exit)Helper.EnumParseDefault(typeof(on_normal_exit), Marshalling.ParseString(table, "actions_after_reboot"));
actions_after_crash = (on_crash_behaviour)Helper.EnumParseDefault(typeof(on_crash_behaviour), Marshalling.ParseString(table, "actions_after_crash"));
consoles = Marshalling.ParseSetRef(table, "consoles");
VIFs = Marshalling.ParseSetRef(table, "VIFs");
VBDs = Marshalling.ParseSetRef(table, "VBDs");
crash_dumps = Marshalling.ParseSetRef(table, "crash_dumps");
VTPMs = Marshalling.ParseSetRef(table, "VTPMs");
PV_bootloader = Marshalling.ParseString(table, "PV_bootloader");
PV_kernel = Marshalling.ParseString(table, "PV_kernel");
PV_ramdisk = Marshalling.ParseString(table, "PV_ramdisk");
PV_args = Marshalling.ParseString(table, "PV_args");
PV_bootloader_args = Marshalling.ParseString(table, "PV_bootloader_args");
PV_legacy_args = Marshalling.ParseString(table, "PV_legacy_args");
HVM_boot_policy = Marshalling.ParseString(table, "HVM_boot_policy");
HVM_boot_params = Maps.convert_from_proxy_string_string(Marshalling.ParseHashTable(table, "HVM_boot_params"));
HVM_shadow_multiplier = Marshalling.ParseDouble(table, "HVM_shadow_multiplier");
platform = Maps.convert_from_proxy_string_string(Marshalling.ParseHashTable(table, "platform"));
PCI_bus = Marshalling.ParseString(table, "PCI_bus");
other_config = Maps.convert_from_proxy_string_string(Marshalling.ParseHashTable(table, "other_config"));
domid = Marshalling.ParseLong(table, "domid");
domarch = Marshalling.ParseString(table, "domarch");
last_boot_CPU_flags = Maps.convert_from_proxy_string_string(Marshalling.ParseHashTable(table, "last_boot_CPU_flags"));
is_control_domain = Marshalling.ParseBool(table, "is_control_domain");
metrics = Marshalling.ParseRef(table, "metrics");
guest_metrics = Marshalling.ParseRef(table, "guest_metrics");
last_booted_record = Marshalling.ParseString(table, "last_booted_record");
recommendations = Marshalling.ParseString(table, "recommendations");
xenstore_data = Maps.convert_from_proxy_string_string(Marshalling.ParseHashTable(table, "xenstore_data"));
ha_always_run = Marshalling.ParseBool(table, "ha_always_run");
ha_restart_priority = Marshalling.ParseString(table, "ha_restart_priority");
is_a_snapshot = Marshalling.ParseBool(table, "is_a_snapshot");
snapshot_of = Marshalling.ParseRef(table, "snapshot_of");
snapshots = Marshalling.ParseSetRef(table, "snapshots");
snapshot_time = Marshalling.ParseDateTime(table, "snapshot_time");
transportable_snapshot_id = Marshalling.ParseString(table, "transportable_snapshot_id");
blobs = Maps.convert_from_proxy_string_XenRefBlob(Marshalling.ParseHashTable(table, "blobs"));
tags = Marshalling.ParseStringArray(table, "tags");
blocked_operations = Maps.convert_from_proxy_vm_operations_string(Marshalling.ParseHashTable(table, "blocked_operations"));
snapshot_info = Maps.convert_from_proxy_string_string(Marshalling.ParseHashTable(table, "snapshot_info"));
snapshot_metadata = Marshalling.ParseString(table, "snapshot_metadata");
parent = Marshalling.ParseRef(table, "parent");
children = Marshalling.ParseSetRef(table, "children");
bios_strings = Maps.convert_from_proxy_string_string(Marshalling.ParseHashTable(table, "bios_strings"));
protection_policy = Marshalling.ParseRef(table, "protection_policy");
is_snapshot_from_vmpp = Marshalling.ParseBool(table, "is_snapshot_from_vmpp");
snapshot_schedule = Marshalling.ParseRef(table, "snapshot_schedule");
is_vmss_snapshot = Marshalling.ParseBool(table, "is_vmss_snapshot");
appliance = Marshalling.ParseRef(table, "appliance");
start_delay = Marshalling.ParseLong(table, "start_delay");
shutdown_delay = Marshalling.ParseLong(table, "shutdown_delay");
order = Marshalling.ParseLong(table, "order");
VGPUs = Marshalling.ParseSetRef(table, "VGPUs");
attached_PCIs = Marshalling.ParseSetRef(table, "attached_PCIs");
suspend_SR = Marshalling.ParseRef(table, "suspend_SR");
version = Marshalling.ParseLong(table, "version");
generation_id = Marshalling.ParseString(table, "generation_id");
hardware_platform_version = Marshalling.ParseLong(table, "hardware_platform_version");
has_vendor_device = Marshalling.ParseBool(table, "has_vendor_device");
requires_reboot = Marshalling.ParseBool(table, "requires_reboot");
reference_label = Marshalling.ParseString(table, "reference_label");
}
public bool DeepEquals(VM other, bool ignoreCurrentOperations)
{
if (ReferenceEquals(null, other))
return false;
if (ReferenceEquals(this, other))
return true;
if (!ignoreCurrentOperations && !Helper.AreEqual2(this.current_operations, other.current_operations))
return false;
return Helper.AreEqual2(this._uuid, other._uuid) &&
Helper.AreEqual2(this._allowed_operations, other._allowed_operations) &&
Helper.AreEqual2(this._power_state, other._power_state) &&
Helper.AreEqual2(this._name_label, other._name_label) &&
Helper.AreEqual2(this._name_description, other._name_description) &&
Helper.AreEqual2(this._user_version, other._user_version) &&
Helper.AreEqual2(this._is_a_template, other._is_a_template) &&
Helper.AreEqual2(this._is_default_template, other._is_default_template) &&
Helper.AreEqual2(this._suspend_VDI, other._suspend_VDI) &&
Helper.AreEqual2(this._resident_on, other._resident_on) &&
Helper.AreEqual2(this._affinity, other._affinity) &&
Helper.AreEqual2(this._memory_overhead, other._memory_overhead) &&
Helper.AreEqual2(this._memory_target, other._memory_target) &&
Helper.AreEqual2(this._memory_static_max, other._memory_static_max) &&
Helper.AreEqual2(this._memory_dynamic_max, other._memory_dynamic_max) &&
Helper.AreEqual2(this._memory_dynamic_min, other._memory_dynamic_min) &&
Helper.AreEqual2(this._memory_static_min, other._memory_static_min) &&
Helper.AreEqual2(this._VCPUs_params, other._VCPUs_params) &&
Helper.AreEqual2(this._VCPUs_max, other._VCPUs_max) &&
Helper.AreEqual2(this._VCPUs_at_startup, other._VCPUs_at_startup) &&
Helper.AreEqual2(this._actions_after_shutdown, other._actions_after_shutdown) &&
Helper.AreEqual2(this._actions_after_reboot, other._actions_after_reboot) &&
Helper.AreEqual2(this._actions_after_crash, other._actions_after_crash) &&
Helper.AreEqual2(this._consoles, other._consoles) &&
Helper.AreEqual2(this._VIFs, other._VIFs) &&
Helper.AreEqual2(this._VBDs, other._VBDs) &&
Helper.AreEqual2(this._crash_dumps, other._crash_dumps) &&
Helper.AreEqual2(this._VTPMs, other._VTPMs) &&
Helper.AreEqual2(this._PV_bootloader, other._PV_bootloader) &&
Helper.AreEqual2(this._PV_kernel, other._PV_kernel) &&
Helper.AreEqual2(this._PV_ramdisk, other._PV_ramdisk) &&
Helper.AreEqual2(this._PV_args, other._PV_args) &&
Helper.AreEqual2(this._PV_bootloader_args, other._PV_bootloader_args) &&
Helper.AreEqual2(this._PV_legacy_args, other._PV_legacy_args) &&
Helper.AreEqual2(this._HVM_boot_policy, other._HVM_boot_policy) &&
Helper.AreEqual2(this._HVM_boot_params, other._HVM_boot_params) &&
Helper.AreEqual2(this._HVM_shadow_multiplier, other._HVM_shadow_multiplier) &&
Helper.AreEqual2(this._platform, other._platform) &&
Helper.AreEqual2(this._PCI_bus, other._PCI_bus) &&
Helper.AreEqual2(this._other_config, other._other_config) &&
Helper.AreEqual2(this._domid, other._domid) &&
Helper.AreEqual2(this._domarch, other._domarch) &&
Helper.AreEqual2(this._last_boot_CPU_flags, other._last_boot_CPU_flags) &&
Helper.AreEqual2(this._is_control_domain, other._is_control_domain) &&
Helper.AreEqual2(this._metrics, other._metrics) &&
Helper.AreEqual2(this._guest_metrics, other._guest_metrics) &&
Helper.AreEqual2(this._last_booted_record, other._last_booted_record) &&
Helper.AreEqual2(this._recommendations, other._recommendations) &&
Helper.AreEqual2(this._xenstore_data, other._xenstore_data) &&
Helper.AreEqual2(this._ha_always_run, other._ha_always_run) &&
Helper.AreEqual2(this._ha_restart_priority, other._ha_restart_priority) &&
Helper.AreEqual2(this._is_a_snapshot, other._is_a_snapshot) &&
Helper.AreEqual2(this._snapshot_of, other._snapshot_of) &&
Helper.AreEqual2(this._snapshots, other._snapshots) &&
Helper.AreEqual2(this._snapshot_time, other._snapshot_time) &&
Helper.AreEqual2(this._transportable_snapshot_id, other._transportable_snapshot_id) &&
Helper.AreEqual2(this._blobs, other._blobs) &&
Helper.AreEqual2(this._tags, other._tags) &&
Helper.AreEqual2(this._blocked_operations, other._blocked_operations) &&
Helper.AreEqual2(this._snapshot_info, other._snapshot_info) &&
Helper.AreEqual2(this._snapshot_metadata, other._snapshot_metadata) &&
Helper.AreEqual2(this._parent, other._parent) &&
Helper.AreEqual2(this._children, other._children) &&
Helper.AreEqual2(this._bios_strings, other._bios_strings) &&
Helper.AreEqual2(this._protection_policy, other._protection_policy) &&
Helper.AreEqual2(this._is_snapshot_from_vmpp, other._is_snapshot_from_vmpp) &&
Helper.AreEqual2(this._snapshot_schedule, other._snapshot_schedule) &&
Helper.AreEqual2(this._is_vmss_snapshot, other._is_vmss_snapshot) &&
Helper.AreEqual2(this._appliance, other._appliance) &&
Helper.AreEqual2(this._start_delay, other._start_delay) &&
Helper.AreEqual2(this._shutdown_delay, other._shutdown_delay) &&
Helper.AreEqual2(this._order, other._order) &&
Helper.AreEqual2(this._VGPUs, other._VGPUs) &&
Helper.AreEqual2(this._attached_PCIs, other._attached_PCIs) &&
Helper.AreEqual2(this._suspend_SR, other._suspend_SR) &&
Helper.AreEqual2(this._version, other._version) &&
Helper.AreEqual2(this._generation_id, other._generation_id) &&
Helper.AreEqual2(this._hardware_platform_version, other._hardware_platform_version) &&
Helper.AreEqual2(this._has_vendor_device, other._has_vendor_device) &&
Helper.AreEqual2(this._requires_reboot, other._requires_reboot) &&
Helper.AreEqual2(this._reference_label, other._reference_label);
}
public override string SaveChanges(Session session, string opaqueRef, VM server)
{
if (opaqueRef == null)
{
Proxy_VM p = this.ToProxy();
return session.proxy.vm_create(session.uuid, p).parse();
}
else
{
if (!Helper.AreEqual2(_name_label, server._name_label))
{
VM.set_name_label(session, opaqueRef, _name_label);
}
if (!Helper.AreEqual2(_name_description, server._name_description))
{
VM.set_name_description(session, opaqueRef, _name_description);
}
if (!Helper.AreEqual2(_user_version, server._user_version))
{
VM.set_user_version(session, opaqueRef, _user_version);
}
if (!Helper.AreEqual2(_is_a_template, server._is_a_template))
{
VM.set_is_a_template(session, opaqueRef, _is_a_template);
}
if (!Helper.AreEqual2(_affinity, server._affinity))
{
VM.set_affinity(session, opaqueRef, _affinity);
}
if (!Helper.AreEqual2(_VCPUs_params, server._VCPUs_params))
{
VM.set_VCPUs_params(session, opaqueRef, _VCPUs_params);
}
if (!Helper.AreEqual2(_actions_after_shutdown, server._actions_after_shutdown))
{
VM.set_actions_after_shutdown(session, opaqueRef, _actions_after_shutdown);
}
if (!Helper.AreEqual2(_actions_after_reboot, server._actions_after_reboot))
{
VM.set_actions_after_reboot(session, opaqueRef, _actions_after_reboot);
}
if (!Helper.AreEqual2(_actions_after_crash, server._actions_after_crash))
{
VM.set_actions_after_crash(session, opaqueRef, _actions_after_crash);
}
if (!Helper.AreEqual2(_PV_bootloader, server._PV_bootloader))
{
VM.set_PV_bootloader(session, opaqueRef, _PV_bootloader);
}
if (!Helper.AreEqual2(_PV_kernel, server._PV_kernel))
{
VM.set_PV_kernel(session, opaqueRef, _PV_kernel);
}
if (!Helper.AreEqual2(_PV_ramdisk, server._PV_ramdisk))
{
VM.set_PV_ramdisk(session, opaqueRef, _PV_ramdisk);
}
if (!Helper.AreEqual2(_PV_args, server._PV_args))
{
VM.set_PV_args(session, opaqueRef, _PV_args);
}
if (!Helper.AreEqual2(_PV_bootloader_args, server._PV_bootloader_args))
{
VM.set_PV_bootloader_args(session, opaqueRef, _PV_bootloader_args);
}
if (!Helper.AreEqual2(_PV_legacy_args, server._PV_legacy_args))
{
VM.set_PV_legacy_args(session, opaqueRef, _PV_legacy_args);
}
if (!Helper.AreEqual2(_HVM_boot_policy, server._HVM_boot_policy))
{
VM.set_HVM_boot_policy(session, opaqueRef, _HVM_boot_policy);
}
if (!Helper.AreEqual2(_HVM_boot_params, server._HVM_boot_params))
{
VM.set_HVM_boot_params(session, opaqueRef, _HVM_boot_params);
}
if (!Helper.AreEqual2(_platform, server._platform))
{
VM.set_platform(session, opaqueRef, _platform);
}
if (!Helper.AreEqual2(_PCI_bus, server._PCI_bus))
{
VM.set_PCI_bus(session, opaqueRef, _PCI_bus);
}
if (!Helper.AreEqual2(_other_config, server._other_config))
{
VM.set_other_config(session, opaqueRef, _other_config);
}
if (!Helper.AreEqual2(_recommendations, server._recommendations))
{
VM.set_recommendations(session, opaqueRef, _recommendations);
}
if (!Helper.AreEqual2(_xenstore_data, server._xenstore_data))
{
VM.set_xenstore_data(session, opaqueRef, _xenstore_data);
}
if (!Helper.AreEqual2(_tags, server._tags))
{
VM.set_tags(session, opaqueRef, _tags);
}
if (!Helper.AreEqual2(_blocked_operations, server._blocked_operations))
{
VM.set_blocked_operations(session, opaqueRef, _blocked_operations);
}
if (!Helper.AreEqual2(_suspend_SR, server._suspend_SR))
{
VM.set_suspend_SR(session, opaqueRef, _suspend_SR);
}
if (!Helper.AreEqual2(_hardware_platform_version, server._hardware_platform_version))
{
VM.set_hardware_platform_version(session, opaqueRef, _hardware_platform_version);
}
if (!Helper.AreEqual2(_memory_static_max, server._memory_static_max))
{
VM.set_memory_static_max(session, opaqueRef, _memory_static_max);
}
if (!Helper.AreEqual2(_memory_dynamic_max, server._memory_dynamic_max))
{
VM.set_memory_dynamic_max(session, opaqueRef, _memory_dynamic_max);
}
if (!Helper.AreEqual2(_memory_dynamic_min, server._memory_dynamic_min))
{
VM.set_memory_dynamic_min(session, opaqueRef, _memory_dynamic_min);
}
if (!Helper.AreEqual2(_memory_static_min, server._memory_static_min))
{
VM.set_memory_static_min(session, opaqueRef, _memory_static_min);
}
if (!Helper.AreEqual2(_VCPUs_max, server._VCPUs_max))
{
VM.set_VCPUs_max(session, opaqueRef, _VCPUs_max);
}
if (!Helper.AreEqual2(_VCPUs_at_startup, server._VCPUs_at_startup))
{
VM.set_VCPUs_at_startup(session, opaqueRef, _VCPUs_at_startup);
}
if (!Helper.AreEqual2(_HVM_shadow_multiplier, server._HVM_shadow_multiplier))
{
VM.set_HVM_shadow_multiplier(session, opaqueRef, _HVM_shadow_multiplier);
}
if (!Helper.AreEqual2(_ha_always_run, server._ha_always_run))
{
VM.set_ha_always_run(session, opaqueRef, _ha_always_run);
}
if (!Helper.AreEqual2(_ha_restart_priority, server._ha_restart_priority))
{
VM.set_ha_restart_priority(session, opaqueRef, _ha_restart_priority);
}
if (!Helper.AreEqual2(_protection_policy, server._protection_policy))
{
VM.set_protection_policy(session, opaqueRef, _protection_policy);
}
if (!Helper.AreEqual2(_snapshot_schedule, server._snapshot_schedule))
{
VM.set_snapshot_schedule(session, opaqueRef, _snapshot_schedule);
}
if (!Helper.AreEqual2(_appliance, server._appliance))
{
VM.set_appliance(session, opaqueRef, _appliance);
}
if (!Helper.AreEqual2(_start_delay, server._start_delay))
{
VM.set_start_delay(session, opaqueRef, _start_delay);
}
if (!Helper.AreEqual2(_shutdown_delay, server._shutdown_delay))
{
VM.set_shutdown_delay(session, opaqueRef, _shutdown_delay);
}
if (!Helper.AreEqual2(_order, server._order))
{
VM.set_order(session, opaqueRef, _order);
}
if (!Helper.AreEqual2(_has_vendor_device, server._has_vendor_device))
{
VM.set_has_vendor_device(session, opaqueRef, _has_vendor_device);
}
return null;
}
}
///
/// Get a record containing the current state of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static VM get_record(Session session, string _vm)
{
return new VM((Proxy_VM)session.proxy.vm_get_record(session.uuid, _vm ?? "").parse());
}
///
/// Get a reference to the VM instance with the specified UUID.
/// First published in XenServer 4.0.
///
/// The session
/// UUID of object to return
public static XenRef get_by_uuid(Session session, string _uuid)
{
return XenRef.Create(session.proxy.vm_get_by_uuid(session.uuid, _uuid ?? "").parse());
}
///
/// NOT RECOMMENDED! VM.clone or VM.copy (or VM.import) is a better choice in almost all situations. The standard way to obtain a new VM is to call VM.clone on a template VM, then call VM.provision on the new clone. Caution: if VM.create is used and then the new VM is attached to a virtual disc that has an operating system already installed, then there is no guarantee that the operating system will boot and run. Any software that calls VM.create on a future version of this API may fail or give unexpected results. For example this could happen if an additional parameter were added to VM.create. VM.create is intended only for use in the automatic creation of the system VM templates. It creates a new VM instance, and returns its handle.
/// First published in XenServer 4.0.
///
/// The session
/// All constructor arguments
public static XenRef create(Session session, VM _record)
{
return XenRef.Create(session.proxy.vm_create(session.uuid, _record.ToProxy()).parse());
}
///
/// NOT RECOMMENDED! VM.clone or VM.copy (or VM.import) is a better choice in almost all situations. The standard way to obtain a new VM is to call VM.clone on a template VM, then call VM.provision on the new clone. Caution: if VM.create is used and then the new VM is attached to a virtual disc that has an operating system already installed, then there is no guarantee that the operating system will boot and run. Any software that calls VM.create on a future version of this API may fail or give unexpected results. For example this could happen if an additional parameter were added to VM.create. VM.create is intended only for use in the automatic creation of the system VM templates. It creates a new VM instance, and returns its handle.
/// First published in XenServer 4.0.
///
/// The session
/// All constructor arguments
public static XenRef async_create(Session session, VM _record)
{
return XenRef.Create(session.proxy.async_vm_create(session.uuid, _record.ToProxy()).parse());
}
///
/// Destroy the specified VM. The VM is completely removed from the system. This function can only be called when the VM is in the Halted State.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static void destroy(Session session, string _vm)
{
session.proxy.vm_destroy(session.uuid, _vm ?? "").parse();
}
///
/// Destroy the specified VM. The VM is completely removed from the system. This function can only be called when the VM is in the Halted State.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef async_destroy(Session session, string _vm)
{
return XenRef.Create(session.proxy.async_vm_destroy(session.uuid, _vm ?? "").parse());
}
///
/// Get all the VM instances with the given label.
/// First published in XenServer 4.0.
///
/// The session
/// label of object to return
public static List> get_by_name_label(Session session, string _label)
{
return XenRef.Create(session.proxy.vm_get_by_name_label(session.uuid, _label ?? "").parse());
}
///
/// Get the uuid field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static string get_uuid(Session session, string _vm)
{
return (string)session.proxy.vm_get_uuid(session.uuid, _vm ?? "").parse();
}
///
/// Get the allowed_operations field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static List get_allowed_operations(Session session, string _vm)
{
return Helper.StringArrayToEnumList(session.proxy.vm_get_allowed_operations(session.uuid, _vm ?? "").parse());
}
///
/// Get the current_operations field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static Dictionary get_current_operations(Session session, string _vm)
{
return Maps.convert_from_proxy_string_vm_operations(session.proxy.vm_get_current_operations(session.uuid, _vm ?? "").parse());
}
///
/// Get the power_state field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static vm_power_state get_power_state(Session session, string _vm)
{
return (vm_power_state)Helper.EnumParseDefault(typeof(vm_power_state), (string)session.proxy.vm_get_power_state(session.uuid, _vm ?? "").parse());
}
///
/// Get the name/label field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static string get_name_label(Session session, string _vm)
{
return (string)session.proxy.vm_get_name_label(session.uuid, _vm ?? "").parse();
}
///
/// Get the name/description field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static string get_name_description(Session session, string _vm)
{
return (string)session.proxy.vm_get_name_description(session.uuid, _vm ?? "").parse();
}
///
/// Get the user_version field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static long get_user_version(Session session, string _vm)
{
return long.Parse((string)session.proxy.vm_get_user_version(session.uuid, _vm ?? "").parse());
}
///
/// Get the is_a_template field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static bool get_is_a_template(Session session, string _vm)
{
return (bool)session.proxy.vm_get_is_a_template(session.uuid, _vm ?? "").parse();
}
///
/// Get the is_default_template field of the given VM.
/// First published in XenServer 7.1.
///
/// The session
/// The opaque_ref of the given vm
public static bool get_is_default_template(Session session, string _vm)
{
return (bool)session.proxy.vm_get_is_default_template(session.uuid, _vm ?? "").parse();
}
///
/// Get the suspend_VDI field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef get_suspend_VDI(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_suspend_vdi(session.uuid, _vm ?? "").parse());
}
///
/// Get the resident_on field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef get_resident_on(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_resident_on(session.uuid, _vm ?? "").parse());
}
///
/// Get the affinity field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef get_affinity(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_affinity(session.uuid, _vm ?? "").parse());
}
///
/// Get the memory/overhead field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static long get_memory_overhead(Session session, string _vm)
{
return long.Parse((string)session.proxy.vm_get_memory_overhead(session.uuid, _vm ?? "").parse());
}
///
/// Get the memory/target field of the given VM.
/// First published in XenServer 4.0.
/// Deprecated since XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
[Deprecated("XenServer 5.6")]
public static long get_memory_target(Session session, string _vm)
{
return long.Parse((string)session.proxy.vm_get_memory_target(session.uuid, _vm ?? "").parse());
}
///
/// Get the memory/static_max field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static long get_memory_static_max(Session session, string _vm)
{
return long.Parse((string)session.proxy.vm_get_memory_static_max(session.uuid, _vm ?? "").parse());
}
///
/// Get the memory/dynamic_max field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static long get_memory_dynamic_max(Session session, string _vm)
{
return long.Parse((string)session.proxy.vm_get_memory_dynamic_max(session.uuid, _vm ?? "").parse());
}
///
/// Get the memory/dynamic_min field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static long get_memory_dynamic_min(Session session, string _vm)
{
return long.Parse((string)session.proxy.vm_get_memory_dynamic_min(session.uuid, _vm ?? "").parse());
}
///
/// Get the memory/static_min field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static long get_memory_static_min(Session session, string _vm)
{
return long.Parse((string)session.proxy.vm_get_memory_static_min(session.uuid, _vm ?? "").parse());
}
///
/// Get the VCPUs/params field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static Dictionary get_VCPUs_params(Session session, string _vm)
{
return Maps.convert_from_proxy_string_string(session.proxy.vm_get_vcpus_params(session.uuid, _vm ?? "").parse());
}
///
/// Get the VCPUs/max field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static long get_VCPUs_max(Session session, string _vm)
{
return long.Parse((string)session.proxy.vm_get_vcpus_max(session.uuid, _vm ?? "").parse());
}
///
/// Get the VCPUs/at_startup field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static long get_VCPUs_at_startup(Session session, string _vm)
{
return long.Parse((string)session.proxy.vm_get_vcpus_at_startup(session.uuid, _vm ?? "").parse());
}
///
/// Get the actions/after_shutdown field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static on_normal_exit get_actions_after_shutdown(Session session, string _vm)
{
return (on_normal_exit)Helper.EnumParseDefault(typeof(on_normal_exit), (string)session.proxy.vm_get_actions_after_shutdown(session.uuid, _vm ?? "").parse());
}
///
/// Get the actions/after_reboot field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static on_normal_exit get_actions_after_reboot(Session session, string _vm)
{
return (on_normal_exit)Helper.EnumParseDefault(typeof(on_normal_exit), (string)session.proxy.vm_get_actions_after_reboot(session.uuid, _vm ?? "").parse());
}
///
/// Get the actions/after_crash field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static on_crash_behaviour get_actions_after_crash(Session session, string _vm)
{
return (on_crash_behaviour)Helper.EnumParseDefault(typeof(on_crash_behaviour), (string)session.proxy.vm_get_actions_after_crash(session.uuid, _vm ?? "").parse());
}
///
/// Get the consoles field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static List> get_consoles(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_consoles(session.uuid, _vm ?? "").parse());
}
///
/// Get the VIFs field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static List> get_VIFs(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_vifs(session.uuid, _vm ?? "").parse());
}
///
/// Get the VBDs field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static List> get_VBDs(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_vbds(session.uuid, _vm ?? "").parse());
}
///
/// Get the crash_dumps field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static List> get_crash_dumps(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_crash_dumps(session.uuid, _vm ?? "").parse());
}
///
/// Get the VTPMs field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static List> get_VTPMs(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_vtpms(session.uuid, _vm ?? "").parse());
}
///
/// Get the PV/bootloader field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static string get_PV_bootloader(Session session, string _vm)
{
return (string)session.proxy.vm_get_pv_bootloader(session.uuid, _vm ?? "").parse();
}
///
/// Get the PV/kernel field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static string get_PV_kernel(Session session, string _vm)
{
return (string)session.proxy.vm_get_pv_kernel(session.uuid, _vm ?? "").parse();
}
///
/// Get the PV/ramdisk field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static string get_PV_ramdisk(Session session, string _vm)
{
return (string)session.proxy.vm_get_pv_ramdisk(session.uuid, _vm ?? "").parse();
}
///
/// Get the PV/args field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static string get_PV_args(Session session, string _vm)
{
return (string)session.proxy.vm_get_pv_args(session.uuid, _vm ?? "").parse();
}
///
/// Get the PV/bootloader_args field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static string get_PV_bootloader_args(Session session, string _vm)
{
return (string)session.proxy.vm_get_pv_bootloader_args(session.uuid, _vm ?? "").parse();
}
///
/// Get the PV/legacy_args field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static string get_PV_legacy_args(Session session, string _vm)
{
return (string)session.proxy.vm_get_pv_legacy_args(session.uuid, _vm ?? "").parse();
}
///
/// Get the HVM/boot_policy field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static string get_HVM_boot_policy(Session session, string _vm)
{
return (string)session.proxy.vm_get_hvm_boot_policy(session.uuid, _vm ?? "").parse();
}
///
/// Get the HVM/boot_params field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static Dictionary get_HVM_boot_params(Session session, string _vm)
{
return Maps.convert_from_proxy_string_string(session.proxy.vm_get_hvm_boot_params(session.uuid, _vm ?? "").parse());
}
///
/// Get the HVM/shadow_multiplier field of the given VM.
/// First published in XenServer 4.1.
///
/// The session
/// The opaque_ref of the given vm
public static double get_HVM_shadow_multiplier(Session session, string _vm)
{
return Convert.ToDouble(session.proxy.vm_get_hvm_shadow_multiplier(session.uuid, _vm ?? "").parse());
}
///
/// Get the platform field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static Dictionary get_platform(Session session, string _vm)
{
return Maps.convert_from_proxy_string_string(session.proxy.vm_get_platform(session.uuid, _vm ?? "").parse());
}
///
/// Get the PCI_bus field of the given VM.
/// First published in XenServer 4.0.
/// Deprecated since XenServer 6.0.
///
/// The session
/// The opaque_ref of the given vm
[Deprecated("XenServer 6.0")]
public static string get_PCI_bus(Session session, string _vm)
{
return (string)session.proxy.vm_get_pci_bus(session.uuid, _vm ?? "").parse();
}
///
/// Get the other_config field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static Dictionary get_other_config(Session session, string _vm)
{
return Maps.convert_from_proxy_string_string(session.proxy.vm_get_other_config(session.uuid, _vm ?? "").parse());
}
///
/// Get the domid field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static long get_domid(Session session, string _vm)
{
return long.Parse((string)session.proxy.vm_get_domid(session.uuid, _vm ?? "").parse());
}
///
/// Get the domarch field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static string get_domarch(Session session, string _vm)
{
return (string)session.proxy.vm_get_domarch(session.uuid, _vm ?? "").parse();
}
///
/// Get the last_boot_CPU_flags field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static Dictionary get_last_boot_CPU_flags(Session session, string _vm)
{
return Maps.convert_from_proxy_string_string(session.proxy.vm_get_last_boot_cpu_flags(session.uuid, _vm ?? "").parse());
}
///
/// Get the is_control_domain field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static bool get_is_control_domain(Session session, string _vm)
{
return (bool)session.proxy.vm_get_is_control_domain(session.uuid, _vm ?? "").parse();
}
///
/// Get the metrics field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef get_metrics(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_metrics(session.uuid, _vm ?? "").parse());
}
///
/// Get the guest_metrics field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef get_guest_metrics(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_guest_metrics(session.uuid, _vm ?? "").parse());
}
///
/// Get the last_booted_record field of the given VM.
/// First published in XenServer 4.1.
///
/// The session
/// The opaque_ref of the given vm
public static string get_last_booted_record(Session session, string _vm)
{
return (string)session.proxy.vm_get_last_booted_record(session.uuid, _vm ?? "").parse();
}
///
/// Get the recommendations field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static string get_recommendations(Session session, string _vm)
{
return (string)session.proxy.vm_get_recommendations(session.uuid, _vm ?? "").parse();
}
///
/// Get the xenstore_data field of the given VM.
/// First published in XenServer 4.1.
///
/// The session
/// The opaque_ref of the given vm
public static Dictionary get_xenstore_data(Session session, string _vm)
{
return Maps.convert_from_proxy_string_string(session.proxy.vm_get_xenstore_data(session.uuid, _vm ?? "").parse());
}
///
/// Get the ha_always_run field of the given VM.
/// First published in XenServer 5.0.
/// Deprecated since XenServer 6.0.
///
/// The session
/// The opaque_ref of the given vm
[Deprecated("XenServer 6.0")]
public static bool get_ha_always_run(Session session, string _vm)
{
return (bool)session.proxy.vm_get_ha_always_run(session.uuid, _vm ?? "").parse();
}
///
/// Get the ha_restart_priority field of the given VM.
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
public static string get_ha_restart_priority(Session session, string _vm)
{
return (string)session.proxy.vm_get_ha_restart_priority(session.uuid, _vm ?? "").parse();
}
///
/// Get the is_a_snapshot field of the given VM.
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
public static bool get_is_a_snapshot(Session session, string _vm)
{
return (bool)session.proxy.vm_get_is_a_snapshot(session.uuid, _vm ?? "").parse();
}
///
/// Get the snapshot_of field of the given VM.
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef get_snapshot_of(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_snapshot_of(session.uuid, _vm ?? "").parse());
}
///
/// Get the snapshots field of the given VM.
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
public static List> get_snapshots(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_snapshots(session.uuid, _vm ?? "").parse());
}
///
/// Get the snapshot_time field of the given VM.
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
public static DateTime get_snapshot_time(Session session, string _vm)
{
return session.proxy.vm_get_snapshot_time(session.uuid, _vm ?? "").parse();
}
///
/// Get the transportable_snapshot_id field of the given VM.
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
public static string get_transportable_snapshot_id(Session session, string _vm)
{
return (string)session.proxy.vm_get_transportable_snapshot_id(session.uuid, _vm ?? "").parse();
}
///
/// Get the blobs field of the given VM.
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
public static Dictionary> get_blobs(Session session, string _vm)
{
return Maps.convert_from_proxy_string_XenRefBlob(session.proxy.vm_get_blobs(session.uuid, _vm ?? "").parse());
}
///
/// Get the tags field of the given VM.
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
public static string[] get_tags(Session session, string _vm)
{
return (string [])session.proxy.vm_get_tags(session.uuid, _vm ?? "").parse();
}
///
/// Get the blocked_operations field of the given VM.
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
public static Dictionary get_blocked_operations(Session session, string _vm)
{
return Maps.convert_from_proxy_vm_operations_string(session.proxy.vm_get_blocked_operations(session.uuid, _vm ?? "").parse());
}
///
/// Get the snapshot_info field of the given VM.
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
public static Dictionary get_snapshot_info(Session session, string _vm)
{
return Maps.convert_from_proxy_string_string(session.proxy.vm_get_snapshot_info(session.uuid, _vm ?? "").parse());
}
///
/// Get the snapshot_metadata field of the given VM.
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
public static string get_snapshot_metadata(Session session, string _vm)
{
return (string)session.proxy.vm_get_snapshot_metadata(session.uuid, _vm ?? "").parse();
}
///
/// Get the parent field of the given VM.
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef get_parent(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_parent(session.uuid, _vm ?? "").parse());
}
///
/// Get the children field of the given VM.
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
public static List> get_children(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_children(session.uuid, _vm ?? "").parse());
}
///
/// Get the bios_strings field of the given VM.
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
public static Dictionary get_bios_strings(Session session, string _vm)
{
return Maps.convert_from_proxy_string_string(session.proxy.vm_get_bios_strings(session.uuid, _vm ?? "").parse());
}
///
/// Get the protection_policy field of the given VM.
/// First published in XenServer 5.6 FP1.
/// Deprecated since XenServer 6.2.
///
/// The session
/// The opaque_ref of the given vm
[Deprecated("XenServer 6.2")]
public static XenRef get_protection_policy(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_protection_policy(session.uuid, _vm ?? "").parse());
}
///
/// Get the is_snapshot_from_vmpp field of the given VM.
/// First published in XenServer 5.6 FP1.
/// Deprecated since XenServer 6.2.
///
/// The session
/// The opaque_ref of the given vm
[Deprecated("XenServer 6.2")]
public static bool get_is_snapshot_from_vmpp(Session session, string _vm)
{
return (bool)session.proxy.vm_get_is_snapshot_from_vmpp(session.uuid, _vm ?? "").parse();
}
///
/// Get the snapshot_schedule field of the given VM.
/// First published in XenServer 7.2.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef get_snapshot_schedule(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_snapshot_schedule(session.uuid, _vm ?? "").parse());
}
///
/// Get the is_vmss_snapshot field of the given VM.
/// First published in XenServer 7.2.
///
/// The session
/// The opaque_ref of the given vm
public static bool get_is_vmss_snapshot(Session session, string _vm)
{
return (bool)session.proxy.vm_get_is_vmss_snapshot(session.uuid, _vm ?? "").parse();
}
///
/// Get the appliance field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef get_appliance(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_appliance(session.uuid, _vm ?? "").parse());
}
///
/// Get the start_delay field of the given VM.
/// First published in XenServer 6.0.
///
/// The session
/// The opaque_ref of the given vm
public static long get_start_delay(Session session, string _vm)
{
return long.Parse((string)session.proxy.vm_get_start_delay(session.uuid, _vm ?? "").parse());
}
///
/// Get the shutdown_delay field of the given VM.
/// First published in XenServer 6.0.
///
/// The session
/// The opaque_ref of the given vm
public static long get_shutdown_delay(Session session, string _vm)
{
return long.Parse((string)session.proxy.vm_get_shutdown_delay(session.uuid, _vm ?? "").parse());
}
///
/// Get the order field of the given VM.
/// First published in XenServer 6.0.
///
/// The session
/// The opaque_ref of the given vm
public static long get_order(Session session, string _vm)
{
return long.Parse((string)session.proxy.vm_get_order(session.uuid, _vm ?? "").parse());
}
///
/// Get the VGPUs field of the given VM.
/// First published in XenServer 6.0.
///
/// The session
/// The opaque_ref of the given vm
public static List> get_VGPUs(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_vgpus(session.uuid, _vm ?? "").parse());
}
///
/// Get the attached_PCIs field of the given VM.
/// First published in XenServer 6.0.
///
/// The session
/// The opaque_ref of the given vm
public static List> get_attached_PCIs(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_attached_pcis(session.uuid, _vm ?? "").parse());
}
///
/// Get the suspend_SR field of the given VM.
/// First published in XenServer 6.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef get_suspend_SR(Session session, string _vm)
{
return XenRef.Create(session.proxy.vm_get_suspend_sr(session.uuid, _vm ?? "").parse());
}
///
/// Get the version field of the given VM.
/// First published in XenServer 6.0.
///
/// The session
/// The opaque_ref of the given vm
public static long get_version(Session session, string _vm)
{
return long.Parse((string)session.proxy.vm_get_version(session.uuid, _vm ?? "").parse());
}
///
/// Get the generation_id field of the given VM.
/// First published in XenServer 6.2.
///
/// The session
/// The opaque_ref of the given vm
public static string get_generation_id(Session session, string _vm)
{
return (string)session.proxy.vm_get_generation_id(session.uuid, _vm ?? "").parse();
}
///
/// Get the hardware_platform_version field of the given VM.
/// First published in XenServer 6.5 SP1.
///
/// The session
/// The opaque_ref of the given vm
public static long get_hardware_platform_version(Session session, string _vm)
{
return long.Parse((string)session.proxy.vm_get_hardware_platform_version(session.uuid, _vm ?? "").parse());
}
///
/// Get the has_vendor_device field of the given VM.
/// First published in XenServer 7.0.
///
/// The session
/// The opaque_ref of the given vm
public static bool get_has_vendor_device(Session session, string _vm)
{
return (bool)session.proxy.vm_get_has_vendor_device(session.uuid, _vm ?? "").parse();
}
///
/// Get the requires_reboot field of the given VM.
/// First published in XenServer 7.1.
///
/// The session
/// The opaque_ref of the given vm
public static bool get_requires_reboot(Session session, string _vm)
{
return (bool)session.proxy.vm_get_requires_reboot(session.uuid, _vm ?? "").parse();
}
///
/// Get the reference_label field of the given VM.
/// First published in XenServer 7.1.
///
/// The session
/// The opaque_ref of the given vm
public static string get_reference_label(Session session, string _vm)
{
return (string)session.proxy.vm_get_reference_label(session.uuid, _vm ?? "").parse();
}
///
/// Set the name/label field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_name_label(Session session, string _vm, string _label)
{
session.proxy.vm_set_name_label(session.uuid, _vm ?? "", _label ?? "").parse();
}
///
/// Set the name/description field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_name_description(Session session, string _vm, string _description)
{
session.proxy.vm_set_name_description(session.uuid, _vm ?? "", _description ?? "").parse();
}
///
/// Set the user_version field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_user_version(Session session, string _vm, long _user_version)
{
session.proxy.vm_set_user_version(session.uuid, _vm ?? "", _user_version.ToString()).parse();
}
///
/// Set the is_a_template field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_is_a_template(Session session, string _vm, bool _is_a_template)
{
session.proxy.vm_set_is_a_template(session.uuid, _vm ?? "", _is_a_template).parse();
}
///
/// Set the affinity field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_affinity(Session session, string _vm, string _affinity)
{
session.proxy.vm_set_affinity(session.uuid, _vm ?? "", _affinity ?? "").parse();
}
///
/// Set the VCPUs/params field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_VCPUs_params(Session session, string _vm, Dictionary _params)
{
session.proxy.vm_set_vcpus_params(session.uuid, _vm ?? "", Maps.convert_to_proxy_string_string(_params)).parse();
}
///
/// Add the given key-value pair to the VCPUs/params field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// Key to add
/// Value to add
public static void add_to_VCPUs_params(Session session, string _vm, string _key, string _value)
{
session.proxy.vm_add_to_vcpus_params(session.uuid, _vm ?? "", _key ?? "", _value ?? "").parse();
}
///
/// Remove the given key and its corresponding value from the VCPUs/params field of the given VM. If the key is not in that Map, then do nothing.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// Key to remove
public static void remove_from_VCPUs_params(Session session, string _vm, string _key)
{
session.proxy.vm_remove_from_vcpus_params(session.uuid, _vm ?? "", _key ?? "").parse();
}
///
/// Set the actions/after_shutdown field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_actions_after_shutdown(Session session, string _vm, on_normal_exit _after_shutdown)
{
session.proxy.vm_set_actions_after_shutdown(session.uuid, _vm ?? "", on_normal_exit_helper.ToString(_after_shutdown)).parse();
}
///
/// Set the actions/after_reboot field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_actions_after_reboot(Session session, string _vm, on_normal_exit _after_reboot)
{
session.proxy.vm_set_actions_after_reboot(session.uuid, _vm ?? "", on_normal_exit_helper.ToString(_after_reboot)).parse();
}
///
/// Set the actions/after_crash field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_actions_after_crash(Session session, string _vm, on_crash_behaviour _after_crash)
{
session.proxy.vm_set_actions_after_crash(session.uuid, _vm ?? "", on_crash_behaviour_helper.ToString(_after_crash)).parse();
}
///
/// Set the PV/bootloader field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_PV_bootloader(Session session, string _vm, string _bootloader)
{
session.proxy.vm_set_pv_bootloader(session.uuid, _vm ?? "", _bootloader ?? "").parse();
}
///
/// Set the PV/kernel field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_PV_kernel(Session session, string _vm, string _kernel)
{
session.proxy.vm_set_pv_kernel(session.uuid, _vm ?? "", _kernel ?? "").parse();
}
///
/// Set the PV/ramdisk field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_PV_ramdisk(Session session, string _vm, string _ramdisk)
{
session.proxy.vm_set_pv_ramdisk(session.uuid, _vm ?? "", _ramdisk ?? "").parse();
}
///
/// Set the PV/args field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_PV_args(Session session, string _vm, string _args)
{
session.proxy.vm_set_pv_args(session.uuid, _vm ?? "", _args ?? "").parse();
}
///
/// Set the PV/bootloader_args field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_PV_bootloader_args(Session session, string _vm, string _bootloader_args)
{
session.proxy.vm_set_pv_bootloader_args(session.uuid, _vm ?? "", _bootloader_args ?? "").parse();
}
///
/// Set the PV/legacy_args field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_PV_legacy_args(Session session, string _vm, string _legacy_args)
{
session.proxy.vm_set_pv_legacy_args(session.uuid, _vm ?? "", _legacy_args ?? "").parse();
}
///
/// Set the HVM/boot_policy field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_HVM_boot_policy(Session session, string _vm, string _boot_policy)
{
session.proxy.vm_set_hvm_boot_policy(session.uuid, _vm ?? "", _boot_policy ?? "").parse();
}
///
/// Set the HVM/boot_params field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_HVM_boot_params(Session session, string _vm, Dictionary _boot_params)
{
session.proxy.vm_set_hvm_boot_params(session.uuid, _vm ?? "", Maps.convert_to_proxy_string_string(_boot_params)).parse();
}
///
/// Add the given key-value pair to the HVM/boot_params field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// Key to add
/// Value to add
public static void add_to_HVM_boot_params(Session session, string _vm, string _key, string _value)
{
session.proxy.vm_add_to_hvm_boot_params(session.uuid, _vm ?? "", _key ?? "", _value ?? "").parse();
}
///
/// Remove the given key and its corresponding value from the HVM/boot_params field of the given VM. If the key is not in that Map, then do nothing.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// Key to remove
public static void remove_from_HVM_boot_params(Session session, string _vm, string _key)
{
session.proxy.vm_remove_from_hvm_boot_params(session.uuid, _vm ?? "", _key ?? "").parse();
}
///
/// Set the platform field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_platform(Session session, string _vm, Dictionary _platform)
{
session.proxy.vm_set_platform(session.uuid, _vm ?? "", Maps.convert_to_proxy_string_string(_platform)).parse();
}
///
/// Add the given key-value pair to the platform field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// Key to add
/// Value to add
public static void add_to_platform(Session session, string _vm, string _key, string _value)
{
session.proxy.vm_add_to_platform(session.uuid, _vm ?? "", _key ?? "", _value ?? "").parse();
}
///
/// Remove the given key and its corresponding value from the platform field of the given VM. If the key is not in that Map, then do nothing.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// Key to remove
public static void remove_from_platform(Session session, string _vm, string _key)
{
session.proxy.vm_remove_from_platform(session.uuid, _vm ?? "", _key ?? "").parse();
}
///
/// Set the PCI_bus field of the given VM.
/// First published in XenServer 4.0.
/// Deprecated since XenServer 6.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
[Deprecated("XenServer 6.0")]
public static void set_PCI_bus(Session session, string _vm, string _pci_bus)
{
session.proxy.vm_set_pci_bus(session.uuid, _vm ?? "", _pci_bus ?? "").parse();
}
///
/// Set the other_config field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_other_config(Session session, string _vm, Dictionary _other_config)
{
session.proxy.vm_set_other_config(session.uuid, _vm ?? "", Maps.convert_to_proxy_string_string(_other_config)).parse();
}
///
/// Add the given key-value pair to the other_config field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// Key to add
/// Value to add
public static void add_to_other_config(Session session, string _vm, string _key, string _value)
{
session.proxy.vm_add_to_other_config(session.uuid, _vm ?? "", _key ?? "", _value ?? "").parse();
}
///
/// Remove the given key and its corresponding value from the other_config field of the given VM. If the key is not in that Map, then do nothing.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// Key to remove
public static void remove_from_other_config(Session session, string _vm, string _key)
{
session.proxy.vm_remove_from_other_config(session.uuid, _vm ?? "", _key ?? "").parse();
}
///
/// Set the recommendations field of the given VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_recommendations(Session session, string _vm, string _recommendations)
{
session.proxy.vm_set_recommendations(session.uuid, _vm ?? "", _recommendations ?? "").parse();
}
///
/// Set the xenstore_data field of the given VM.
/// First published in XenServer 4.1.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_xenstore_data(Session session, string _vm, Dictionary _xenstore_data)
{
session.proxy.vm_set_xenstore_data(session.uuid, _vm ?? "", Maps.convert_to_proxy_string_string(_xenstore_data)).parse();
}
///
/// Add the given key-value pair to the xenstore_data field of the given VM.
/// First published in XenServer 4.1.
///
/// The session
/// The opaque_ref of the given vm
/// Key to add
/// Value to add
public static void add_to_xenstore_data(Session session, string _vm, string _key, string _value)
{
session.proxy.vm_add_to_xenstore_data(session.uuid, _vm ?? "", _key ?? "", _value ?? "").parse();
}
///
/// Remove the given key and its corresponding value from the xenstore_data field of the given VM. If the key is not in that Map, then do nothing.
/// First published in XenServer 4.1.
///
/// The session
/// The opaque_ref of the given vm
/// Key to remove
public static void remove_from_xenstore_data(Session session, string _vm, string _key)
{
session.proxy.vm_remove_from_xenstore_data(session.uuid, _vm ?? "", _key ?? "").parse();
}
///
/// Set the tags field of the given VM.
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_tags(Session session, string _vm, string[] _tags)
{
session.proxy.vm_set_tags(session.uuid, _vm ?? "", _tags).parse();
}
///
/// Add the given value to the tags field of the given VM. If the value is already in that Set, then do nothing.
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to add
public static void add_tags(Session session, string _vm, string _value)
{
session.proxy.vm_add_tags(session.uuid, _vm ?? "", _value ?? "").parse();
}
///
/// Remove the given value from the tags field of the given VM. If the value is not in that Set, then do nothing.
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
/// Value to remove
public static void remove_tags(Session session, string _vm, string _value)
{
session.proxy.vm_remove_tags(session.uuid, _vm ?? "", _value ?? "").parse();
}
///
/// Set the blocked_operations field of the given VM.
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_blocked_operations(Session session, string _vm, Dictionary _blocked_operations)
{
session.proxy.vm_set_blocked_operations(session.uuid, _vm ?? "", Maps.convert_to_proxy_vm_operations_string(_blocked_operations)).parse();
}
///
/// Add the given key-value pair to the blocked_operations field of the given VM.
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
/// Key to add
/// Value to add
public static void add_to_blocked_operations(Session session, string _vm, vm_operations _key, string _value)
{
session.proxy.vm_add_to_blocked_operations(session.uuid, _vm ?? "", vm_operations_helper.ToString(_key), _value ?? "").parse();
}
///
/// Remove the given key and its corresponding value from the blocked_operations field of the given VM. If the key is not in that Map, then do nothing.
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
/// Key to remove
public static void remove_from_blocked_operations(Session session, string _vm, vm_operations _key)
{
session.proxy.vm_remove_from_blocked_operations(session.uuid, _vm ?? "", vm_operations_helper.ToString(_key)).parse();
}
///
/// Set the suspend_SR field of the given VM.
/// First published in XenServer 6.0.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_suspend_SR(Session session, string _vm, string _suspend_sr)
{
session.proxy.vm_set_suspend_sr(session.uuid, _vm ?? "", _suspend_sr ?? "").parse();
}
///
/// Set the hardware_platform_version field of the given VM.
/// First published in XenServer 6.5 SP1.
///
/// The session
/// The opaque_ref of the given vm
/// New value to set
public static void set_hardware_platform_version(Session session, string _vm, long _hardware_platform_version)
{
session.proxy.vm_set_hardware_platform_version(session.uuid, _vm ?? "", _hardware_platform_version.ToString()).parse();
}
///
/// Snapshots the specified VM, making a new VM. Snapshot automatically exploits the capabilities of the underlying storage repository in which the VM's disk images are stored (e.g. Copy on Write).
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
/// The name of the snapshotted VM
public static XenRef snapshot(Session session, string _vm, string _new_name)
{
return XenRef.Create(session.proxy.vm_snapshot(session.uuid, _vm ?? "", _new_name ?? "").parse());
}
///
/// Snapshots the specified VM, making a new VM. Snapshot automatically exploits the capabilities of the underlying storage repository in which the VM's disk images are stored (e.g. Copy on Write).
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
/// The name of the snapshotted VM
public static XenRef async_snapshot(Session session, string _vm, string _new_name)
{
return XenRef.Create(session.proxy.async_vm_snapshot(session.uuid, _vm ?? "", _new_name ?? "").parse());
}
///
/// Snapshots the specified VM with quiesce, making a new VM. Snapshot automatically exploits the capabilities of the underlying storage repository in which the VM's disk images are stored (e.g. Copy on Write).
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
/// The name of the snapshotted VM
public static XenRef snapshot_with_quiesce(Session session, string _vm, string _new_name)
{
return XenRef.Create(session.proxy.vm_snapshot_with_quiesce(session.uuid, _vm ?? "", _new_name ?? "").parse());
}
///
/// Snapshots the specified VM with quiesce, making a new VM. Snapshot automatically exploits the capabilities of the underlying storage repository in which the VM's disk images are stored (e.g. Copy on Write).
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
/// The name of the snapshotted VM
public static XenRef async_snapshot_with_quiesce(Session session, string _vm, string _new_name)
{
return XenRef.Create(session.proxy.async_vm_snapshot_with_quiesce(session.uuid, _vm ?? "", _new_name ?? "").parse());
}
///
/// Clones the specified VM, making a new VM. Clone automatically exploits the capabilities of the underlying storage repository in which the VM's disk images are stored (e.g. Copy on Write). This function can only be called when the VM is in the Halted State.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The name of the cloned VM
public static XenRef clone(Session session, string _vm, string _new_name)
{
return XenRef.Create(session.proxy.vm_clone(session.uuid, _vm ?? "", _new_name ?? "").parse());
}
///
/// Clones the specified VM, making a new VM. Clone automatically exploits the capabilities of the underlying storage repository in which the VM's disk images are stored (e.g. Copy on Write). This function can only be called when the VM is in the Halted State.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The name of the cloned VM
public static XenRef async_clone(Session session, string _vm, string _new_name)
{
return XenRef.Create(session.proxy.async_vm_clone(session.uuid, _vm ?? "", _new_name ?? "").parse());
}
///
/// Copied the specified VM, making a new VM. Unlike clone, copy does not exploits the capabilities of the underlying storage repository in which the VM's disk images are stored. Instead, copy guarantees that the disk images of the newly created VM will be 'full disks' - i.e. not part of a CoW chain. This function can only be called when the VM is in the Halted State.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The name of the copied VM
/// An SR to copy all the VM's disks into (if an invalid reference then it uses the existing SRs)
public static XenRef copy(Session session, string _vm, string _new_name, string _sr)
{
return XenRef.Create(session.proxy.vm_copy(session.uuid, _vm ?? "", _new_name ?? "", _sr ?? "").parse());
}
///
/// Copied the specified VM, making a new VM. Unlike clone, copy does not exploits the capabilities of the underlying storage repository in which the VM's disk images are stored. Instead, copy guarantees that the disk images of the newly created VM will be 'full disks' - i.e. not part of a CoW chain. This function can only be called when the VM is in the Halted State.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The name of the copied VM
/// An SR to copy all the VM's disks into (if an invalid reference then it uses the existing SRs)
public static XenRef async_copy(Session session, string _vm, string _new_name, string _sr)
{
return XenRef.Create(session.proxy.async_vm_copy(session.uuid, _vm ?? "", _new_name ?? "", _sr ?? "").parse());
}
///
/// Reverts the specified VM to a previous state.
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given snapshotted state
public static void revert(Session session, string _vm)
{
session.proxy.vm_revert(session.uuid, _vm ?? "").parse();
}
///
/// Reverts the specified VM to a previous state.
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given snapshotted state
public static XenRef async_revert(Session session, string _vm)
{
return XenRef.Create(session.proxy.async_vm_revert(session.uuid, _vm ?? "").parse());
}
///
/// Checkpoints the specified VM, making a new VM. Checkpoint automatically exploits the capabilities of the underlying storage repository in which the VM's disk images are stored (e.g. Copy on Write) and saves the memory image as well.
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
/// The name of the checkpointed VM
public static XenRef checkpoint(Session session, string _vm, string _new_name)
{
return XenRef.Create(session.proxy.vm_checkpoint(session.uuid, _vm ?? "", _new_name ?? "").parse());
}
///
/// Checkpoints the specified VM, making a new VM. Checkpoint automatically exploits the capabilities of the underlying storage repository in which the VM's disk images are stored (e.g. Copy on Write) and saves the memory image as well.
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
/// The name of the checkpointed VM
public static XenRef async_checkpoint(Session session, string _vm, string _new_name)
{
return XenRef.Create(session.proxy.async_vm_checkpoint(session.uuid, _vm ?? "", _new_name ?? "").parse());
}
///
/// Inspects the disk configuration contained within the VM's other_config, creates VDIs and VBDs and then executes any applicable post-install script.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static void provision(Session session, string _vm)
{
session.proxy.vm_provision(session.uuid, _vm ?? "").parse();
}
///
/// Inspects the disk configuration contained within the VM's other_config, creates VDIs and VBDs and then executes any applicable post-install script.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef async_provision(Session session, string _vm)
{
return XenRef.Create(session.proxy.async_vm_provision(session.uuid, _vm ?? "").parse());
}
///
/// Start the specified VM. This function can only be called with the VM is in the Halted State.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// Instantiate VM in paused state if set to true.
/// Attempt to force the VM to start. If this flag is false then the VM may fail pre-boot safety checks (e.g. if the CPU the VM last booted on looks substantially different to the current one)
public static void start(Session session, string _vm, bool _start_paused, bool _force)
{
session.proxy.vm_start(session.uuid, _vm ?? "", _start_paused, _force).parse();
}
///
/// Start the specified VM. This function can only be called with the VM is in the Halted State.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// Instantiate VM in paused state if set to true.
/// Attempt to force the VM to start. If this flag is false then the VM may fail pre-boot safety checks (e.g. if the CPU the VM last booted on looks substantially different to the current one)
public static XenRef async_start(Session session, string _vm, bool _start_paused, bool _force)
{
return XenRef.Create(session.proxy.async_vm_start(session.uuid, _vm ?? "", _start_paused, _force).parse());
}
///
/// Start the specified VM on a particular host. This function can only be called with the VM is in the Halted State.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The Host on which to start the VM
/// Instantiate VM in paused state if set to true.
/// Attempt to force the VM to start. If this flag is false then the VM may fail pre-boot safety checks (e.g. if the CPU the VM last booted on looks substantially different to the current one)
public static void start_on(Session session, string _vm, string _host, bool _start_paused, bool _force)
{
session.proxy.vm_start_on(session.uuid, _vm ?? "", _host ?? "", _start_paused, _force).parse();
}
///
/// Start the specified VM on a particular host. This function can only be called with the VM is in the Halted State.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The Host on which to start the VM
/// Instantiate VM in paused state if set to true.
/// Attempt to force the VM to start. If this flag is false then the VM may fail pre-boot safety checks (e.g. if the CPU the VM last booted on looks substantially different to the current one)
public static XenRef async_start_on(Session session, string _vm, string _host, bool _start_paused, bool _force)
{
return XenRef.Create(session.proxy.async_vm_start_on(session.uuid, _vm ?? "", _host ?? "", _start_paused, _force).parse());
}
///
/// Pause the specified VM. This can only be called when the specified VM is in the Running state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static void pause(Session session, string _vm)
{
session.proxy.vm_pause(session.uuid, _vm ?? "").parse();
}
///
/// Pause the specified VM. This can only be called when the specified VM is in the Running state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef async_pause(Session session, string _vm)
{
return XenRef.Create(session.proxy.async_vm_pause(session.uuid, _vm ?? "").parse());
}
///
/// Resume the specified VM. This can only be called when the specified VM is in the Paused state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static void unpause(Session session, string _vm)
{
session.proxy.vm_unpause(session.uuid, _vm ?? "").parse();
}
///
/// Resume the specified VM. This can only be called when the specified VM is in the Paused state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef async_unpause(Session session, string _vm)
{
return XenRef.Create(session.proxy.async_vm_unpause(session.uuid, _vm ?? "").parse());
}
///
/// Attempt to cleanly shutdown the specified VM. (Note: this may not be supported---e.g. if a guest agent is not installed). This can only be called when the specified VM is in the Running state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static void clean_shutdown(Session session, string _vm)
{
session.proxy.vm_clean_shutdown(session.uuid, _vm ?? "").parse();
}
///
/// Attempt to cleanly shutdown the specified VM. (Note: this may not be supported---e.g. if a guest agent is not installed). This can only be called when the specified VM is in the Running state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef async_clean_shutdown(Session session, string _vm)
{
return XenRef.Create(session.proxy.async_vm_clean_shutdown(session.uuid, _vm ?? "").parse());
}
///
/// Attempts to first clean shutdown a VM and if it should fail then perform a hard shutdown on it.
/// First published in XenServer 6.2.
///
/// The session
/// The opaque_ref of the given vm
public static void shutdown(Session session, string _vm)
{
session.proxy.vm_shutdown(session.uuid, _vm ?? "").parse();
}
///
/// Attempts to first clean shutdown a VM and if it should fail then perform a hard shutdown on it.
/// First published in XenServer 6.2.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef async_shutdown(Session session, string _vm)
{
return XenRef.Create(session.proxy.async_vm_shutdown(session.uuid, _vm ?? "").parse());
}
///
/// Attempt to cleanly shutdown the specified VM (Note: this may not be supported---e.g. if a guest agent is not installed). This can only be called when the specified VM is in the Running state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static void clean_reboot(Session session, string _vm)
{
session.proxy.vm_clean_reboot(session.uuid, _vm ?? "").parse();
}
///
/// Attempt to cleanly shutdown the specified VM (Note: this may not be supported---e.g. if a guest agent is not installed). This can only be called when the specified VM is in the Running state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef async_clean_reboot(Session session, string _vm)
{
return XenRef.Create(session.proxy.async_vm_clean_reboot(session.uuid, _vm ?? "").parse());
}
///
/// Stop executing the specified VM without attempting a clean shutdown.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static void hard_shutdown(Session session, string _vm)
{
session.proxy.vm_hard_shutdown(session.uuid, _vm ?? "").parse();
}
///
/// Stop executing the specified VM without attempting a clean shutdown.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef async_hard_shutdown(Session session, string _vm)
{
return XenRef.Create(session.proxy.async_vm_hard_shutdown(session.uuid, _vm ?? "").parse());
}
///
/// Reset the power-state of the VM to halted in the database only. (Used to recover from slave failures in pooling scenarios by resetting the power-states of VMs running on dead slaves to halted.) This is a potentially dangerous operation; use with care.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static void power_state_reset(Session session, string _vm)
{
session.proxy.vm_power_state_reset(session.uuid, _vm ?? "").parse();
}
///
/// Reset the power-state of the VM to halted in the database only. (Used to recover from slave failures in pooling scenarios by resetting the power-states of VMs running on dead slaves to halted.) This is a potentially dangerous operation; use with care.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef async_power_state_reset(Session session, string _vm)
{
return XenRef.Create(session.proxy.async_vm_power_state_reset(session.uuid, _vm ?? "").parse());
}
///
/// Stop executing the specified VM without attempting a clean shutdown and immediately restart the VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static void hard_reboot(Session session, string _vm)
{
session.proxy.vm_hard_reboot(session.uuid, _vm ?? "").parse();
}
///
/// Stop executing the specified VM without attempting a clean shutdown and immediately restart the VM.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef async_hard_reboot(Session session, string _vm)
{
return XenRef.Create(session.proxy.async_vm_hard_reboot(session.uuid, _vm ?? "").parse());
}
///
/// Suspend the specified VM to disk. This can only be called when the specified VM is in the Running state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static void suspend(Session session, string _vm)
{
session.proxy.vm_suspend(session.uuid, _vm ?? "").parse();
}
///
/// Suspend the specified VM to disk. This can only be called when the specified VM is in the Running state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef async_suspend(Session session, string _vm)
{
return XenRef.Create(session.proxy.async_vm_suspend(session.uuid, _vm ?? "").parse());
}
///
/// Awaken the specified VM and resume it. This can only be called when the specified VM is in the Suspended state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// Resume VM in paused state if set to true.
/// Attempt to force the VM to resume. If this flag is false then the VM may fail pre-resume safety checks (e.g. if the CPU the VM was running on looks substantially different to the current one)
public static void resume(Session session, string _vm, bool _start_paused, bool _force)
{
session.proxy.vm_resume(session.uuid, _vm ?? "", _start_paused, _force).parse();
}
///
/// Awaken the specified VM and resume it. This can only be called when the specified VM is in the Suspended state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// Resume VM in paused state if set to true.
/// Attempt to force the VM to resume. If this flag is false then the VM may fail pre-resume safety checks (e.g. if the CPU the VM was running on looks substantially different to the current one)
public static XenRef async_resume(Session session, string _vm, bool _start_paused, bool _force)
{
return XenRef.Create(session.proxy.async_vm_resume(session.uuid, _vm ?? "", _start_paused, _force).parse());
}
///
/// Awaken the specified VM and resume it on a particular Host. This can only be called when the specified VM is in the Suspended state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The Host on which to resume the VM
/// Resume VM in paused state if set to true.
/// Attempt to force the VM to resume. If this flag is false then the VM may fail pre-resume safety checks (e.g. if the CPU the VM was running on looks substantially different to the current one)
public static void resume_on(Session session, string _vm, string _host, bool _start_paused, bool _force)
{
session.proxy.vm_resume_on(session.uuid, _vm ?? "", _host ?? "", _start_paused, _force).parse();
}
///
/// Awaken the specified VM and resume it on a particular Host. This can only be called when the specified VM is in the Suspended state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The Host on which to resume the VM
/// Resume VM in paused state if set to true.
/// Attempt to force the VM to resume. If this flag is false then the VM may fail pre-resume safety checks (e.g. if the CPU the VM was running on looks substantially different to the current one)
public static XenRef async_resume_on(Session session, string _vm, string _host, bool _start_paused, bool _force)
{
return XenRef.Create(session.proxy.async_vm_resume_on(session.uuid, _vm ?? "", _host ?? "", _start_paused, _force).parse());
}
///
/// Migrate a VM to another Host.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The target host
/// Extra configuration operations
public static void pool_migrate(Session session, string _vm, string _host, Dictionary _options)
{
session.proxy.vm_pool_migrate(session.uuid, _vm ?? "", _host ?? "", Maps.convert_to_proxy_string_string(_options)).parse();
}
///
/// Migrate a VM to another Host.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The target host
/// Extra configuration operations
public static XenRef async_pool_migrate(Session session, string _vm, string _host, Dictionary _options)
{
return XenRef.Create(session.proxy.async_vm_pool_migrate(session.uuid, _vm ?? "", _host ?? "", Maps.convert_to_proxy_string_string(_options)).parse());
}
///
/// Set the number of VCPUs for a running VM
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The number of VCPUs
public static void set_VCPUs_number_live(Session session, string _vm, long _nvcpu)
{
session.proxy.vm_set_vcpus_number_live(session.uuid, _vm ?? "", _nvcpu.ToString()).parse();
}
///
/// Set the number of VCPUs for a running VM
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The number of VCPUs
public static XenRef async_set_VCPUs_number_live(Session session, string _vm, long _nvcpu)
{
return XenRef.Create(session.proxy.async_vm_set_vcpus_number_live(session.uuid, _vm ?? "", _nvcpu.ToString()).parse());
}
///
/// Add the given key-value pair to VM.VCPUs_params, and apply that value on the running VM
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The key
/// The value
public static void add_to_VCPUs_params_live(Session session, string _vm, string _key, string _value)
{
session.proxy.vm_add_to_vcpus_params_live(session.uuid, _vm ?? "", _key ?? "", _value ?? "").parse();
}
///
/// Add the given key-value pair to VM.VCPUs_params, and apply that value on the running VM
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The key
/// The value
public static XenRef async_add_to_VCPUs_params_live(Session session, string _vm, string _key, string _value)
{
return XenRef.Create(session.proxy.async_vm_add_to_vcpus_params_live(session.uuid, _vm ?? "", _key ?? "", _value ?? "").parse());
}
///
/// Set the value of the ha_restart_priority field
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
/// The value
public static void set_ha_restart_priority(Session session, string _vm, string _value)
{
session.proxy.vm_set_ha_restart_priority(session.uuid, _vm ?? "", _value ?? "").parse();
}
///
/// Set the value of the ha_always_run
/// First published in XenServer 5.0.
/// Deprecated since XenServer 6.0.
///
/// The session
/// The opaque_ref of the given vm
/// The value
[Deprecated("XenServer 6.0")]
public static void set_ha_always_run(Session session, string _vm, bool _value)
{
session.proxy.vm_set_ha_always_run(session.uuid, _vm ?? "", _value).parse();
}
///
/// Computes the virtualization memory overhead of a VM.
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
public static long compute_memory_overhead(Session session, string _vm)
{
return long.Parse((string)session.proxy.vm_compute_memory_overhead(session.uuid, _vm ?? "").parse());
}
///
/// Computes the virtualization memory overhead of a VM.
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
public static XenRef async_compute_memory_overhead(Session session, string _vm)
{
return XenRef.Create(session.proxy.async_vm_compute_memory_overhead(session.uuid, _vm ?? "").parse());
}
///
/// Set the value of the memory_dynamic_max field
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
/// The new value of memory_dynamic_max
public static void set_memory_dynamic_max(Session session, string _vm, long _value)
{
session.proxy.vm_set_memory_dynamic_max(session.uuid, _vm ?? "", _value.ToString()).parse();
}
///
/// Set the value of the memory_dynamic_min field
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
/// The new value of memory_dynamic_min
public static void set_memory_dynamic_min(Session session, string _vm, long _value)
{
session.proxy.vm_set_memory_dynamic_min(session.uuid, _vm ?? "", _value.ToString()).parse();
}
///
/// Set the minimum and maximum amounts of physical memory the VM is allowed to use.
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
/// The new minimum value
/// The new maximum value
public static void set_memory_dynamic_range(Session session, string _vm, long _min, long _max)
{
session.proxy.vm_set_memory_dynamic_range(session.uuid, _vm ?? "", _min.ToString(), _max.ToString()).parse();
}
///
/// Set the minimum and maximum amounts of physical memory the VM is allowed to use.
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
/// The new minimum value
/// The new maximum value
public static XenRef async_set_memory_dynamic_range(Session session, string _vm, long _min, long _max)
{
return XenRef.Create(session.proxy.async_vm_set_memory_dynamic_range(session.uuid, _vm ?? "", _min.ToString(), _max.ToString()).parse());
}
///
/// Set the value of the memory_static_max field
/// First published in XenServer 5.0.
///
/// The session
/// The opaque_ref of the given vm
/// The new value of memory_static_max
public static void set_memory_static_max(Session session, string _vm, long _value)
{
session.proxy.vm_set_memory_static_max(session.uuid, _vm ?? "", _value.ToString()).parse();
}
///
/// Set the value of the memory_static_min field
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
/// The new value of memory_static_min
public static void set_memory_static_min(Session session, string _vm, long _value)
{
session.proxy.vm_set_memory_static_min(session.uuid, _vm ?? "", _value.ToString()).parse();
}
///
/// Set the static (ie boot-time) range of virtual memory that the VM is allowed to use.
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
/// The new minimum value
/// The new maximum value
public static void set_memory_static_range(Session session, string _vm, long _min, long _max)
{
session.proxy.vm_set_memory_static_range(session.uuid, _vm ?? "", _min.ToString(), _max.ToString()).parse();
}
///
/// Set the static (ie boot-time) range of virtual memory that the VM is allowed to use.
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
/// The new minimum value
/// The new maximum value
public static XenRef async_set_memory_static_range(Session session, string _vm, long _min, long _max)
{
return XenRef.Create(session.proxy.async_vm_set_memory_static_range(session.uuid, _vm ?? "", _min.ToString(), _max.ToString()).parse());
}
///
/// Set the memory limits of this VM.
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
/// The new value of memory_static_min.
/// The new value of memory_static_max.
/// The new value of memory_dynamic_min.
/// The new value of memory_dynamic_max.
public static void set_memory_limits(Session session, string _vm, long _static_min, long _static_max, long _dynamic_min, long _dynamic_max)
{
session.proxy.vm_set_memory_limits(session.uuid, _vm ?? "", _static_min.ToString(), _static_max.ToString(), _dynamic_min.ToString(), _dynamic_max.ToString()).parse();
}
///
/// Set the memory limits of this VM.
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
/// The new value of memory_static_min.
/// The new value of memory_static_max.
/// The new value of memory_dynamic_min.
/// The new value of memory_dynamic_max.
public static XenRef async_set_memory_limits(Session session, string _vm, long _static_min, long _static_max, long _dynamic_min, long _dynamic_max)
{
return XenRef.Create(session.proxy.async_vm_set_memory_limits(session.uuid, _vm ?? "", _static_min.ToString(), _static_max.ToString(), _dynamic_min.ToString(), _dynamic_max.ToString()).parse());
}
///
/// Set the memory allocation of this VM. Sets all of memory_static_max, memory_dynamic_min, and memory_dynamic_max to the given value, and leaves memory_static_min untouched.
/// First published in XenServer 7.1.
///
/// The session
/// The opaque_ref of the given vm
/// The new memory allocation (bytes).
public static void set_memory(Session session, string _vm, long _value)
{
session.proxy.vm_set_memory(session.uuid, _vm ?? "", _value.ToString()).parse();
}
///
/// Set the memory allocation of this VM. Sets all of memory_static_max, memory_dynamic_min, and memory_dynamic_max to the given value, and leaves memory_static_min untouched.
/// First published in XenServer 7.1.
///
/// The session
/// The opaque_ref of the given vm
/// The new memory allocation (bytes).
public static XenRef async_set_memory(Session session, string _vm, long _value)
{
return XenRef.Create(session.proxy.async_vm_set_memory(session.uuid, _vm ?? "", _value.ToString()).parse());
}
///
/// Set the memory target for a running VM
/// First published in XenServer 4.0.
/// Deprecated since XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
/// The target in bytes
[Deprecated("XenServer 5.6")]
public static void set_memory_target_live(Session session, string _vm, long _target)
{
session.proxy.vm_set_memory_target_live(session.uuid, _vm ?? "", _target.ToString()).parse();
}
///
/// Set the memory target for a running VM
/// First published in XenServer 4.0.
/// Deprecated since XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
/// The target in bytes
[Deprecated("XenServer 5.6")]
public static XenRef async_set_memory_target_live(Session session, string _vm, long _target)
{
return XenRef.Create(session.proxy.async_vm_set_memory_target_live(session.uuid, _vm ?? "", _target.ToString()).parse());
}
///
/// Wait for a running VM to reach its current memory target
/// First published in XenServer 5.0.
/// Deprecated since XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
[Deprecated("XenServer 5.6")]
public static void wait_memory_target_live(Session session, string _vm)
{
session.proxy.vm_wait_memory_target_live(session.uuid, _vm ?? "").parse();
}
///
/// Wait for a running VM to reach its current memory target
/// First published in XenServer 5.0.
/// Deprecated since XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
[Deprecated("XenServer 5.6")]
public static XenRef async_wait_memory_target_live(Session session, string _vm)
{
return XenRef.Create(session.proxy.async_vm_wait_memory_target_live(session.uuid, _vm ?? "").parse());
}
///
/// Return true if the VM is currently 'co-operative' i.e. is expected to reach a balloon target and actually has done
/// First published in XenServer 5.6.
/// Deprecated since XenServer 6.1.
///
/// The session
/// The opaque_ref of the given vm
[Deprecated("XenServer 6.1")]
public static bool get_cooperative(Session session, string _vm)
{
return (bool)session.proxy.vm_get_cooperative(session.uuid, _vm ?? "").parse();
}
///
/// Return true if the VM is currently 'co-operative' i.e. is expected to reach a balloon target and actually has done
/// First published in XenServer 5.6.
/// Deprecated since XenServer 6.1.
///
/// The session
/// The opaque_ref of the given vm
[Deprecated("XenServer 6.1")]
public static XenRef async_get_cooperative(Session session, string _vm)
{
return XenRef.Create(session.proxy.async_vm_get_cooperative(session.uuid, _vm ?? "").parse());
}
///
/// Set the shadow memory multiplier on a halted VM
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
/// The new shadow memory multiplier to set
public static void set_HVM_shadow_multiplier(Session session, string _vm, double _value)
{
session.proxy.vm_set_hvm_shadow_multiplier(session.uuid, _vm ?? "", _value).parse();
}
///
/// Set the shadow memory multiplier on a running VM
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The new shadow memory multiplier to set
public static void set_shadow_multiplier_live(Session session, string _vm, double _multiplier)
{
session.proxy.vm_set_shadow_multiplier_live(session.uuid, _vm ?? "", _multiplier).parse();
}
///
/// Set the shadow memory multiplier on a running VM
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The new shadow memory multiplier to set
public static XenRef async_set_shadow_multiplier_live(Session session, string _vm, double _multiplier)
{
return XenRef.Create(session.proxy.async_vm_set_shadow_multiplier_live(session.uuid, _vm ?? "", _multiplier).parse());
}
///
/// Set the maximum number of VCPUs for a halted VM
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
/// The new maximum number of VCPUs
public static void set_VCPUs_max(Session session, string _vm, long _value)
{
session.proxy.vm_set_vcpus_max(session.uuid, _vm ?? "", _value.ToString()).parse();
}
///
/// Set the number of startup VCPUs for a halted VM
/// First published in XenServer 5.6.
///
/// The session
/// The opaque_ref of the given vm
/// The new maximum number of VCPUs
public static void set_VCPUs_at_startup(Session session, string _vm, long _value)
{
session.proxy.vm_set_vcpus_at_startup(session.uuid, _vm ?? "", _value.ToString()).parse();
}
///
/// Send the given key as a sysrq to this VM. The key is specified as a single character (a String of length 1). This can only be called when the specified VM is in the Running state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The key to send
public static void send_sysrq(Session session, string _vm, string _key)
{
session.proxy.vm_send_sysrq(session.uuid, _vm ?? "", _key ?? "").parse();
}
///
/// Send the given key as a sysrq to this VM. The key is specified as a single character (a String of length 1). This can only be called when the specified VM is in the Running state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The key to send
public static XenRef async_send_sysrq(Session session, string _vm, string _key)
{
return XenRef.Create(session.proxy.async_vm_send_sysrq(session.uuid, _vm ?? "", _key ?? "").parse());
}
///
/// Send the named trigger to this VM. This can only be called when the specified VM is in the Running state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The trigger to send
public static void send_trigger(Session session, string _vm, string _trigger)
{
session.proxy.vm_send_trigger(session.uuid, _vm ?? "", _trigger ?? "").parse();
}
///
/// Send the named trigger to this VM. This can only be called when the specified VM is in the Running state.
/// First published in XenServer 4.0.
///
/// The session
/// The opaque_ref of the given vm
/// The trigger to send
public static XenRef async_send_trigger(Session session, string _vm, string _trigger)
{
return XenRef.Create(session.proxy.async_vm_send_trigger(session.uuid, _vm ?? "", _trigger ?? "").parse());
}
///
/// Returns the maximum amount of guest memory which will fit, together with overheads, in the supplied amount of physical memory. If 'exact' is true then an exact calculation is performed using the VM's current settings. If 'exact' is false then a more conservative approximation is used
/// First published in XenServer 4.1.
///
/// The session
/// The opaque_ref of the given vm
/// Total amount of physical RAM to fit within
/// If false the limit is calculated with the guest's current exact configuration. Otherwise a more approximate calculation is performed
public static long maximise_memory(Session session, string _vm, long _total, bool _approximate)
{
return long.Parse((string)session.proxy.vm_maximise_memory(session.uuid, _vm ?? "", _total.ToString(), _approximate).parse());
}
///
/// Returns the maximum amount of guest memory which will fit, together with overheads, in the supplied amount of physical memory. If 'exact' is true then an exact calculation is performed using the VM's current settings. If 'exact' is false then a more conservative approximation is used
/// First published in XenServer 4.1.
///
/// The session
/// The opaque_ref of the given vm
/// Total amount of physical RAM to fit within
/// If false the limit is calculated with the guest's current exact configuration. Otherwise a more approximate calculation is performed
public static XenRef async_maximise_memory(Session session, string _vm, long _total, bool _approximate)
{
return XenRef.Create(session.proxy.async_vm_maximise_memory(session.uuid, _vm ?? "", _total.ToString(), _approximate).parse());
}
///
/// Migrate the VM to another host. This can only be called when the specified VM is in the Running state.
/// First published in XenServer 6.1.
///
/// The session
/// The opaque_ref of the given vm
/// The result of a Host.migrate_receive call.
/// Live migration
/// Map of source VDI to destination SR
/// Map of source VIF to destination network
/// Other parameters
public static XenRef migrate_send(Session session, string _vm, Dictionary _dest, bool _live, Dictionary, XenRef> _vdi_map, Dictionary, XenRef> _vif_map, Dictionary _options)
{
return XenRef.Create(session.proxy.vm_migrate_send(session.uuid, _vm ?? "", Maps.convert_to_proxy_string_string(_dest), _live, Maps.convert_to_proxy_XenRefVDI_XenRefSR(_vdi_map), Maps.convert_to_proxy_XenRefVIF_XenRefNetwork(_vif_map), Maps.convert_to_proxy_string_string(_options)).parse());
}
///
/// Migrate the VM to another host. This can only be called when the specified VM is in the Running state.
/// First published in XenServer 6.1.
///
/// The session
/// The opaque_ref of the given vm
/// The result of a Host.migrate_receive call.
/// Live migration
/// Map of source VDI to destination SR
/// Map of source VIF to destination network
/// Other parameters
public static XenRef async_migrate_send(Session session, string _vm, Dictionary _dest, bool _live, Dictionary, XenRef> _vdi_map, Dictionary, XenRef> _vif_map, Dictionary _options)
{
return XenRef.Create(session.proxy.async_vm_migrate_send(session.uuid, _vm ?? "", Maps.convert_to_proxy_string_string(_dest), _live, Maps.convert_to_proxy_XenRefVDI_XenRefSR(_vdi_map), Maps.convert_to_proxy_XenRefVIF_XenRefNetwork(_vif_map), Maps.convert_to_proxy_string_string(_options)).parse());
}
///
/// Assert whether a VM can be migrated to the specified destination.
/// First published in XenServer 6.1.
///
/// The session
/// The opaque_ref of the given vm
/// The result of a VM.migrate_receive call.
/// Live migration
/// Map of source VDI to destination SR
/// Map of source VIF to destination network
/// Other parameters
public static void assert_can_migrate(Session session, string _vm, Dictionary _dest, bool _live, Dictionary, XenRef> _vdi_map, Dictionary, XenRef> _vif_map, Dictionary _options)
{
session.proxy.vm_assert_can_migrate(session.uuid, _vm ?? "", Maps.convert_to_proxy_string_string(_dest), _live, Maps.convert_to_proxy_XenRefVDI_XenRefSR(_vdi_map), Maps.convert_to_proxy_XenRefVIF_XenRefNetwork(_vif_map), Maps.convert_to_proxy_string_string(_options)).parse();
}
///
/// Assert whether a VM can be migrated to the specified destination.
/// First published in XenServer 6.1.
///
/// The session
/// The opaque_ref of the given vm
/// The result of a VM.migrate_receive call.
/// Live migration
/// Map of source VDI to destination SR
/// Map of source VIF to destination network
/// Other parameters
public static XenRef async_assert_can_migrate(Session session, string _vm, Dictionary _dest, bool _live, Dictionary, XenRef> _vdi_map, Dictionary, XenRef> _vif_map, Dictionary