mirror of
https://github.com/xcp-ng/xenadmin.git
synced 2025-01-20 07:19:18 +01:00
Updated bindings with the latest API objects.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
This commit is contained in:
parent
c31703df3c
commit
c2e71875af
@ -91,6 +91,15 @@ namespace XenAPI
|
||||
return false;
|
||||
}
|
||||
|
||||
internal static List<Auth> ProxyArrayToObjectList(Proxy_Auth[] input)
|
||||
{
|
||||
var result = new List<Auth>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Auth(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Auth server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -142,6 +142,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._mime_type, other._mime_type);
|
||||
}
|
||||
|
||||
internal static List<Blob> ProxyArrayToObjectList(Proxy_Blob[] input)
|
||||
{
|
||||
var result = new List<Blob>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Blob(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Blob server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -149,6 +149,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._links_up, other._links_up);
|
||||
}
|
||||
|
||||
internal static List<Bond> ProxyArrayToObjectList(Proxy_Bond[] input)
|
||||
{
|
||||
var result = new List<Bond>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Bond(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Bond server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -128,6 +128,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._other_config, other._other_config);
|
||||
}
|
||||
|
||||
internal static List<Console> ProxyArrayToObjectList(Proxy_Console[] input)
|
||||
{
|
||||
var result = new List<Console>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Console(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Console server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -121,6 +121,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._other_config, other._other_config);
|
||||
}
|
||||
|
||||
internal static List<Crashdump> ProxyArrayToObjectList(Proxy_Crashdump[] input)
|
||||
{
|
||||
var result = new List<Crashdump>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Crashdump(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Crashdump server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -107,6 +107,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._introduced_SRs, other._introduced_SRs);
|
||||
}
|
||||
|
||||
internal static List<DR_task> ProxyArrayToObjectList(Proxy_DR_task[] input)
|
||||
{
|
||||
var result = new List<DR_task>();
|
||||
foreach (var item in input)
|
||||
result.Add(new DR_task(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, DR_task server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -149,6 +149,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._value, other._value);
|
||||
}
|
||||
|
||||
internal static List<Data_source> ProxyArrayToObjectList(Proxy_Data_source[] input)
|
||||
{
|
||||
var result = new List<Data_source>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Data_source(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Data_source server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -142,6 +142,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._host, other._host);
|
||||
}
|
||||
|
||||
internal static List<Feature> ProxyArrayToObjectList(Proxy_Feature[] input)
|
||||
{
|
||||
var result = new List<Feature>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Feature(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Feature server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -261,6 +261,9 @@
|
||||
<data name="COULD_NOT_IMPORT_DATABASE" xml:space="preserve">
|
||||
<value>An error occurred while attempting to import a database from a metadata VDI</value>
|
||||
</data>
|
||||
<data name="COULD_NOT_UPDATE_IGMP_SNOOPING_EVERYWHERE" xml:space="preserve">
|
||||
<value>The IGMP Snooping setting cannot be applied for some of the host, network(s).</value>
|
||||
</data>
|
||||
<data name="CPU_FEATURE_MASKING_NOT_SUPPORTED" xml:space="preserve">
|
||||
<value>The CPU does not support masking of features.</value>
|
||||
</data>
|
||||
@ -687,6 +690,9 @@
|
||||
<data name="NETWORK_CONTAINS_VIF" xml:space="preserve">
|
||||
<value>The network contains active VIFs ({0}) and cannot be deleted.</value>
|
||||
</data>
|
||||
<data name="NETWORK_INCOMPATIBLE_PURPOSES" xml:space="preserve">
|
||||
<value>You tried to add a purpose to a network but the new purpose is not compatible with an existing purpose of the network or other networks.</value>
|
||||
</data>
|
||||
<data name="NETWORK_UNMANAGED" xml:space="preserve">
|
||||
<value>The network is not managed by xapi.</value>
|
||||
</data>
|
||||
@ -711,6 +717,9 @@
|
||||
<data name="NO_MORE_REDO_LOGS_ALLOWED" xml:space="preserve">
|
||||
<value>The upper limit of active redo log instances was reached.</value>
|
||||
</data>
|
||||
<data name="NVIDIA_TOOLS_ERROR" xml:space="preserve">
|
||||
<value>Nvidia tools error. Please ensure that the latest Nvidia tools are installed</value>
|
||||
</data>
|
||||
<data name="OBJECT_NOLONGER_EXISTS" xml:space="preserve">
|
||||
<value>The specified object no longer exists.</value>
|
||||
</data>
|
||||
@ -735,6 +744,9 @@
|
||||
<data name="OUT_OF_SPACE" xml:space="preserve">
|
||||
<value>There is not enough space to upload the update</value>
|
||||
</data>
|
||||
<data name="PASSTHROUGH_NOT_ENABLED" xml:space="preserve">
|
||||
<value>The passthrough_enabled must be true before passthrough usb to vm.</value>
|
||||
</data>
|
||||
<data name="PATCH_ALREADY_APPLIED" xml:space="preserve">
|
||||
<value>The update {0} has already been applied</value>
|
||||
</data>
|
||||
@ -915,6 +927,9 @@
|
||||
<data name="PROVISION_ONLY_ALLOWED_ON_TEMPLATE" xml:space="preserve">
|
||||
<value>The provision call can only be invoked on templates, not regular VMs.</value>
|
||||
</data>
|
||||
<data name="PUSB_VDI_CONFLICT" xml:space="preserve">
|
||||
<value>The VDI corresponding to this PUSB has existing VBDs.</value>
|
||||
</data>
|
||||
<data name="PVS_CACHE_STORAGE_ALREADY_PRESENT" xml:space="preserve">
|
||||
<value>The PVS site already has cache storage configured for the host.</value>
|
||||
</data>
|
||||
@ -1223,6 +1238,12 @@ Authorized Roles: {1}</value>
|
||||
<data name="SR_BACKEND_FAILURE_226" xml:space="preserve">
|
||||
<value>Invalid local path</value>
|
||||
</data>
|
||||
<data name="SR_BACKEND_FAILURE_227" xml:space="preserve">
|
||||
<value>Given SMB version is not allowed. Choose either 1.0 or 3.0</value>
|
||||
</data>
|
||||
<data name="SR_BACKEND_FAILURE_228" xml:space="preserve">
|
||||
<value>Require "-o" along with xe-mount-isosr</value>
|
||||
</data>
|
||||
<data name="SR_BACKEND_FAILURE_24" xml:space="preserve">
|
||||
<value>The specified VDI is currently in use</value>
|
||||
</data>
|
||||
@ -1409,6 +1430,9 @@ Authorized Roles: {1}</value>
|
||||
<data name="SR_BACKEND_FAILURE_46" xml:space="preserve">
|
||||
<value>The VDI is not available</value>
|
||||
</data>
|
||||
<data name="SR_BACKEND_FAILURE_460" xml:space="preserve">
|
||||
<value>Failed to calculate changed blocks for given VDIs.</value>
|
||||
</data>
|
||||
<data name="SR_BACKEND_FAILURE_47" xml:space="preserve">
|
||||
<value>The storage repository is not available</value>
|
||||
</data>
|
||||
@ -1649,6 +1673,9 @@ Authorized Roles: {1}</value>
|
||||
<data name="TOO_MANY_STORAGE_MIGRATES" xml:space="preserve">
|
||||
<value>You reached the maximal number of concurrently migrating VMs.</value>
|
||||
</data>
|
||||
<data name="TOO_MANY_VUSBS" xml:space="preserve">
|
||||
<value>The VM has too many VUSBs.</value>
|
||||
</data>
|
||||
<data name="TRANSPORT_PIF_NOT_CONFIGURED" xml:space="preserve">
|
||||
<value>The tunnel transport PIF has no IP configuration set.</value>
|
||||
</data>
|
||||
@ -1694,6 +1721,21 @@ Authorized Roles: {1}</value>
|
||||
<data name="UPDATE_PRECHECK_FAILED_WRONG_SERVER_VERSION" xml:space="preserve">
|
||||
<value>The update precheck stage failed: the server is of an incorrect version.</value>
|
||||
</data>
|
||||
<data name="USB_ALREADY_ATTACHED" xml:space="preserve">
|
||||
<value>The USB device is currently attached to a VM.</value>
|
||||
</data>
|
||||
<data name="USB_GROUP_CONFLICT" xml:space="preserve">
|
||||
<value>USB_groups are currently restricted to contain no more than one VUSB.</value>
|
||||
</data>
|
||||
<data name="USB_GROUP_CONTAINS_NO_PUSBS" xml:space="preserve">
|
||||
<value>The USB group does not contain any PUSBs.</value>
|
||||
</data>
|
||||
<data name="USB_GROUP_CONTAINS_PUSB" xml:space="preserve">
|
||||
<value>The USB group contains active PUSBs and cannot be deleted.</value>
|
||||
</data>
|
||||
<data name="USB_GROUP_CONTAINS_VUSB" xml:space="preserve">
|
||||
<value>The USB group contains active VUSBs and cannot be deleted.</value>
|
||||
</data>
|
||||
<data name="USER_IS_NOT_LOCAL_SUPERUSER" xml:space="preserve">
|
||||
<value>Only the local superuser can perform this operation</value>
|
||||
</data>
|
||||
@ -1793,6 +1835,9 @@ Authorized Roles: {1}</value>
|
||||
<data name="VDI_TOO_SMALL" xml:space="preserve">
|
||||
<value>The VDI is too small. Please resize it to at least the minimum size.</value>
|
||||
</data>
|
||||
<data name="VGPU_DESTINATION_INCOMPATIBLE" xml:space="preserve">
|
||||
<value>The VGPU is not compatible with any PGPU in the destination.</value>
|
||||
</data>
|
||||
<data name="VGPU_TYPE_NOT_COMPATIBLE_WITH_RUNNING_TYPE" xml:space="preserve">
|
||||
<value>The VM cannot start because all GPUs are fully used or are running other types of virtual GPU</value>
|
||||
</data>
|
||||
@ -1845,7 +1890,7 @@ Authorized Roles: {1}</value>
|
||||
<value>You attempted an operation on a VM that needed it to be in state '{1}' but was in state '{2}'.</value>
|
||||
</data>
|
||||
<data name="VM_BIOS_STRINGS_ALREADY_SET" xml:space="preserve">
|
||||
<value>The BIOS strings for this VM have already been set and cannot be changed anymore.</value>
|
||||
<value>The BIOS strings for this VM have already been set and cannot be changed.</value>
|
||||
</data>
|
||||
<data name="VM_CALL_PLUGIN_RATE_LIMIT" xml:space="preserve">
|
||||
<value>There is a minimal interval required between consecutive plugin calls made on the same VM, please wait before retry.</value>
|
||||
@ -1886,11 +1931,14 @@ Authorized Roles: {1}</value>
|
||||
<data name="VM_HAS_VGPU" xml:space="preserve">
|
||||
<value>This operation could not be performed, because the VM has one or more virtual GPUs.</value>
|
||||
</data>
|
||||
<data name="VM_HAS_VUSBS" xml:space="preserve">
|
||||
<value>The operation is not allowed when the VM has VUSBs.</value>
|
||||
</data>
|
||||
<data name="VM_HOST_INCOMPATIBLE_VERSION" xml:space="preserve">
|
||||
<value>This VM operation cannot be performed on an older-versioned host during an upgrade.</value>
|
||||
</data>
|
||||
<data name="VM_HOST_INCOMPATIBLE_VERSION_MIGRATE" xml:space="preserve">
|
||||
<value>You attempted to migrate a VM to a destination host running a version of XenServer older than the source host.</value>
|
||||
<value>You attempted to migrate a VM to a destination host which is older than the source host.</value>
|
||||
</data>
|
||||
<data name="VM_HOST_INCOMPATIBLE_VIRTUAL_HARDWARE_PLATFORM_VERSION" xml:space="preserve">
|
||||
<value>The VM's Virtual Hardware Platform version is incompatible with this host.</value>
|
||||
@ -1994,6 +2042,9 @@ Authorized Roles: {1}</value>
|
||||
<data name="VM_REQUIRES_VGPU" xml:space="preserve">
|
||||
<value>The VM cannot start because no GPU is available</value>
|
||||
</data>
|
||||
<data name="VM_REQUIRES_VUSB" xml:space="preserve">
|
||||
<value>You attempted to run a VM on a host on which the VUSB required by the VM cannot be allocated on any PUSBs in the USB_group needed by the VM.</value>
|
||||
</data>
|
||||
<data name="VM_REVERT_FAILED" xml:space="preserve">
|
||||
<value>An error occurred while reverting the specified virtual machine to the specified snapshot</value>
|
||||
</data>
|
||||
|
@ -163,6 +163,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._enabled_VGPU_types, other._enabled_VGPU_types);
|
||||
}
|
||||
|
||||
internal static List<GPU_group> ProxyArrayToObjectList(Proxy_GPU_group[] input)
|
||||
{
|
||||
var result = new List<GPU_group>();
|
||||
foreach (var item in input)
|
||||
result.Add(new GPU_group(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, GPU_group server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -1,19 +1,19 @@
|
||||
/*
|
||||
* 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
|
||||
@ -140,7 +140,7 @@ namespace XenAPI
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
///
|
||||
/// </summary>
|
||||
/// <typeparam name="T"></typeparam>
|
||||
/// <param name="opaqueRefs">Must not be null.</param>
|
||||
@ -271,16 +271,6 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static List<Data_source> Proxy_Data_sourceArrayToData_sourceList(Proxy_Data_source[] input)
|
||||
{
|
||||
List<Data_source> result = new List<Data_source>();
|
||||
foreach (Proxy_Data_source pd in input)
|
||||
{
|
||||
result.Add(new Data_source(pd));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static Object EnumParseDefault(Type t, string s)
|
||||
{
|
||||
try
|
||||
|
@ -98,6 +98,7 @@ namespace XenAPI
|
||||
Dictionary<string, string> chipset_info,
|
||||
List<XenRef<PCI>> PCIs,
|
||||
List<XenRef<PGPU>> PGPUs,
|
||||
List<XenRef<PUSB>> PUSBs,
|
||||
bool ssl_legacy,
|
||||
Dictionary<string, string> guest_VCPUs_params,
|
||||
host_display display,
|
||||
@ -154,6 +155,7 @@ namespace XenAPI
|
||||
this.chipset_info = chipset_info;
|
||||
this.PCIs = PCIs;
|
||||
this.PGPUs = PGPUs;
|
||||
this.PUSBs = PUSBs;
|
||||
this.ssl_legacy = ssl_legacy;
|
||||
this.guest_VCPUs_params = guest_VCPUs_params;
|
||||
this.display = display;
|
||||
@ -222,6 +224,7 @@ namespace XenAPI
|
||||
chipset_info = update.chipset_info;
|
||||
PCIs = update.PCIs;
|
||||
PGPUs = update.PGPUs;
|
||||
PUSBs = update.PUSBs;
|
||||
ssl_legacy = update.ssl_legacy;
|
||||
guest_VCPUs_params = update.guest_VCPUs_params;
|
||||
display = update.display;
|
||||
@ -281,6 +284,7 @@ namespace XenAPI
|
||||
chipset_info = proxy.chipset_info == null ? null : Maps.convert_from_proxy_string_string(proxy.chipset_info);
|
||||
PCIs = proxy.PCIs == null ? null : XenRef<PCI>.Create(proxy.PCIs);
|
||||
PGPUs = proxy.PGPUs == null ? null : XenRef<PGPU>.Create(proxy.PGPUs);
|
||||
PUSBs = proxy.PUSBs == null ? null : XenRef<PUSB>.Create(proxy.PUSBs);
|
||||
ssl_legacy = (bool)proxy.ssl_legacy;
|
||||
guest_VCPUs_params = proxy.guest_VCPUs_params == null ? null : Maps.convert_from_proxy_string_string(proxy.guest_VCPUs_params);
|
||||
display = proxy.display == null ? (host_display) 0 : (host_display)Helper.EnumParseDefault(typeof(host_display), (string)proxy.display);
|
||||
@ -341,6 +345,7 @@ namespace XenAPI
|
||||
result_.chipset_info = Maps.convert_to_proxy_string_string(chipset_info);
|
||||
result_.PCIs = (PCIs != null) ? Helper.RefListToStringArray(PCIs) : new string[] {};
|
||||
result_.PGPUs = (PGPUs != null) ? Helper.RefListToStringArray(PGPUs) : new string[] {};
|
||||
result_.PUSBs = (PUSBs != null) ? Helper.RefListToStringArray(PUSBs) : new string[] {};
|
||||
result_.ssl_legacy = ssl_legacy;
|
||||
result_.guest_VCPUs_params = Maps.convert_to_proxy_string_string(guest_VCPUs_params);
|
||||
result_.display = host_display_helper.ToString(display);
|
||||
@ -405,6 +410,7 @@ namespace XenAPI
|
||||
chipset_info = Maps.convert_from_proxy_string_string(Marshalling.ParseHashTable(table, "chipset_info"));
|
||||
PCIs = Marshalling.ParseSetRef<PCI>(table, "PCIs");
|
||||
PGPUs = Marshalling.ParseSetRef<PGPU>(table, "PGPUs");
|
||||
PUSBs = Marshalling.ParseSetRef<PUSB>(table, "PUSBs");
|
||||
ssl_legacy = Marshalling.ParseBool(table, "ssl_legacy");
|
||||
guest_VCPUs_params = Maps.convert_from_proxy_string_string(Marshalling.ParseHashTable(table, "guest_VCPUs_params"));
|
||||
display = (host_display)Helper.EnumParseDefault(typeof(host_display), Marshalling.ParseString(table, "display"));
|
||||
@ -471,6 +477,7 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._chipset_info, other._chipset_info) &&
|
||||
Helper.AreEqual2(this._PCIs, other._PCIs) &&
|
||||
Helper.AreEqual2(this._PGPUs, other._PGPUs) &&
|
||||
Helper.AreEqual2(this._PUSBs, other._PUSBs) &&
|
||||
Helper.AreEqual2(this._ssl_legacy, other._ssl_legacy) &&
|
||||
Helper.AreEqual2(this._guest_VCPUs_params, other._guest_VCPUs_params) &&
|
||||
Helper.AreEqual2(this._display, other._display) &&
|
||||
@ -480,6 +487,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._features, other._features);
|
||||
}
|
||||
|
||||
internal static List<Host> ProxyArrayToObjectList(Proxy_Host[] input)
|
||||
{
|
||||
var result = new List<Host>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Host(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Host server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
@ -1260,6 +1276,20 @@ namespace XenAPI
|
||||
return XenRef<PGPU>.Create(session.proxy.host_get_pgpus(session.uuid, _host ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the PUSBs field of the given host.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_host">The opaque_ref of the given host</param>
|
||||
public static List<XenRef<PUSB>> get_PUSBs(Session session, string _host)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.host_get_pusbs(session.uuid, _host);
|
||||
else
|
||||
return XenRef<PUSB>.Create(session.proxy.host_get_pusbs(session.uuid, _host ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the ssl_legacy field of the given host.
|
||||
/// First published in XenServer 7.0.
|
||||
@ -2132,7 +2162,7 @@ namespace XenAPI
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.host_get_data_sources(session.uuid, _host);
|
||||
else
|
||||
return Helper.Proxy_Data_sourceArrayToData_sourceList(session.proxy.host_get_data_sources(session.uuid, _host ?? "").parse());
|
||||
return Data_source.ProxyArrayToObjectList(session.proxy.host_get_data_sources(session.uuid, _host ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -2796,7 +2826,7 @@ namespace XenAPI
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the installed server SSL certificate.
|
||||
/// Get the installed server public TLS certificate.
|
||||
/// First published in XenServer 5.5.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
@ -2810,7 +2840,7 @@ namespace XenAPI
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the installed server SSL certificate.
|
||||
/// Get the installed server public TLS certificate.
|
||||
/// First published in XenServer 5.5.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
@ -4044,6 +4074,26 @@ namespace XenAPI
|
||||
}
|
||||
private List<XenRef<PGPU>> _PGPUs = new List<XenRef<PGPU>>() {};
|
||||
|
||||
/// <summary>
|
||||
/// List of physical USBs in the host
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(XenRefListConverter<PUSB>))]
|
||||
public virtual List<XenRef<PUSB>> PUSBs
|
||||
{
|
||||
get { return _PUSBs; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _PUSBs))
|
||||
{
|
||||
_PUSBs = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("PUSBs");
|
||||
}
|
||||
}
|
||||
}
|
||||
private List<XenRef<PUSB>> _PUSBs = new List<XenRef<PUSB>>() {};
|
||||
|
||||
/// <summary>
|
||||
/// Allow SSLv3 protocol and ciphersuites as used by older XenServers. This controls both incoming and outgoing connections. When this is set to a different value, the host immediately restarts its SSL/TLS listening service; typically this takes less than a second but existing connections to it will be broken. XenAPI login sessions will remain valid.
|
||||
/// First published in XenServer 7.0.
|
||||
|
@ -184,6 +184,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._other_config, other._other_config);
|
||||
}
|
||||
|
||||
internal static List<Host_cpu> ProxyArrayToObjectList(Proxy_Host_cpu[] input)
|
||||
{
|
||||
var result = new List<Host_cpu>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Host_cpu(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Host_cpu server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -128,6 +128,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._other_config, other._other_config);
|
||||
}
|
||||
|
||||
internal static List<Host_crashdump> ProxyArrayToObjectList(Proxy_Host_crashdump[] input)
|
||||
{
|
||||
var result = new List<Host_crashdump>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Host_crashdump(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Host_crashdump server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -135,6 +135,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._other_config, other._other_config);
|
||||
}
|
||||
|
||||
internal static List<Host_metrics> ProxyArrayToObjectList(Proxy_Host_metrics[] input)
|
||||
{
|
||||
var result = new List<Host_metrics>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Host_metrics(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Host_metrics server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -163,6 +163,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._other_config, other._other_config);
|
||||
}
|
||||
|
||||
internal static List<Host_patch> ProxyArrayToObjectList(Proxy_Host_patch[] input)
|
||||
{
|
||||
var result = new List<Host_patch>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Host_patch(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Host_patch server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -1020,6 +1020,13 @@ namespace XenAPI
|
||||
return Rpc<bool>("pool.get_live_patching_disabled", new JArray(session, _pool ?? ""), serializer);
|
||||
}
|
||||
|
||||
public bool pool_get_igmp_snooping_enabled(string session, string _pool)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<bool>("pool.get_igmp_snooping_enabled", new JArray(session, _pool ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void pool_set_name_label(string session, string _pool, string _name_label)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
@ -1755,6 +1762,20 @@ namespace XenAPI
|
||||
return Rpc<XenRef<Task>>("Async.pool.disable_ssl_legacy", new JArray(session, _pool ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void pool_set_igmp_snooping_enabled(string session, string _pool, bool _value)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("pool.set_igmp_snooping_enabled", new JArray(session, _pool ?? "", _value), serializer);
|
||||
}
|
||||
|
||||
public XenRef<Task> async_pool_set_igmp_snooping_enabled(string session, string _pool, bool _value)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Task>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<Task>>("Async.pool.set_igmp_snooping_enabled", new JArray(session, _pool ?? "", _value), serializer);
|
||||
}
|
||||
|
||||
public bool pool_has_extension(string session, string _pool, string _name)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
@ -2490,6 +2511,13 @@ namespace XenAPI
|
||||
return Rpc<List<XenRef<VBD>>>("VM.get_VBDs", new JArray(session, _vm ?? ""), serializer);
|
||||
}
|
||||
|
||||
public List<XenRef<VUSB>> vm_get_vusbs(string session, string _vm)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefListConverter<VUSB>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<List<XenRef<VUSB>>>("VM.get_VUSBs", new JArray(session, _vm ?? ""), serializer);
|
||||
}
|
||||
|
||||
public List<XenRef<Crashdump>> vm_get_crash_dumps(string session, string _vm)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefListConverter<Crashdump>()};
|
||||
@ -3722,6 +3750,20 @@ namespace XenAPI
|
||||
return Rpc<XenRef<Task>>("Async.VM.migrate_send", new JArray(session, _vm ?? "", _dest == null ? new JObject() : JObject.FromObject(_dest, serializer), _live, _vdi_map == null ? new JObject() : JObject.FromObject(_vdi_map, serializer), _vif_map == null ? new JObject() : JObject.FromObject(_vif_map, serializer), _options == null ? new JObject() : JObject.FromObject(_options, serializer)), serializer);
|
||||
}
|
||||
|
||||
public XenRef<VM> vm_migrate_send(string session, string _vm, Dictionary<string, string> _dest, bool _live, Dictionary<XenRef<VDI>, XenRef<SR>> _vdi_map, Dictionary<XenRef<VIF>, XenRef<Network>> _vif_map, Dictionary<string, string> _options, Dictionary<XenRef<VGPU>, XenRef<GPU_group>> _vgpu_map)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<VM>(), new XenRefXenRefMapConverter<VDI, SR>(), new XenRefXenRefMapConverter<VIF, Network>(), new XenRefXenRefMapConverter<VGPU, GPU_group>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<VM>>("VM.migrate_send", new JArray(session, _vm ?? "", _dest == null ? new JObject() : JObject.FromObject(_dest, serializer), _live, _vdi_map == null ? new JObject() : JObject.FromObject(_vdi_map, serializer), _vif_map == null ? new JObject() : JObject.FromObject(_vif_map, serializer), _options == null ? new JObject() : JObject.FromObject(_options, serializer), _vgpu_map == null ? new JObject() : JObject.FromObject(_vgpu_map, serializer)), serializer);
|
||||
}
|
||||
|
||||
public XenRef<Task> async_vm_migrate_send(string session, string _vm, Dictionary<string, string> _dest, bool _live, Dictionary<XenRef<VDI>, XenRef<SR>> _vdi_map, Dictionary<XenRef<VIF>, XenRef<Network>> _vif_map, Dictionary<string, string> _options, Dictionary<XenRef<VGPU>, XenRef<GPU_group>> _vgpu_map)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Task>(), new XenRefXenRefMapConverter<VDI, SR>(), new XenRefXenRefMapConverter<VIF, Network>(), new XenRefXenRefMapConverter<VGPU, GPU_group>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<Task>>("Async.VM.migrate_send", new JArray(session, _vm ?? "", _dest == null ? new JObject() : JObject.FromObject(_dest, serializer), _live, _vdi_map == null ? new JObject() : JObject.FromObject(_vdi_map, serializer), _vif_map == null ? new JObject() : JObject.FromObject(_vif_map, serializer), _options == null ? new JObject() : JObject.FromObject(_options, serializer), _vgpu_map == null ? new JObject() : JObject.FromObject(_vgpu_map, serializer)), serializer);
|
||||
}
|
||||
|
||||
public void vm_assert_can_migrate(string session, string _vm, Dictionary<string, string> _dest, bool _live, Dictionary<XenRef<VDI>, XenRef<SR>> _vdi_map, Dictionary<XenRef<VIF>, XenRef<Network>> _vif_map, Dictionary<string, string> _options)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefXenRefMapConverter<VDI, SR>(), new XenRefXenRefMapConverter<VIF, Network>()};
|
||||
@ -3736,6 +3778,20 @@ namespace XenAPI
|
||||
return Rpc<XenRef<Task>>("Async.VM.assert_can_migrate", new JArray(session, _vm ?? "", _dest == null ? new JObject() : JObject.FromObject(_dest, serializer), _live, _vdi_map == null ? new JObject() : JObject.FromObject(_vdi_map, serializer), _vif_map == null ? new JObject() : JObject.FromObject(_vif_map, serializer), _options == null ? new JObject() : JObject.FromObject(_options, serializer)), serializer);
|
||||
}
|
||||
|
||||
public void vm_assert_can_migrate(string session, string _vm, Dictionary<string, string> _dest, bool _live, Dictionary<XenRef<VDI>, XenRef<SR>> _vdi_map, Dictionary<XenRef<VIF>, XenRef<Network>> _vif_map, Dictionary<string, string> _options, Dictionary<XenRef<VGPU>, XenRef<GPU_group>> _vgpu_map)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefXenRefMapConverter<VDI, SR>(), new XenRefXenRefMapConverter<VIF, Network>(), new XenRefXenRefMapConverter<VGPU, GPU_group>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("VM.assert_can_migrate", new JArray(session, _vm ?? "", _dest == null ? new JObject() : JObject.FromObject(_dest, serializer), _live, _vdi_map == null ? new JObject() : JObject.FromObject(_vdi_map, serializer), _vif_map == null ? new JObject() : JObject.FromObject(_vif_map, serializer), _options == null ? new JObject() : JObject.FromObject(_options, serializer), _vgpu_map == null ? new JObject() : JObject.FromObject(_vgpu_map, serializer)), serializer);
|
||||
}
|
||||
|
||||
public XenRef<Task> async_vm_assert_can_migrate(string session, string _vm, Dictionary<string, string> _dest, bool _live, Dictionary<XenRef<VDI>, XenRef<SR>> _vdi_map, Dictionary<XenRef<VIF>, XenRef<Network>> _vif_map, Dictionary<string, string> _options, Dictionary<XenRef<VGPU>, XenRef<GPU_group>> _vgpu_map)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Task>(), new XenRefXenRefMapConverter<VDI, SR>(), new XenRefXenRefMapConverter<VIF, Network>(), new XenRefXenRefMapConverter<VGPU, GPU_group>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<Task>>("Async.VM.assert_can_migrate", new JArray(session, _vm ?? "", _dest == null ? new JObject() : JObject.FromObject(_dest, serializer), _live, _vdi_map == null ? new JObject() : JObject.FromObject(_vdi_map, serializer), _vif_map == null ? new JObject() : JObject.FromObject(_vif_map, serializer), _options == null ? new JObject() : JObject.FromObject(_options, serializer), _vgpu_map == null ? new JObject() : JObject.FromObject(_vgpu_map, serializer)), serializer);
|
||||
}
|
||||
|
||||
public VM vm_get_boot_record(string session, string _vm)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
@ -3897,6 +3953,20 @@ namespace XenAPI
|
||||
return Rpc<XenRef<Task>>("Async.VM.retrieve_wlb_recommendations", new JArray(session, _vm ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void vm_set_bios_strings(string session, string _vm, Dictionary<string, string> _value)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("VM.set_bios_strings", new JArray(session, _vm ?? "", _value == null ? new JObject() : JObject.FromObject(_value, serializer)), serializer);
|
||||
}
|
||||
|
||||
public XenRef<Task> async_vm_set_bios_strings(string session, string _vm, Dictionary<string, string> _value)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Task>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<Task>>("Async.VM.set_bios_strings", new JArray(session, _vm ?? "", _value == null ? new JObject() : JObject.FromObject(_value, serializer)), serializer);
|
||||
}
|
||||
|
||||
public void vm_copy_bios_strings(string session, string _vm, string _host)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Host>()};
|
||||
@ -5661,6 +5731,13 @@ namespace XenAPI
|
||||
return Rpc<List<XenRef<PGPU>>>("host.get_PGPUs", new JArray(session, _host ?? ""), serializer);
|
||||
}
|
||||
|
||||
public List<XenRef<PUSB>> host_get_pusbs(string session, string _host)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefListConverter<PUSB>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<List<XenRef<PUSB>>>("host.get_PUSBs", new JArray(session, _host ?? ""), serializer);
|
||||
}
|
||||
|
||||
public bool host_get_ssl_legacy(string session, string _host)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
@ -7215,6 +7292,13 @@ namespace XenAPI
|
||||
return Rpc<Dictionary<XenRef<VIF>, string>>("network.get_assigned_ips", new JArray(session, _network ?? ""), serializer);
|
||||
}
|
||||
|
||||
public List<network_purpose> network_get_purpose(string session, string _network)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<List<network_purpose>>("network.get_purpose", new JArray(session, _network ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void network_set_name_label(string session, string _network, string _label)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
@ -7320,6 +7404,34 @@ namespace XenAPI
|
||||
return Rpc<XenRef<Task>>("Async.network.set_default_locking_mode", new JArray(session, _network ?? "", _value.StringOf()), serializer);
|
||||
}
|
||||
|
||||
public void network_add_purpose(string session, string _network, network_purpose _value)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new network_purposeConverter()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("network.add_purpose", new JArray(session, _network ?? "", _value.StringOf()), serializer);
|
||||
}
|
||||
|
||||
public XenRef<Task> async_network_add_purpose(string session, string _network, network_purpose _value)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Task>(), new network_purposeConverter()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<Task>>("Async.network.add_purpose", new JArray(session, _network ?? "", _value.StringOf()), serializer);
|
||||
}
|
||||
|
||||
public void network_remove_purpose(string session, string _network, network_purpose _value)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new network_purposeConverter()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("network.remove_purpose", new JArray(session, _network ?? "", _value.StringOf()), serializer);
|
||||
}
|
||||
|
||||
public XenRef<Task> async_network_remove_purpose(string session, string _network, network_purpose _value)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Task>(), new network_purposeConverter()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<Task>>("Async.network.remove_purpose", new JArray(session, _network ?? "", _value.StringOf()), serializer);
|
||||
}
|
||||
|
||||
public List<XenRef<Network>> network_get_all(string session)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefListConverter<Network>()};
|
||||
@ -8125,6 +8237,13 @@ namespace XenAPI
|
||||
return Rpc<string[]>("PIF.get_capabilities", new JArray(session, _pif ?? ""), serializer);
|
||||
}
|
||||
|
||||
public pif_igmp_status pif_get_igmp_snooping_status(string session, string _pif)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new pif_igmp_statusConverter()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<pif_igmp_status>("PIF.get_igmp_snooping_status", new JArray(session, _pif ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void pif_set_other_config(string session, string _pif, Dictionary<string, string> _other_config)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
@ -10386,32 +10505,25 @@ namespace XenAPI
|
||||
return Rpc<XenRef<Task>>("Async.VDI.data_destroy", new JArray(session, _vdi ?? ""), serializer);
|
||||
}
|
||||
|
||||
public string vdi_export_changed_blocks(string session, string _vdi, string _vdi_to)
|
||||
public string vdi_list_changed_blocks(string session, string _vdi, string _vdi_to)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<VDI>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<string>("VDI.export_changed_blocks", new JArray(session, _vdi ?? "", _vdi_to ?? ""), serializer);
|
||||
return Rpc<string>("VDI.list_changed_blocks", new JArray(session, _vdi ?? "", _vdi_to ?? ""), serializer);
|
||||
}
|
||||
|
||||
public XenRef<Task> async_vdi_export_changed_blocks(string session, string _vdi, string _vdi_to)
|
||||
public XenRef<Task> async_vdi_list_changed_blocks(string session, string _vdi, string _vdi_to)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Task>(), new XenRefConverter<VDI>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<Task>>("Async.VDI.export_changed_blocks", new JArray(session, _vdi ?? "", _vdi_to ?? ""), serializer);
|
||||
return Rpc<XenRef<Task>>("Async.VDI.list_changed_blocks", new JArray(session, _vdi ?? "", _vdi_to ?? ""), serializer);
|
||||
}
|
||||
|
||||
public string[] vdi_get_nbd_info(string session, string _vdi)
|
||||
public List<Vdi_nbd_server_info> vdi_get_nbd_info(string session, string _vdi)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<string[]>("VDI.get_nbd_info", new JArray(session, _vdi ?? ""), serializer);
|
||||
}
|
||||
|
||||
public XenRef<Task> async_vdi_get_nbd_info(string session, string _vdi)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Task>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<Task>>("Async.VDI.get_nbd_info", new JArray(session, _vdi ?? ""), serializer);
|
||||
return Rpc<List<Vdi_nbd_server_info>>("VDI.get_nbd_info", new JArray(session, _vdi ?? ""), serializer);
|
||||
}
|
||||
|
||||
public List<XenRef<VDI>> vdi_get_all(string session)
|
||||
@ -12073,6 +12185,13 @@ namespace XenAPI
|
||||
return Rpc<bool>("PGPU.get_is_system_display_device", new JArray(session, _pgpu ?? ""), serializer);
|
||||
}
|
||||
|
||||
public Dictionary<string, string> pgpu_get_compatibility_metadata(string session, string _pgpu)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<Dictionary<string, string>>("PGPU.get_compatibility_metadata", new JArray(session, _pgpu ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void pgpu_set_other_config(string session, string _pgpu, Dictionary<string, string> _other_config)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
@ -12465,6 +12584,13 @@ namespace XenAPI
|
||||
return Rpc<XenRef<PGPU>>("VGPU.get_resident_on", new JArray(session, _vgpu ?? ""), serializer);
|
||||
}
|
||||
|
||||
public XenRef<PGPU> vgpu_get_scheduled_to_be_resident_on(string session, string _vgpu)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<PGPU>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<PGPU>>("VGPU.get_scheduled_to_be_resident_on", new JArray(session, _vgpu ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void vgpu_set_other_config(string session, string _vgpu, Dictionary<string, string> _other_config)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
@ -13263,5 +13389,460 @@ namespace XenAPI
|
||||
return Rpc<Dictionary<XenRef<SDN_controller>, SDN_controller>>("SDN_controller.get_all_records", new JArray(session), serializer);
|
||||
}
|
||||
|
||||
public Dictionary<XenRef<Vdi_nbd_server_info>, Vdi_nbd_server_info> vdi_nbd_server_info_get_all_records(string session)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new RecordConverter<Vdi_nbd_server_info>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<Dictionary<XenRef<Vdi_nbd_server_info>, Vdi_nbd_server_info>>("vdi_nbd_server_info.get_all_records", new JArray(session), serializer);
|
||||
}
|
||||
|
||||
public PUSB pusb_get_record(string session, string _pusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<PUSB>("PUSB.get_record", new JArray(session, _pusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public XenRef<PUSB> pusb_get_by_uuid(string session, string _uuid)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<PUSB>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<PUSB>>("PUSB.get_by_uuid", new JArray(session, _uuid ?? ""), serializer);
|
||||
}
|
||||
|
||||
public string pusb_get_uuid(string session, string _pusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<string>("PUSB.get_uuid", new JArray(session, _pusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public XenRef<USB_group> pusb_get_usb_group(string session, string _pusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<USB_group>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<USB_group>>("PUSB.get_USB_group", new JArray(session, _pusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public XenRef<Host> pusb_get_host(string session, string _pusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Host>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<Host>>("PUSB.get_host", new JArray(session, _pusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public string pusb_get_path(string session, string _pusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<string>("PUSB.get_path", new JArray(session, _pusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public string pusb_get_vendor_id(string session, string _pusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<string>("PUSB.get_vendor_id", new JArray(session, _pusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public string pusb_get_vendor_desc(string session, string _pusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<string>("PUSB.get_vendor_desc", new JArray(session, _pusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public string pusb_get_product_id(string session, string _pusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<string>("PUSB.get_product_id", new JArray(session, _pusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public string pusb_get_product_desc(string session, string _pusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<string>("PUSB.get_product_desc", new JArray(session, _pusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public string pusb_get_serial(string session, string _pusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<string>("PUSB.get_serial", new JArray(session, _pusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public string pusb_get_version(string session, string _pusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<string>("PUSB.get_version", new JArray(session, _pusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public string pusb_get_description(string session, string _pusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<string>("PUSB.get_description", new JArray(session, _pusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public bool pusb_get_passthrough_enabled(string session, string _pusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<bool>("PUSB.get_passthrough_enabled", new JArray(session, _pusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public Dictionary<string, string> pusb_get_other_config(string session, string _pusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<Dictionary<string, string>>("PUSB.get_other_config", new JArray(session, _pusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void pusb_set_other_config(string session, string _pusb, Dictionary<string, string> _other_config)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("PUSB.set_other_config", new JArray(session, _pusb ?? "", _other_config == null ? new JObject() : JObject.FromObject(_other_config, serializer)), serializer);
|
||||
}
|
||||
|
||||
public void pusb_add_to_other_config(string session, string _pusb, string _key, string _value)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("PUSB.add_to_other_config", new JArray(session, _pusb ?? "", _key ?? "", _value ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void pusb_remove_from_other_config(string session, string _pusb, string _key)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("PUSB.remove_from_other_config", new JArray(session, _pusb ?? "", _key ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void pusb_scan(string session, string _host)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Host>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("PUSB.scan", new JArray(session, _host ?? ""), serializer);
|
||||
}
|
||||
|
||||
public XenRef<Task> async_pusb_scan(string session, string _host)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Task>(), new XenRefConverter<Host>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<Task>>("Async.PUSB.scan", new JArray(session, _host ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void pusb_set_passthrough_enabled(string session, string _pusb, bool _value)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("PUSB.set_passthrough_enabled", new JArray(session, _pusb ?? "", _value), serializer);
|
||||
}
|
||||
|
||||
public XenRef<Task> async_pusb_set_passthrough_enabled(string session, string _pusb, bool _value)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Task>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<Task>>("Async.PUSB.set_passthrough_enabled", new JArray(session, _pusb ?? "", _value), serializer);
|
||||
}
|
||||
|
||||
public List<XenRef<PUSB>> pusb_get_all(string session)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefListConverter<PUSB>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<List<XenRef<PUSB>>>("PUSB.get_all", new JArray(session), serializer);
|
||||
}
|
||||
|
||||
public Dictionary<XenRef<PUSB>, PUSB> pusb_get_all_records(string session)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new RecordConverter<PUSB>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<Dictionary<XenRef<PUSB>, PUSB>>("PUSB.get_all_records", new JArray(session), serializer);
|
||||
}
|
||||
|
||||
public USB_group usb_group_get_record(string session, string _usb_group)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<USB_group>("USB_group.get_record", new JArray(session, _usb_group ?? ""), serializer);
|
||||
}
|
||||
|
||||
public XenRef<USB_group> usb_group_get_by_uuid(string session, string _uuid)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<USB_group>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<USB_group>>("USB_group.get_by_uuid", new JArray(session, _uuid ?? ""), serializer);
|
||||
}
|
||||
|
||||
public List<XenRef<USB_group>> usb_group_get_by_name_label(string session, string _label)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefListConverter<USB_group>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<List<XenRef<USB_group>>>("USB_group.get_by_name_label", new JArray(session, _label ?? ""), serializer);
|
||||
}
|
||||
|
||||
public string usb_group_get_uuid(string session, string _usb_group)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<string>("USB_group.get_uuid", new JArray(session, _usb_group ?? ""), serializer);
|
||||
}
|
||||
|
||||
public string usb_group_get_name_label(string session, string _usb_group)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<string>("USB_group.get_name_label", new JArray(session, _usb_group ?? ""), serializer);
|
||||
}
|
||||
|
||||
public string usb_group_get_name_description(string session, string _usb_group)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<string>("USB_group.get_name_description", new JArray(session, _usb_group ?? ""), serializer);
|
||||
}
|
||||
|
||||
public List<XenRef<PUSB>> usb_group_get_pusbs(string session, string _usb_group)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefListConverter<PUSB>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<List<XenRef<PUSB>>>("USB_group.get_PUSBs", new JArray(session, _usb_group ?? ""), serializer);
|
||||
}
|
||||
|
||||
public List<XenRef<VUSB>> usb_group_get_vusbs(string session, string _usb_group)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefListConverter<VUSB>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<List<XenRef<VUSB>>>("USB_group.get_VUSBs", new JArray(session, _usb_group ?? ""), serializer);
|
||||
}
|
||||
|
||||
public Dictionary<string, string> usb_group_get_other_config(string session, string _usb_group)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<Dictionary<string, string>>("USB_group.get_other_config", new JArray(session, _usb_group ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void usb_group_set_name_label(string session, string _usb_group, string _label)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("USB_group.set_name_label", new JArray(session, _usb_group ?? "", _label ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void usb_group_set_name_description(string session, string _usb_group, string _description)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("USB_group.set_name_description", new JArray(session, _usb_group ?? "", _description ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void usb_group_set_other_config(string session, string _usb_group, Dictionary<string, string> _other_config)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("USB_group.set_other_config", new JArray(session, _usb_group ?? "", _other_config == null ? new JObject() : JObject.FromObject(_other_config, serializer)), serializer);
|
||||
}
|
||||
|
||||
public void usb_group_add_to_other_config(string session, string _usb_group, string _key, string _value)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("USB_group.add_to_other_config", new JArray(session, _usb_group ?? "", _key ?? "", _value ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void usb_group_remove_from_other_config(string session, string _usb_group, string _key)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("USB_group.remove_from_other_config", new JArray(session, _usb_group ?? "", _key ?? ""), serializer);
|
||||
}
|
||||
|
||||
public XenRef<USB_group> usb_group_create(string session, string _name_label, string _name_description, Dictionary<string, string> _other_config)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<USB_group>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<USB_group>>("USB_group.create", new JArray(session, _name_label ?? "", _name_description ?? "", _other_config == null ? new JObject() : JObject.FromObject(_other_config, serializer)), serializer);
|
||||
}
|
||||
|
||||
public XenRef<Task> async_usb_group_create(string session, string _name_label, string _name_description, Dictionary<string, string> _other_config)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Task>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<Task>>("Async.USB_group.create", new JArray(session, _name_label ?? "", _name_description ?? "", _other_config == null ? new JObject() : JObject.FromObject(_other_config, serializer)), serializer);
|
||||
}
|
||||
|
||||
public void usb_group_destroy(string session, string _usb_group)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("USB_group.destroy", new JArray(session, _usb_group ?? ""), serializer);
|
||||
}
|
||||
|
||||
public XenRef<Task> async_usb_group_destroy(string session, string _usb_group)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Task>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<Task>>("Async.USB_group.destroy", new JArray(session, _usb_group ?? ""), serializer);
|
||||
}
|
||||
|
||||
public List<XenRef<USB_group>> usb_group_get_all(string session)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefListConverter<USB_group>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<List<XenRef<USB_group>>>("USB_group.get_all", new JArray(session), serializer);
|
||||
}
|
||||
|
||||
public Dictionary<XenRef<USB_group>, USB_group> usb_group_get_all_records(string session)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new RecordConverter<USB_group>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<Dictionary<XenRef<USB_group>, USB_group>>("USB_group.get_all_records", new JArray(session), serializer);
|
||||
}
|
||||
|
||||
public VUSB vusb_get_record(string session, string _vusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<VUSB>("VUSB.get_record", new JArray(session, _vusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public XenRef<VUSB> vusb_get_by_uuid(string session, string _uuid)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<VUSB>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<VUSB>>("VUSB.get_by_uuid", new JArray(session, _uuid ?? ""), serializer);
|
||||
}
|
||||
|
||||
public string vusb_get_uuid(string session, string _vusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<string>("VUSB.get_uuid", new JArray(session, _vusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public List<vusb_operations> vusb_get_allowed_operations(string session, string _vusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<List<vusb_operations>>("VUSB.get_allowed_operations", new JArray(session, _vusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public Dictionary<string, vusb_operations> vusb_get_current_operations(string session, string _vusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<Dictionary<string, vusb_operations>>("VUSB.get_current_operations", new JArray(session, _vusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public XenRef<VM> vusb_get_vm(string session, string _vusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<VM>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<VM>>("VUSB.get_VM", new JArray(session, _vusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public XenRef<USB_group> vusb_get_usb_group(string session, string _vusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<USB_group>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<USB_group>>("VUSB.get_USB_group", new JArray(session, _vusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public Dictionary<string, string> vusb_get_other_config(string session, string _vusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<Dictionary<string, string>>("VUSB.get_other_config", new JArray(session, _vusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public bool vusb_get_currently_attached(string session, string _vusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<bool>("VUSB.get_currently_attached", new JArray(session, _vusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void vusb_set_other_config(string session, string _vusb, Dictionary<string, string> _other_config)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("VUSB.set_other_config", new JArray(session, _vusb ?? "", _other_config == null ? new JObject() : JObject.FromObject(_other_config, serializer)), serializer);
|
||||
}
|
||||
|
||||
public void vusb_add_to_other_config(string session, string _vusb, string _key, string _value)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("VUSB.add_to_other_config", new JArray(session, _vusb ?? "", _key ?? "", _value ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void vusb_remove_from_other_config(string session, string _vusb, string _key)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("VUSB.remove_from_other_config", new JArray(session, _vusb ?? "", _key ?? ""), serializer);
|
||||
}
|
||||
|
||||
public XenRef<VUSB> vusb_create(string session, string _vm, string _usb_group, Dictionary<string, string> _other_config)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<VUSB>(), new XenRefConverter<VM>(), new XenRefConverter<USB_group>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<VUSB>>("VUSB.create", new JArray(session, _vm ?? "", _usb_group ?? "", _other_config == null ? new JObject() : JObject.FromObject(_other_config, serializer)), serializer);
|
||||
}
|
||||
|
||||
public XenRef<Task> async_vusb_create(string session, string _vm, string _usb_group, Dictionary<string, string> _other_config)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Task>(), new XenRefConverter<VM>(), new XenRefConverter<USB_group>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<Task>>("Async.VUSB.create", new JArray(session, _vm ?? "", _usb_group ?? "", _other_config == null ? new JObject() : JObject.FromObject(_other_config, serializer)), serializer);
|
||||
}
|
||||
|
||||
public void vusb_unplug(string session, string _vusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("VUSB.unplug", new JArray(session, _vusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public XenRef<Task> async_vusb_unplug(string session, string _vusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Task>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<Task>>("Async.VUSB.unplug", new JArray(session, _vusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public void vusb_destroy(string session, string _vusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
Rpc("VUSB.destroy", new JArray(session, _vusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public XenRef<Task> async_vusb_destroy(string session, string _vusb)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefConverter<Task>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<XenRef<Task>>("Async.VUSB.destroy", new JArray(session, _vusb ?? ""), serializer);
|
||||
}
|
||||
|
||||
public List<XenRef<VUSB>> vusb_get_all(string session)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new XenRefListConverter<VUSB>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<List<XenRef<VUSB>>>("VUSB.get_all", new JArray(session), serializer);
|
||||
}
|
||||
|
||||
public Dictionary<XenRef<VUSB>, VUSB> vusb_get_all_records(string session)
|
||||
{
|
||||
var converters = new List<JsonConverter> {new RecordConverter<VUSB>()};
|
||||
var serializer = JsonSerializer.Create(new JsonSerializerSettings {Converters = converters});
|
||||
return Rpc<Dictionary<XenRef<VUSB>, VUSB>>("VUSB.get_all_records", new JArray(session), serializer);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -100,6 +100,15 @@ namespace XenAPI
|
||||
return Helper.AreEqual2(this._uuid, other._uuid);
|
||||
}
|
||||
|
||||
internal static List<LVHD> ProxyArrayToObjectList(Proxy_LVHD[] input)
|
||||
{
|
||||
var result = new List<LVHD>();
|
||||
foreach (var item in input)
|
||||
result.Add(new LVHD(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, LVHD server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -83,6 +83,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<string, long> convert_from_proxy_string_long(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -128,6 +129,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<string, host_allowed_operations> convert_from_proxy_string_host_allowed_operations(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -173,6 +175,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<string, network_operations> convert_from_proxy_string_network_operations(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -218,6 +221,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<string, pool_allowed_operations> convert_from_proxy_string_pool_allowed_operations(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -263,6 +267,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<string, storage_operations> convert_from_proxy_string_storage_operations(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -308,6 +313,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<string, task_allowed_operations> convert_from_proxy_string_task_allowed_operations(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -353,6 +359,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<string, vbd_operations> convert_from_proxy_string_vbd_operations(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -398,6 +405,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<string, vdi_operations> convert_from_proxy_string_vdi_operations(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -443,6 +451,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<string, vif_operations> convert_from_proxy_string_vif_operations(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -488,6 +497,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<string, vm_appliance_operation> convert_from_proxy_string_vm_appliance_operation(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -533,6 +543,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<string, vm_operations> convert_from_proxy_string_vm_operations(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -578,6 +589,53 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<string, vusb_operations> convert_from_proxy_string_vusb_operations(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
Dictionary<string, vusb_operations> result = new Dictionary<string, vusb_operations>();
|
||||
if (table != null)
|
||||
{
|
||||
foreach (string key in table.Keys)
|
||||
{
|
||||
try
|
||||
{
|
||||
string k = key;
|
||||
vusb_operations v = table[key] == null ? (vusb_operations) 0 : (vusb_operations)Helper.EnumParseDefault(typeof(vusb_operations), (string)table[key]);
|
||||
result[k] = v;
|
||||
}
|
||||
catch
|
||||
{
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static Hashtable convert_to_proxy_string_vusb_operations(Dictionary<string, vusb_operations> table)
|
||||
{
|
||||
CookComputing.XmlRpc.XmlRpcStruct result = new CookComputing.XmlRpc.XmlRpcStruct();
|
||||
if (table != null)
|
||||
{
|
||||
foreach (string key in table.Keys)
|
||||
{
|
||||
try
|
||||
{
|
||||
string k = key ?? "";
|
||||
string v = vusb_operations_helper.ToString(table[key]);
|
||||
result[k] = v;
|
||||
}
|
||||
catch
|
||||
{
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<string, XenRef<Blob>> convert_from_proxy_string_XenRefBlob(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -623,6 +681,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<long, long> convert_from_proxy_long_long(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -668,6 +727,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<long, double> convert_from_proxy_long_double(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -713,6 +773,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<long, string[]> convert_from_proxy_long_string_array(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -758,6 +819,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<vm_operations, string> convert_from_proxy_vm_operations_string(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -803,6 +865,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<XenRef<VDI>, XenRef<SR>> convert_from_proxy_XenRefVDI_XenRefSR(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -848,6 +911,53 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<XenRef<VGPU>, XenRef<GPU_group>> convert_from_proxy_XenRefVGPU_XenRefGPU_group(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
Dictionary<XenRef<VGPU>, XenRef<GPU_group>> result = new Dictionary<XenRef<VGPU>, XenRef<GPU_group>>();
|
||||
if (table != null)
|
||||
{
|
||||
foreach (string key in table.Keys)
|
||||
{
|
||||
try
|
||||
{
|
||||
XenRef<VGPU> k = XenRef<VGPU>.Create(key);
|
||||
XenRef<GPU_group> v = table[key] == null ? null : XenRef<GPU_group>.Create(table[key]);
|
||||
result[k] = v;
|
||||
}
|
||||
catch
|
||||
{
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static Hashtable convert_to_proxy_XenRefVGPU_XenRefGPU_group(Dictionary<XenRef<VGPU>, XenRef<GPU_group>> table)
|
||||
{
|
||||
CookComputing.XmlRpc.XmlRpcStruct result = new CookComputing.XmlRpc.XmlRpcStruct();
|
||||
if (table != null)
|
||||
{
|
||||
foreach (XenRef<VGPU> key in table.Keys)
|
||||
{
|
||||
try
|
||||
{
|
||||
string k = key ?? "";
|
||||
string v = table[key] ?? "";
|
||||
result[k] = v;
|
||||
}
|
||||
catch
|
||||
{
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<XenRef<VGPU_type>, long> convert_from_proxy_XenRefVGPU_type_long(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -893,6 +1003,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<XenRef<VIF>, string> convert_from_proxy_XenRefVIF_string(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -938,6 +1049,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<XenRef<VIF>, XenRef<Network>> convert_from_proxy_XenRefVIF_XenRefNetwork(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -983,6 +1095,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<XenRef<VM>, string> convert_from_proxy_XenRefVM_string(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -1028,6 +1141,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<XenRef<VM>, string[]> convert_from_proxy_XenRefVM_string_array(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -1073,6 +1187,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<XenRef<VM>, Dictionary<string, string>> convert_from_proxy_XenRefVM_Dictionary_string_string(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -1118,6 +1233,7 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
internal static Dictionary<XenRef<Host>, string[]> convert_from_proxy_XenRefHost_string_array(Object o)
|
||||
{
|
||||
Hashtable table = (Hashtable)o;
|
||||
@ -1163,5 +1279,6 @@ namespace XenAPI
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -46,7 +46,7 @@ namespace XenAPI
|
||||
/// </summary>
|
||||
public partial class Message : XenObject<Message>
|
||||
{
|
||||
public enum MessageType { POOL_CPU_FEATURES_UP, POOL_CPU_FEATURES_DOWN, HOST_CPU_FEATURES_UP, HOST_CPU_FEATURES_DOWN, BOND_STATUS_CHANGED, VMSS_SNAPSHOT_MISSED_EVENT, VMSS_XAPI_LOGON_FAILURE, VMSS_LICENSE_ERROR, VMSS_SNAPSHOT_FAILED, VMSS_SNAPSHOT_SUCCEEDED, VMSS_SNAPSHOT_LOCK_FAILED, VMPP_SNAPSHOT_ARCHIVE_ALREADY_EXISTS, VMPP_ARCHIVE_MISSED_EVENT, VMPP_SNAPSHOT_MISSED_EVENT, VMPP_XAPI_LOGON_FAILURE, VMPP_LICENSE_ERROR, VMPP_ARCHIVE_TARGET_UNMOUNT_FAILED, VMPP_ARCHIVE_TARGET_MOUNT_FAILED, VMPP_ARCHIVE_SUCCEEDED, VMPP_ARCHIVE_FAILED_0, VMPP_ARCHIVE_LOCK_FAILED, VMPP_SNAPSHOT_FAILED, VMPP_SNAPSHOT_SUCCEEDED, VMPP_SNAPSHOT_LOCK_FAILED, PVS_PROXY_SR_OUT_OF_SPACE, PVS_PROXY_NO_SERVER_AVAILABLE, PVS_PROXY_SETUP_FAILED, PVS_PROXY_NO_CACHE_SR_AVAILABLE, LICENSE_SERVER_VERSION_OBSOLETE, LICENSE_SERVER_UNREACHABLE, LICENSE_NOT_AVAILABLE, GRACE_LICENSE, LICENSE_SERVER_UNAVAILABLE, LICENSE_SERVER_CONNECTED, LICENSE_EXPIRED, LICENSE_EXPIRES_SOON, LICENSE_DOES_NOT_SUPPORT_POOLING, MULTIPATH_PERIODIC_ALERT, EXTAUTH_IN_POOL_IS_NON_HOMOGENEOUS, EXTAUTH_INIT_IN_HOST_FAILED, WLB_OPTIMIZATION_ALERT, WLB_CONSULTATION_FAILED, ALARM, PBD_PLUG_FAILED_ON_SERVER_START, POOL_MASTER_TRANSITION, HOST_CLOCK_WENT_BACKWARDS, HOST_CLOCK_SKEW_DETECTED, HOST_SYNC_DATA_FAILED, VM_CLONED, VM_CRASHED, VM_RESUMED, VM_SUSPENDED, VM_REBOOTED, VM_SHUTDOWN, VM_STARTED, VCPU_QOS_FAILED, VBD_QOS_FAILED, VIF_QOS_FAILED, IP_CONFIGURED_PIF_CAN_UNPLUG, METADATA_LUN_BROKEN, METADATA_LUN_HEALTHY, HA_HOST_WAS_FENCED, HA_HOST_FAILED, HA_PROTECTED_VM_RESTART_FAILED, HA_POOL_DROP_IN_PLAN_EXISTS_FOR, HA_POOL_OVERCOMMITTED, HA_NETWORK_BONDING_ERROR, HA_XAPI_HEALTHCHECK_APPROACHING_TIMEOUT, HA_STATEFILE_APPROACHING_TIMEOUT, HA_HEARTBEAT_APPROACHING_TIMEOUT, HA_STATEFILE_LOST, unknown };
|
||||
public enum MessageType { POOL_CPU_FEATURES_UP, POOL_CPU_FEATURES_DOWN, HOST_CPU_FEATURES_UP, HOST_CPU_FEATURES_DOWN, BOND_STATUS_CHANGED, VDI_CBT_RESIZE_FAILED, VDI_CBT_SNAPSHOT_FAILED, VDI_CBT_METADATA_INCONSISTENT, VMSS_SNAPSHOT_MISSED_EVENT, VMSS_XAPI_LOGON_FAILURE, VMSS_LICENSE_ERROR, VMSS_SNAPSHOT_FAILED, VMSS_SNAPSHOT_SUCCEEDED, VMSS_SNAPSHOT_LOCK_FAILED, VMPP_SNAPSHOT_ARCHIVE_ALREADY_EXISTS, VMPP_ARCHIVE_MISSED_EVENT, VMPP_SNAPSHOT_MISSED_EVENT, VMPP_XAPI_LOGON_FAILURE, VMPP_LICENSE_ERROR, VMPP_ARCHIVE_TARGET_UNMOUNT_FAILED, VMPP_ARCHIVE_TARGET_MOUNT_FAILED, VMPP_ARCHIVE_SUCCEEDED, VMPP_ARCHIVE_FAILED_0, VMPP_ARCHIVE_LOCK_FAILED, VMPP_SNAPSHOT_FAILED, VMPP_SNAPSHOT_SUCCEEDED, VMPP_SNAPSHOT_LOCK_FAILED, PVS_PROXY_SR_OUT_OF_SPACE, PVS_PROXY_NO_SERVER_AVAILABLE, PVS_PROXY_SETUP_FAILED, PVS_PROXY_NO_CACHE_SR_AVAILABLE, LICENSE_SERVER_VERSION_OBSOLETE, LICENSE_SERVER_UNREACHABLE, LICENSE_NOT_AVAILABLE, GRACE_LICENSE, LICENSE_SERVER_UNAVAILABLE, LICENSE_SERVER_CONNECTED, LICENSE_EXPIRED, LICENSE_EXPIRES_SOON, LICENSE_DOES_NOT_SUPPORT_POOLING, MULTIPATH_PERIODIC_ALERT, EXTAUTH_IN_POOL_IS_NON_HOMOGENEOUS, EXTAUTH_INIT_IN_HOST_FAILED, WLB_OPTIMIZATION_ALERT, WLB_CONSULTATION_FAILED, ALARM, PBD_PLUG_FAILED_ON_SERVER_START, POOL_MASTER_TRANSITION, HOST_CLOCK_WENT_BACKWARDS, HOST_CLOCK_SKEW_DETECTED, HOST_SYNC_DATA_FAILED, VM_CLONED, VM_CRASHED, VM_RESUMED, VM_SUSPENDED, VM_REBOOTED, VM_SHUTDOWN, VM_STARTED, VCPU_QOS_FAILED, VBD_QOS_FAILED, VIF_QOS_FAILED, IP_CONFIGURED_PIF_CAN_UNPLUG, METADATA_LUN_BROKEN, METADATA_LUN_HEALTHY, HA_HOST_WAS_FENCED, HA_HOST_FAILED, HA_PROTECTED_VM_RESTART_FAILED, HA_POOL_DROP_IN_PLAN_EXISTS_FOR, HA_POOL_OVERCOMMITTED, HA_NETWORK_BONDING_ERROR, HA_XAPI_HEALTHCHECK_APPROACHING_TIMEOUT, HA_STATEFILE_APPROACHING_TIMEOUT, HA_HEARTBEAT_APPROACHING_TIMEOUT, HA_STATEFILE_LOST, unknown };
|
||||
|
||||
public MessageType Type
|
||||
{
|
||||
@ -64,6 +64,12 @@ namespace XenAPI
|
||||
return MessageType.HOST_CPU_FEATURES_DOWN;
|
||||
case "BOND_STATUS_CHANGED":
|
||||
return MessageType.BOND_STATUS_CHANGED;
|
||||
case "VDI_CBT_RESIZE_FAILED":
|
||||
return MessageType.VDI_CBT_RESIZE_FAILED;
|
||||
case "VDI_CBT_SNAPSHOT_FAILED":
|
||||
return MessageType.VDI_CBT_SNAPSHOT_FAILED;
|
||||
case "VDI_CBT_METADATA_INCONSISTENT":
|
||||
return MessageType.VDI_CBT_METADATA_INCONSISTENT;
|
||||
case "VMSS_SNAPSHOT_MISSED_EVENT":
|
||||
return MessageType.VMSS_SNAPSHOT_MISSED_EVENT;
|
||||
case "VMSS_XAPI_LOGON_FAILURE":
|
||||
@ -298,6 +304,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._body, other._body);
|
||||
}
|
||||
|
||||
internal static List<Message> ProxyArrayToObjectList(Proxy_Message[] input)
|
||||
{
|
||||
var result = new List<Message>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Message(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Message server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -64,7 +64,8 @@ namespace XenAPI
|
||||
Dictionary<string, XenRef<Blob>> blobs,
|
||||
string[] tags,
|
||||
network_default_locking_mode default_locking_mode,
|
||||
Dictionary<XenRef<VIF>, string> assigned_ips)
|
||||
Dictionary<XenRef<VIF>, string> assigned_ips,
|
||||
List<network_purpose> purpose)
|
||||
{
|
||||
this.uuid = uuid;
|
||||
this.name_label = name_label;
|
||||
@ -81,6 +82,7 @@ namespace XenAPI
|
||||
this.tags = tags;
|
||||
this.default_locking_mode = default_locking_mode;
|
||||
this.assigned_ips = assigned_ips;
|
||||
this.purpose = purpose;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -109,6 +111,7 @@ namespace XenAPI
|
||||
tags = update.tags;
|
||||
default_locking_mode = update.default_locking_mode;
|
||||
assigned_ips = update.assigned_ips;
|
||||
purpose = update.purpose;
|
||||
}
|
||||
|
||||
internal void UpdateFromProxy(Proxy_Network proxy)
|
||||
@ -128,6 +131,7 @@ namespace XenAPI
|
||||
tags = proxy.tags == null ? new string[] {} : (string [])proxy.tags;
|
||||
default_locking_mode = proxy.default_locking_mode == null ? (network_default_locking_mode) 0 : (network_default_locking_mode)Helper.EnumParseDefault(typeof(network_default_locking_mode), (string)proxy.default_locking_mode);
|
||||
assigned_ips = proxy.assigned_ips == null ? null : Maps.convert_from_proxy_XenRefVIF_string(proxy.assigned_ips);
|
||||
purpose = proxy.purpose == null ? null : Helper.StringArrayToEnumList<network_purpose>(proxy.purpose);
|
||||
}
|
||||
|
||||
public Proxy_Network ToProxy()
|
||||
@ -148,6 +152,7 @@ namespace XenAPI
|
||||
result_.tags = tags;
|
||||
result_.default_locking_mode = network_default_locking_mode_helper.ToString(default_locking_mode);
|
||||
result_.assigned_ips = Maps.convert_to_proxy_XenRefVIF_string(assigned_ips);
|
||||
result_.purpose = (purpose != null) ? Helper.ObjectListToStringArray(purpose) : new string[] {};
|
||||
return result_;
|
||||
}
|
||||
|
||||
@ -172,6 +177,7 @@ namespace XenAPI
|
||||
tags = Marshalling.ParseStringArray(table, "tags");
|
||||
default_locking_mode = (network_default_locking_mode)Helper.EnumParseDefault(typeof(network_default_locking_mode), Marshalling.ParseString(table, "default_locking_mode"));
|
||||
assigned_ips = Maps.convert_from_proxy_XenRefVIF_string(Marshalling.ParseHashTable(table, "assigned_ips"));
|
||||
purpose = Helper.StringArrayToEnumList<network_purpose>(Marshalling.ParseStringArray(table, "purpose"));
|
||||
}
|
||||
|
||||
public bool DeepEquals(Network other, bool ignoreCurrentOperations)
|
||||
@ -197,7 +203,17 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._blobs, other._blobs) &&
|
||||
Helper.AreEqual2(this._tags, other._tags) &&
|
||||
Helper.AreEqual2(this._default_locking_mode, other._default_locking_mode) &&
|
||||
Helper.AreEqual2(this._assigned_ips, other._assigned_ips);
|
||||
Helper.AreEqual2(this._assigned_ips, other._assigned_ips) &&
|
||||
Helper.AreEqual2(this._purpose, other._purpose);
|
||||
}
|
||||
|
||||
internal static List<Network> ProxyArrayToObjectList(Proxy_Network[] input)
|
||||
{
|
||||
var result = new List<Network>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Network(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Network server)
|
||||
@ -541,6 +557,20 @@ namespace XenAPI
|
||||
return Maps.convert_from_proxy_XenRefVIF_string(session.proxy.network_get_assigned_ips(session.uuid, _network ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the purpose field of the given network.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_network">The opaque_ref of the given network</param>
|
||||
public static List<network_purpose> get_purpose(Session session, string _network)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.network_get_purpose(session.uuid, _network);
|
||||
else
|
||||
return Helper.StringArrayToEnumList<network_purpose>(session.proxy.network_get_purpose(session.uuid, _network ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Set the name/label field of the given network.
|
||||
/// First published in XenServer 4.0.
|
||||
@ -773,6 +803,66 @@ namespace XenAPI
|
||||
return XenRef<Task>.Create(session.proxy.async_network_set_default_locking_mode(session.uuid, _network ?? "", network_default_locking_mode_helper.ToString(_value)).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Give a network a new purpose (if not present already)
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_network">The opaque_ref of the given network</param>
|
||||
/// <param name="_value">The purpose to add</param>
|
||||
public static void add_purpose(Session session, string _network, network_purpose _value)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.network_add_purpose(session.uuid, _network, _value);
|
||||
else
|
||||
session.proxy.network_add_purpose(session.uuid, _network ?? "", network_purpose_helper.ToString(_value)).parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Give a network a new purpose (if not present already)
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_network">The opaque_ref of the given network</param>
|
||||
/// <param name="_value">The purpose to add</param>
|
||||
public static XenRef<Task> async_add_purpose(Session session, string _network, network_purpose _value)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.async_network_add_purpose(session.uuid, _network, _value);
|
||||
else
|
||||
return XenRef<Task>.Create(session.proxy.async_network_add_purpose(session.uuid, _network ?? "", network_purpose_helper.ToString(_value)).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Remove a purpose from a network (if present)
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_network">The opaque_ref of the given network</param>
|
||||
/// <param name="_value">The purpose to remove</param>
|
||||
public static void remove_purpose(Session session, string _network, network_purpose _value)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.network_remove_purpose(session.uuid, _network, _value);
|
||||
else
|
||||
session.proxy.network_remove_purpose(session.uuid, _network ?? "", network_purpose_helper.ToString(_value)).parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Remove a purpose from a network (if present)
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_network">The opaque_ref of the given network</param>
|
||||
/// <param name="_value">The purpose to remove</param>
|
||||
public static XenRef<Task> async_remove_purpose(Session session, string _network, network_purpose _value)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.async_network_remove_purpose(session.uuid, _network, _value);
|
||||
else
|
||||
return XenRef<Task>.Create(session.proxy.async_network_remove_purpose(session.uuid, _network ?? "", network_purpose_helper.ToString(_value)).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Return a list of all the networks known to the system.
|
||||
/// First published in XenServer 4.0.
|
||||
@ -1079,5 +1169,24 @@ namespace XenAPI
|
||||
}
|
||||
}
|
||||
private Dictionary<XenRef<VIF>, string> _assigned_ips = new Dictionary<XenRef<VIF>, string>() {};
|
||||
|
||||
/// <summary>
|
||||
/// Set of purposes for which the server will use this network
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
public virtual List<network_purpose> purpose
|
||||
{
|
||||
get { return _purpose; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _purpose))
|
||||
{
|
||||
_purpose = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("purpose");
|
||||
}
|
||||
}
|
||||
}
|
||||
private List<network_purpose> _purpose = new List<network_purpose>() {};
|
||||
}
|
||||
}
|
||||
|
@ -135,6 +135,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._other_config, other._other_config);
|
||||
}
|
||||
|
||||
internal static List<PBD> ProxyArrayToObjectList(Proxy_PBD[] input)
|
||||
{
|
||||
var result = new List<PBD>();
|
||||
foreach (var item in input)
|
||||
result.Add(new PBD(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, PBD server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -163,6 +163,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._subsystem_device_name, other._subsystem_device_name);
|
||||
}
|
||||
|
||||
internal static List<PCI> ProxyArrayToObjectList(Proxy_PCI[] input)
|
||||
{
|
||||
var result = new List<PCI>();
|
||||
foreach (var item in input)
|
||||
result.Add(new PCI(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, PCI server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -60,7 +60,8 @@ namespace XenAPI
|
||||
List<XenRef<VGPU>> resident_VGPUs,
|
||||
Dictionary<XenRef<VGPU_type>, long> supported_VGPU_max_capacities,
|
||||
pgpu_dom0_access dom0_access,
|
||||
bool is_system_display_device)
|
||||
bool is_system_display_device,
|
||||
Dictionary<string, string> compatibility_metadata)
|
||||
{
|
||||
this.uuid = uuid;
|
||||
this.PCI = PCI;
|
||||
@ -73,6 +74,7 @@ namespace XenAPI
|
||||
this.supported_VGPU_max_capacities = supported_VGPU_max_capacities;
|
||||
this.dom0_access = dom0_access;
|
||||
this.is_system_display_device = is_system_display_device;
|
||||
this.compatibility_metadata = compatibility_metadata;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -97,6 +99,7 @@ namespace XenAPI
|
||||
supported_VGPU_max_capacities = update.supported_VGPU_max_capacities;
|
||||
dom0_access = update.dom0_access;
|
||||
is_system_display_device = update.is_system_display_device;
|
||||
compatibility_metadata = update.compatibility_metadata;
|
||||
}
|
||||
|
||||
internal void UpdateFromProxy(Proxy_PGPU proxy)
|
||||
@ -112,6 +115,7 @@ namespace XenAPI
|
||||
supported_VGPU_max_capacities = proxy.supported_VGPU_max_capacities == null ? null : Maps.convert_from_proxy_XenRefVGPU_type_long(proxy.supported_VGPU_max_capacities);
|
||||
dom0_access = proxy.dom0_access == null ? (pgpu_dom0_access) 0 : (pgpu_dom0_access)Helper.EnumParseDefault(typeof(pgpu_dom0_access), (string)proxy.dom0_access);
|
||||
is_system_display_device = (bool)proxy.is_system_display_device;
|
||||
compatibility_metadata = proxy.compatibility_metadata == null ? null : Maps.convert_from_proxy_string_string(proxy.compatibility_metadata);
|
||||
}
|
||||
|
||||
public Proxy_PGPU ToProxy()
|
||||
@ -128,6 +132,7 @@ namespace XenAPI
|
||||
result_.supported_VGPU_max_capacities = Maps.convert_to_proxy_XenRefVGPU_type_long(supported_VGPU_max_capacities);
|
||||
result_.dom0_access = pgpu_dom0_access_helper.ToString(dom0_access);
|
||||
result_.is_system_display_device = is_system_display_device;
|
||||
result_.compatibility_metadata = Maps.convert_to_proxy_string_string(compatibility_metadata);
|
||||
return result_;
|
||||
}
|
||||
|
||||
@ -148,6 +153,7 @@ namespace XenAPI
|
||||
supported_VGPU_max_capacities = Maps.convert_from_proxy_XenRefVGPU_type_long(Marshalling.ParseHashTable(table, "supported_VGPU_max_capacities"));
|
||||
dom0_access = (pgpu_dom0_access)Helper.EnumParseDefault(typeof(pgpu_dom0_access), Marshalling.ParseString(table, "dom0_access"));
|
||||
is_system_display_device = Marshalling.ParseBool(table, "is_system_display_device");
|
||||
compatibility_metadata = Maps.convert_from_proxy_string_string(Marshalling.ParseHashTable(table, "compatibility_metadata"));
|
||||
}
|
||||
|
||||
public bool DeepEquals(PGPU other)
|
||||
@ -167,7 +173,17 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._resident_VGPUs, other._resident_VGPUs) &&
|
||||
Helper.AreEqual2(this._supported_VGPU_max_capacities, other._supported_VGPU_max_capacities) &&
|
||||
Helper.AreEqual2(this._dom0_access, other._dom0_access) &&
|
||||
Helper.AreEqual2(this._is_system_display_device, other._is_system_display_device);
|
||||
Helper.AreEqual2(this._is_system_display_device, other._is_system_display_device) &&
|
||||
Helper.AreEqual2(this._compatibility_metadata, other._compatibility_metadata);
|
||||
}
|
||||
|
||||
internal static List<PGPU> ProxyArrayToObjectList(Proxy_PGPU[] input)
|
||||
{
|
||||
var result = new List<PGPU>();
|
||||
foreach (var item in input)
|
||||
result.Add(new PGPU(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, PGPU server)
|
||||
@ -372,6 +388,20 @@ namespace XenAPI
|
||||
return (bool)session.proxy.pgpu_get_is_system_display_device(session.uuid, _pgpu ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the compatibility_metadata field of the given PGPU.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pgpu">The opaque_ref of the given pgpu</param>
|
||||
public static Dictionary<string, string> get_compatibility_metadata(Session session, string _pgpu)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pgpu_get_compatibility_metadata(session.uuid, _pgpu);
|
||||
else
|
||||
return Maps.convert_from_proxy_string_string(session.proxy.pgpu_get_compatibility_metadata(session.uuid, _pgpu ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Set the other_config field of the given PGPU.
|
||||
/// First published in XenServer 6.0.
|
||||
@ -860,5 +890,24 @@ namespace XenAPI
|
||||
}
|
||||
}
|
||||
private bool _is_system_display_device = false;
|
||||
|
||||
/// <summary>
|
||||
/// PGPU metadata to determine whether a VGPU can migrate between two PGPUs
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
public virtual Dictionary<string, string> compatibility_metadata
|
||||
{
|
||||
get { return _compatibility_metadata; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _compatibility_metadata))
|
||||
{
|
||||
_compatibility_metadata = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("compatibility_metadata");
|
||||
}
|
||||
}
|
||||
}
|
||||
private Dictionary<string, string> _compatibility_metadata = new Dictionary<string, string>() {};
|
||||
}
|
||||
}
|
||||
|
@ -80,7 +80,8 @@ namespace XenAPI
|
||||
primary_address_type primary_address_type,
|
||||
bool managed,
|
||||
Dictionary<string, string> properties,
|
||||
string[] capabilities)
|
||||
string[] capabilities,
|
||||
pif_igmp_status igmp_snooping_status)
|
||||
{
|
||||
this.uuid = uuid;
|
||||
this.device = device;
|
||||
@ -113,6 +114,7 @@ namespace XenAPI
|
||||
this.managed = managed;
|
||||
this.properties = properties;
|
||||
this.capabilities = capabilities;
|
||||
this.igmp_snooping_status = igmp_snooping_status;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -157,6 +159,7 @@ namespace XenAPI
|
||||
managed = update.managed;
|
||||
properties = update.properties;
|
||||
capabilities = update.capabilities;
|
||||
igmp_snooping_status = update.igmp_snooping_status;
|
||||
}
|
||||
|
||||
internal void UpdateFromProxy(Proxy_PIF proxy)
|
||||
@ -192,6 +195,7 @@ namespace XenAPI
|
||||
managed = (bool)proxy.managed;
|
||||
properties = proxy.properties == null ? null : Maps.convert_from_proxy_string_string(proxy.properties);
|
||||
capabilities = proxy.capabilities == null ? new string[] {} : (string [])proxy.capabilities;
|
||||
igmp_snooping_status = proxy.igmp_snooping_status == null ? (pif_igmp_status) 0 : (pif_igmp_status)Helper.EnumParseDefault(typeof(pif_igmp_status), (string)proxy.igmp_snooping_status);
|
||||
}
|
||||
|
||||
public Proxy_PIF ToProxy()
|
||||
@ -228,6 +232,7 @@ namespace XenAPI
|
||||
result_.managed = managed;
|
||||
result_.properties = Maps.convert_to_proxy_string_string(properties);
|
||||
result_.capabilities = capabilities;
|
||||
result_.igmp_snooping_status = pif_igmp_status_helper.ToString(igmp_snooping_status);
|
||||
return result_;
|
||||
}
|
||||
|
||||
@ -268,6 +273,7 @@ namespace XenAPI
|
||||
managed = Marshalling.ParseBool(table, "managed");
|
||||
properties = Maps.convert_from_proxy_string_string(Marshalling.ParseHashTable(table, "properties"));
|
||||
capabilities = Marshalling.ParseStringArray(table, "capabilities");
|
||||
igmp_snooping_status = (pif_igmp_status)Helper.EnumParseDefault(typeof(pif_igmp_status), Marshalling.ParseString(table, "igmp_snooping_status"));
|
||||
}
|
||||
|
||||
public bool DeepEquals(PIF other)
|
||||
@ -307,7 +313,17 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._primary_address_type, other._primary_address_type) &&
|
||||
Helper.AreEqual2(this._managed, other._managed) &&
|
||||
Helper.AreEqual2(this._properties, other._properties) &&
|
||||
Helper.AreEqual2(this._capabilities, other._capabilities);
|
||||
Helper.AreEqual2(this._capabilities, other._capabilities) &&
|
||||
Helper.AreEqual2(this._igmp_snooping_status, other._igmp_snooping_status);
|
||||
}
|
||||
|
||||
internal static List<PIF> ProxyArrayToObjectList(Proxy_PIF[] input)
|
||||
{
|
||||
var result = new List<PIF>();
|
||||
foreach (var item in input)
|
||||
result.Add(new PIF(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, PIF server)
|
||||
@ -792,6 +808,20 @@ namespace XenAPI
|
||||
return (string [])session.proxy.pif_get_capabilities(session.uuid, _pif ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the igmp_snooping_status field of the given PIF.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pif">The opaque_ref of the given pif</param>
|
||||
public static pif_igmp_status get_igmp_snooping_status(Session session, string _pif)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pif_get_igmp_snooping_status(session.uuid, _pif);
|
||||
else
|
||||
return (pif_igmp_status)Helper.EnumParseDefault(typeof(pif_igmp_status), (string)session.proxy.pif_get_igmp_snooping_status(session.uuid, _pif ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Set the other_config field of the given PIF.
|
||||
/// First published in XenServer 4.1.
|
||||
@ -2153,5 +2183,25 @@ namespace XenAPI
|
||||
}
|
||||
}
|
||||
private string[] _capabilities = {};
|
||||
|
||||
/// <summary>
|
||||
/// The IGMP snooping status of the corresponding network bridge
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(pif_igmp_statusConverter))]
|
||||
public virtual pif_igmp_status igmp_snooping_status
|
||||
{
|
||||
get { return _igmp_snooping_status; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _igmp_snooping_status))
|
||||
{
|
||||
_igmp_snooping_status = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("igmp_snooping_status");
|
||||
}
|
||||
}
|
||||
}
|
||||
private pif_igmp_status _igmp_snooping_status = pif_igmp_status.unknown;
|
||||
}
|
||||
}
|
||||
|
@ -184,6 +184,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._other_config, other._other_config);
|
||||
}
|
||||
|
||||
internal static List<PIF_metrics> ProxyArrayToObjectList(Proxy_PIF_metrics[] input)
|
||||
{
|
||||
var result = new List<PIF_metrics>();
|
||||
foreach (var item in input)
|
||||
result.Add(new PIF_metrics(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, PIF_metrics server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
788
XenModel/XenAPI/PUSB.cs
Normal file
788
XenModel/XenAPI/PUSB.cs
Normal file
@ -0,0 +1,788 @@
|
||||
/*
|
||||
* 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;
|
||||
using System.ComponentModel;
|
||||
using System.Globalization;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Converters;
|
||||
|
||||
|
||||
namespace XenAPI
|
||||
{
|
||||
/// <summary>
|
||||
/// A physical USB device
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
public partial class PUSB : XenObject<PUSB>
|
||||
{
|
||||
public PUSB()
|
||||
{
|
||||
}
|
||||
|
||||
public PUSB(string uuid,
|
||||
XenRef<USB_group> USB_group,
|
||||
XenRef<Host> host,
|
||||
string path,
|
||||
string vendor_id,
|
||||
string vendor_desc,
|
||||
string product_id,
|
||||
string product_desc,
|
||||
string serial,
|
||||
string version,
|
||||
string description,
|
||||
bool passthrough_enabled,
|
||||
Dictionary<string, string> other_config)
|
||||
{
|
||||
this.uuid = uuid;
|
||||
this.USB_group = USB_group;
|
||||
this.host = host;
|
||||
this.path = path;
|
||||
this.vendor_id = vendor_id;
|
||||
this.vendor_desc = vendor_desc;
|
||||
this.product_id = product_id;
|
||||
this.product_desc = product_desc;
|
||||
this.serial = serial;
|
||||
this.version = version;
|
||||
this.description = description;
|
||||
this.passthrough_enabled = passthrough_enabled;
|
||||
this.other_config = other_config;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Creates a new PUSB from a Proxy_PUSB.
|
||||
/// </summary>
|
||||
/// <param name="proxy"></param>
|
||||
public PUSB(Proxy_PUSB proxy)
|
||||
{
|
||||
this.UpdateFromProxy(proxy);
|
||||
}
|
||||
|
||||
public override void UpdateFrom(PUSB update)
|
||||
{
|
||||
uuid = update.uuid;
|
||||
USB_group = update.USB_group;
|
||||
host = update.host;
|
||||
path = update.path;
|
||||
vendor_id = update.vendor_id;
|
||||
vendor_desc = update.vendor_desc;
|
||||
product_id = update.product_id;
|
||||
product_desc = update.product_desc;
|
||||
serial = update.serial;
|
||||
version = update.version;
|
||||
description = update.description;
|
||||
passthrough_enabled = update.passthrough_enabled;
|
||||
other_config = update.other_config;
|
||||
}
|
||||
|
||||
internal void UpdateFromProxy(Proxy_PUSB proxy)
|
||||
{
|
||||
uuid = proxy.uuid == null ? null : (string)proxy.uuid;
|
||||
USB_group = proxy.USB_group == null ? null : XenRef<USB_group>.Create(proxy.USB_group);
|
||||
host = proxy.host == null ? null : XenRef<Host>.Create(proxy.host);
|
||||
path = proxy.path == null ? null : (string)proxy.path;
|
||||
vendor_id = proxy.vendor_id == null ? null : (string)proxy.vendor_id;
|
||||
vendor_desc = proxy.vendor_desc == null ? null : (string)proxy.vendor_desc;
|
||||
product_id = proxy.product_id == null ? null : (string)proxy.product_id;
|
||||
product_desc = proxy.product_desc == null ? null : (string)proxy.product_desc;
|
||||
serial = proxy.serial == null ? null : (string)proxy.serial;
|
||||
version = proxy.version == null ? null : (string)proxy.version;
|
||||
description = proxy.description == null ? null : (string)proxy.description;
|
||||
passthrough_enabled = (bool)proxy.passthrough_enabled;
|
||||
other_config = proxy.other_config == null ? null : Maps.convert_from_proxy_string_string(proxy.other_config);
|
||||
}
|
||||
|
||||
public Proxy_PUSB ToProxy()
|
||||
{
|
||||
Proxy_PUSB result_ = new Proxy_PUSB();
|
||||
result_.uuid = uuid ?? "";
|
||||
result_.USB_group = USB_group ?? "";
|
||||
result_.host = host ?? "";
|
||||
result_.path = path ?? "";
|
||||
result_.vendor_id = vendor_id ?? "";
|
||||
result_.vendor_desc = vendor_desc ?? "";
|
||||
result_.product_id = product_id ?? "";
|
||||
result_.product_desc = product_desc ?? "";
|
||||
result_.serial = serial ?? "";
|
||||
result_.version = version ?? "";
|
||||
result_.description = description ?? "";
|
||||
result_.passthrough_enabled = passthrough_enabled;
|
||||
result_.other_config = Maps.convert_to_proxy_string_string(other_config);
|
||||
return result_;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Creates a new PUSB from a Hashtable.
|
||||
/// </summary>
|
||||
/// <param name="table"></param>
|
||||
public PUSB(Hashtable table)
|
||||
{
|
||||
uuid = Marshalling.ParseString(table, "uuid");
|
||||
USB_group = Marshalling.ParseRef<USB_group>(table, "USB_group");
|
||||
host = Marshalling.ParseRef<Host>(table, "host");
|
||||
path = Marshalling.ParseString(table, "path");
|
||||
vendor_id = Marshalling.ParseString(table, "vendor_id");
|
||||
vendor_desc = Marshalling.ParseString(table, "vendor_desc");
|
||||
product_id = Marshalling.ParseString(table, "product_id");
|
||||
product_desc = Marshalling.ParseString(table, "product_desc");
|
||||
serial = Marshalling.ParseString(table, "serial");
|
||||
version = Marshalling.ParseString(table, "version");
|
||||
description = Marshalling.ParseString(table, "description");
|
||||
passthrough_enabled = Marshalling.ParseBool(table, "passthrough_enabled");
|
||||
other_config = Maps.convert_from_proxy_string_string(Marshalling.ParseHashTable(table, "other_config"));
|
||||
}
|
||||
|
||||
public bool DeepEquals(PUSB other)
|
||||
{
|
||||
if (ReferenceEquals(null, other))
|
||||
return false;
|
||||
if (ReferenceEquals(this, other))
|
||||
return true;
|
||||
|
||||
return Helper.AreEqual2(this._uuid, other._uuid) &&
|
||||
Helper.AreEqual2(this._USB_group, other._USB_group) &&
|
||||
Helper.AreEqual2(this._host, other._host) &&
|
||||
Helper.AreEqual2(this._path, other._path) &&
|
||||
Helper.AreEqual2(this._vendor_id, other._vendor_id) &&
|
||||
Helper.AreEqual2(this._vendor_desc, other._vendor_desc) &&
|
||||
Helper.AreEqual2(this._product_id, other._product_id) &&
|
||||
Helper.AreEqual2(this._product_desc, other._product_desc) &&
|
||||
Helper.AreEqual2(this._serial, other._serial) &&
|
||||
Helper.AreEqual2(this._version, other._version) &&
|
||||
Helper.AreEqual2(this._description, other._description) &&
|
||||
Helper.AreEqual2(this._passthrough_enabled, other._passthrough_enabled) &&
|
||||
Helper.AreEqual2(this._other_config, other._other_config);
|
||||
}
|
||||
|
||||
internal static List<PUSB> ProxyArrayToObjectList(Proxy_PUSB[] input)
|
||||
{
|
||||
var result = new List<PUSB>();
|
||||
foreach (var item in input)
|
||||
result.Add(new PUSB(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, PUSB server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
{ System.Diagnostics.Debug.Assert(false, "Cannot create instances of this type on the server");
|
||||
return "";
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!Helper.AreEqual2(_other_config, server._other_config))
|
||||
{
|
||||
PUSB.set_other_config(session, opaqueRef, _other_config);
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// Get a record containing the current state of the given PUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
public static PUSB get_record(Session session, string _pusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pusb_get_record(session.uuid, _pusb);
|
||||
else
|
||||
return new PUSB((Proxy_PUSB)session.proxy.pusb_get_record(session.uuid, _pusb ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get a reference to the PUSB instance with the specified UUID.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_uuid">UUID of object to return</param>
|
||||
public static XenRef<PUSB> get_by_uuid(Session session, string _uuid)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pusb_get_by_uuid(session.uuid, _uuid);
|
||||
else
|
||||
return XenRef<PUSB>.Create(session.proxy.pusb_get_by_uuid(session.uuid, _uuid ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the uuid field of the given PUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
public static string get_uuid(Session session, string _pusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pusb_get_uuid(session.uuid, _pusb);
|
||||
else
|
||||
return (string)session.proxy.pusb_get_uuid(session.uuid, _pusb ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the USB_group field of the given PUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
public static XenRef<USB_group> get_USB_group(Session session, string _pusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pusb_get_usb_group(session.uuid, _pusb);
|
||||
else
|
||||
return XenRef<USB_group>.Create(session.proxy.pusb_get_usb_group(session.uuid, _pusb ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the host field of the given PUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
public static XenRef<Host> get_host(Session session, string _pusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pusb_get_host(session.uuid, _pusb);
|
||||
else
|
||||
return XenRef<Host>.Create(session.proxy.pusb_get_host(session.uuid, _pusb ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the path field of the given PUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
public static string get_path(Session session, string _pusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pusb_get_path(session.uuid, _pusb);
|
||||
else
|
||||
return (string)session.proxy.pusb_get_path(session.uuid, _pusb ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the vendor_id field of the given PUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
public static string get_vendor_id(Session session, string _pusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pusb_get_vendor_id(session.uuid, _pusb);
|
||||
else
|
||||
return (string)session.proxy.pusb_get_vendor_id(session.uuid, _pusb ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the vendor_desc field of the given PUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
public static string get_vendor_desc(Session session, string _pusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pusb_get_vendor_desc(session.uuid, _pusb);
|
||||
else
|
||||
return (string)session.proxy.pusb_get_vendor_desc(session.uuid, _pusb ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the product_id field of the given PUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
public static string get_product_id(Session session, string _pusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pusb_get_product_id(session.uuid, _pusb);
|
||||
else
|
||||
return (string)session.proxy.pusb_get_product_id(session.uuid, _pusb ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the product_desc field of the given PUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
public static string get_product_desc(Session session, string _pusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pusb_get_product_desc(session.uuid, _pusb);
|
||||
else
|
||||
return (string)session.proxy.pusb_get_product_desc(session.uuid, _pusb ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the serial field of the given PUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
public static string get_serial(Session session, string _pusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pusb_get_serial(session.uuid, _pusb);
|
||||
else
|
||||
return (string)session.proxy.pusb_get_serial(session.uuid, _pusb ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the version field of the given PUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
public static string get_version(Session session, string _pusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pusb_get_version(session.uuid, _pusb);
|
||||
else
|
||||
return (string)session.proxy.pusb_get_version(session.uuid, _pusb ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the description field of the given PUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
public static string get_description(Session session, string _pusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pusb_get_description(session.uuid, _pusb);
|
||||
else
|
||||
return (string)session.proxy.pusb_get_description(session.uuid, _pusb ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the passthrough_enabled field of the given PUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
public static bool get_passthrough_enabled(Session session, string _pusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pusb_get_passthrough_enabled(session.uuid, _pusb);
|
||||
else
|
||||
return (bool)session.proxy.pusb_get_passthrough_enabled(session.uuid, _pusb ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the other_config field of the given PUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
public static Dictionary<string, string> get_other_config(Session session, string _pusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pusb_get_other_config(session.uuid, _pusb);
|
||||
else
|
||||
return Maps.convert_from_proxy_string_string(session.proxy.pusb_get_other_config(session.uuid, _pusb ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Set the other_config field of the given PUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
/// <param name="_other_config">New value to set</param>
|
||||
public static void set_other_config(Session session, string _pusb, Dictionary<string, string> _other_config)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.pusb_set_other_config(session.uuid, _pusb, _other_config);
|
||||
else
|
||||
session.proxy.pusb_set_other_config(session.uuid, _pusb ?? "", Maps.convert_to_proxy_string_string(_other_config)).parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Add the given key-value pair to the other_config field of the given PUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
/// <param name="_key">Key to add</param>
|
||||
/// <param name="_value">Value to add</param>
|
||||
public static void add_to_other_config(Session session, string _pusb, string _key, string _value)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.pusb_add_to_other_config(session.uuid, _pusb, _key, _value);
|
||||
else
|
||||
session.proxy.pusb_add_to_other_config(session.uuid, _pusb ?? "", _key ?? "", _value ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Remove the given key and its corresponding value from the other_config field of the given PUSB. If the key is not in that Map, then do nothing.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
/// <param name="_key">Key to remove</param>
|
||||
public static void remove_from_other_config(Session session, string _pusb, string _key)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.pusb_remove_from_other_config(session.uuid, _pusb, _key);
|
||||
else
|
||||
session.proxy.pusb_remove_from_other_config(session.uuid, _pusb ?? "", _key ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_host">The host</param>
|
||||
public static void scan(Session session, string _host)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.pusb_scan(session.uuid, _host);
|
||||
else
|
||||
session.proxy.pusb_scan(session.uuid, _host ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_host">The host</param>
|
||||
public static XenRef<Task> async_scan(Session session, string _host)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.async_pusb_scan(session.uuid, _host);
|
||||
else
|
||||
return XenRef<Task>.Create(session.proxy.async_pusb_scan(session.uuid, _host ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
/// <param name="_value">passthrough is enabled when true and disabled with false</param>
|
||||
public static void set_passthrough_enabled(Session session, string _pusb, bool _value)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.pusb_set_passthrough_enabled(session.uuid, _pusb, _value);
|
||||
else
|
||||
session.proxy.pusb_set_passthrough_enabled(session.uuid, _pusb ?? "", _value).parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pusb">The opaque_ref of the given pusb</param>
|
||||
/// <param name="_value">passthrough is enabled when true and disabled with false</param>
|
||||
public static XenRef<Task> async_set_passthrough_enabled(Session session, string _pusb, bool _value)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.async_pusb_set_passthrough_enabled(session.uuid, _pusb, _value);
|
||||
else
|
||||
return XenRef<Task>.Create(session.proxy.async_pusb_set_passthrough_enabled(session.uuid, _pusb ?? "", _value).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Return a list of all the PUSBs known to the system.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
public static List<XenRef<PUSB>> get_all(Session session)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pusb_get_all(session.uuid);
|
||||
else
|
||||
return XenRef<PUSB>.Create(session.proxy.pusb_get_all(session.uuid).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get all the PUSB Records at once, in a single XML RPC call
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
public static Dictionary<XenRef<PUSB>, PUSB> get_all_records(Session session)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pusb_get_all_records(session.uuid);
|
||||
else
|
||||
return XenRef<PUSB>.Create<Proxy_PUSB>(session.proxy.pusb_get_all_records(session.uuid).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Unique identifier/object reference
|
||||
/// </summary>
|
||||
public virtual string uuid
|
||||
{
|
||||
get { return _uuid; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _uuid))
|
||||
{
|
||||
_uuid = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("uuid");
|
||||
}
|
||||
}
|
||||
}
|
||||
private string _uuid = "";
|
||||
|
||||
/// <summary>
|
||||
/// USB group the PUSB is contained in
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(XenRefConverter<USB_group>))]
|
||||
public virtual XenRef<USB_group> USB_group
|
||||
{
|
||||
get { return _USB_group; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _USB_group))
|
||||
{
|
||||
_USB_group = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("USB_group");
|
||||
}
|
||||
}
|
||||
}
|
||||
private XenRef<USB_group> _USB_group = new XenRef<USB_group>("OpaqueRef:NULL");
|
||||
|
||||
/// <summary>
|
||||
/// Physical machine that owns the USB device
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(XenRefConverter<Host>))]
|
||||
public virtual XenRef<Host> host
|
||||
{
|
||||
get { return _host; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _host))
|
||||
{
|
||||
_host = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("host");
|
||||
}
|
||||
}
|
||||
}
|
||||
private XenRef<Host> _host = new XenRef<Host>("OpaqueRef:NULL");
|
||||
|
||||
/// <summary>
|
||||
/// port path of USB device
|
||||
/// </summary>
|
||||
public virtual string path
|
||||
{
|
||||
get { return _path; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _path))
|
||||
{
|
||||
_path = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("path");
|
||||
}
|
||||
}
|
||||
}
|
||||
private string _path = "";
|
||||
|
||||
/// <summary>
|
||||
/// vendor id of the USB device
|
||||
/// </summary>
|
||||
public virtual string vendor_id
|
||||
{
|
||||
get { return _vendor_id; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _vendor_id))
|
||||
{
|
||||
_vendor_id = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("vendor_id");
|
||||
}
|
||||
}
|
||||
}
|
||||
private string _vendor_id = "";
|
||||
|
||||
/// <summary>
|
||||
/// vendor description of the USB device
|
||||
/// </summary>
|
||||
public virtual string vendor_desc
|
||||
{
|
||||
get { return _vendor_desc; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _vendor_desc))
|
||||
{
|
||||
_vendor_desc = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("vendor_desc");
|
||||
}
|
||||
}
|
||||
}
|
||||
private string _vendor_desc = "";
|
||||
|
||||
/// <summary>
|
||||
/// product id of the USB device
|
||||
/// </summary>
|
||||
public virtual string product_id
|
||||
{
|
||||
get { return _product_id; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _product_id))
|
||||
{
|
||||
_product_id = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("product_id");
|
||||
}
|
||||
}
|
||||
}
|
||||
private string _product_id = "";
|
||||
|
||||
/// <summary>
|
||||
/// product description of the USB device
|
||||
/// </summary>
|
||||
public virtual string product_desc
|
||||
{
|
||||
get { return _product_desc; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _product_desc))
|
||||
{
|
||||
_product_desc = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("product_desc");
|
||||
}
|
||||
}
|
||||
}
|
||||
private string _product_desc = "";
|
||||
|
||||
/// <summary>
|
||||
/// serial of the USB device
|
||||
/// </summary>
|
||||
public virtual string serial
|
||||
{
|
||||
get { return _serial; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _serial))
|
||||
{
|
||||
_serial = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("serial");
|
||||
}
|
||||
}
|
||||
}
|
||||
private string _serial = "";
|
||||
|
||||
/// <summary>
|
||||
/// USB device version
|
||||
/// </summary>
|
||||
public virtual string version
|
||||
{
|
||||
get { return _version; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _version))
|
||||
{
|
||||
_version = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("version");
|
||||
}
|
||||
}
|
||||
}
|
||||
private string _version = "";
|
||||
|
||||
/// <summary>
|
||||
/// USB device description
|
||||
/// </summary>
|
||||
public virtual string description
|
||||
{
|
||||
get { return _description; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _description))
|
||||
{
|
||||
_description = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("description");
|
||||
}
|
||||
}
|
||||
}
|
||||
private string _description = "";
|
||||
|
||||
/// <summary>
|
||||
/// enabled for passthrough
|
||||
/// </summary>
|
||||
public virtual bool passthrough_enabled
|
||||
{
|
||||
get { return _passthrough_enabled; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _passthrough_enabled))
|
||||
{
|
||||
_passthrough_enabled = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("passthrough_enabled");
|
||||
}
|
||||
}
|
||||
}
|
||||
private bool _passthrough_enabled = false;
|
||||
|
||||
/// <summary>
|
||||
/// additional configuration
|
||||
/// </summary>
|
||||
public virtual Dictionary<string, string> other_config
|
||||
{
|
||||
get { return _other_config; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _other_config))
|
||||
{
|
||||
_other_config = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("other_config");
|
||||
}
|
||||
}
|
||||
}
|
||||
private Dictionary<string, string> _other_config = new Dictionary<string, string>() {};
|
||||
}
|
||||
}
|
@ -135,6 +135,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._VDI, other._VDI);
|
||||
}
|
||||
|
||||
internal static List<PVS_cache_storage> ProxyArrayToObjectList(Proxy_PVS_cache_storage[] input)
|
||||
{
|
||||
var result = new List<PVS_cache_storage>();
|
||||
foreach (var item in input)
|
||||
result.Add(new PVS_cache_storage(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, PVS_cache_storage server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -128,6 +128,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._status, other._status);
|
||||
}
|
||||
|
||||
internal static List<PVS_proxy> ProxyArrayToObjectList(Proxy_PVS_proxy[] input)
|
||||
{
|
||||
var result = new List<PVS_proxy>();
|
||||
foreach (var item in input)
|
||||
result.Add(new PVS_proxy(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, PVS_proxy server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -128,6 +128,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._site, other._site);
|
||||
}
|
||||
|
||||
internal static List<PVS_server> ProxyArrayToObjectList(Proxy_PVS_server[] input)
|
||||
{
|
||||
var result = new List<PVS_server>();
|
||||
foreach (var item in input)
|
||||
result.Add(new PVS_server(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, PVS_server server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -142,6 +142,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._proxies, other._proxies);
|
||||
}
|
||||
|
||||
internal static List<PVS_site> ProxyArrayToObjectList(Proxy_PVS_site[] input)
|
||||
{
|
||||
var result = new List<PVS_site>();
|
||||
foreach (var item in input)
|
||||
result.Add(new PVS_site(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, PVS_site server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -84,7 +84,8 @@ namespace XenAPI
|
||||
Dictionary<string, string> guest_agent_config,
|
||||
Dictionary<string, string> cpu_info,
|
||||
bool policy_no_vendor_device,
|
||||
bool live_patching_disabled)
|
||||
bool live_patching_disabled,
|
||||
bool igmp_snooping_enabled)
|
||||
{
|
||||
this.uuid = uuid;
|
||||
this.name_label = name_label;
|
||||
@ -121,6 +122,7 @@ namespace XenAPI
|
||||
this.cpu_info = cpu_info;
|
||||
this.policy_no_vendor_device = policy_no_vendor_device;
|
||||
this.live_patching_disabled = live_patching_disabled;
|
||||
this.igmp_snooping_enabled = igmp_snooping_enabled;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -169,6 +171,7 @@ namespace XenAPI
|
||||
cpu_info = update.cpu_info;
|
||||
policy_no_vendor_device = update.policy_no_vendor_device;
|
||||
live_patching_disabled = update.live_patching_disabled;
|
||||
igmp_snooping_enabled = update.igmp_snooping_enabled;
|
||||
}
|
||||
|
||||
internal void UpdateFromProxy(Proxy_Pool proxy)
|
||||
@ -208,6 +211,7 @@ namespace XenAPI
|
||||
cpu_info = proxy.cpu_info == null ? null : Maps.convert_from_proxy_string_string(proxy.cpu_info);
|
||||
policy_no_vendor_device = (bool)proxy.policy_no_vendor_device;
|
||||
live_patching_disabled = (bool)proxy.live_patching_disabled;
|
||||
igmp_snooping_enabled = (bool)proxy.igmp_snooping_enabled;
|
||||
}
|
||||
|
||||
public Proxy_Pool ToProxy()
|
||||
@ -248,6 +252,7 @@ namespace XenAPI
|
||||
result_.cpu_info = Maps.convert_to_proxy_string_string(cpu_info);
|
||||
result_.policy_no_vendor_device = policy_no_vendor_device;
|
||||
result_.live_patching_disabled = live_patching_disabled;
|
||||
result_.igmp_snooping_enabled = igmp_snooping_enabled;
|
||||
return result_;
|
||||
}
|
||||
|
||||
@ -292,6 +297,7 @@ namespace XenAPI
|
||||
cpu_info = Maps.convert_from_proxy_string_string(Marshalling.ParseHashTable(table, "cpu_info"));
|
||||
policy_no_vendor_device = Marshalling.ParseBool(table, "policy_no_vendor_device");
|
||||
live_patching_disabled = Marshalling.ParseBool(table, "live_patching_disabled");
|
||||
igmp_snooping_enabled = Marshalling.ParseBool(table, "igmp_snooping_enabled");
|
||||
}
|
||||
|
||||
public bool DeepEquals(Pool other, bool ignoreCurrentOperations)
|
||||
@ -337,7 +343,17 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._guest_agent_config, other._guest_agent_config) &&
|
||||
Helper.AreEqual2(this._cpu_info, other._cpu_info) &&
|
||||
Helper.AreEqual2(this._policy_no_vendor_device, other._policy_no_vendor_device) &&
|
||||
Helper.AreEqual2(this._live_patching_disabled, other._live_patching_disabled);
|
||||
Helper.AreEqual2(this._live_patching_disabled, other._live_patching_disabled) &&
|
||||
Helper.AreEqual2(this._igmp_snooping_enabled, other._igmp_snooping_enabled);
|
||||
}
|
||||
|
||||
internal static List<Pool> ProxyArrayToObjectList(Proxy_Pool[] input)
|
||||
{
|
||||
var result = new List<Pool>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Pool(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Pool server)
|
||||
@ -928,6 +944,20 @@ namespace XenAPI
|
||||
return (bool)session.proxy.pool_get_live_patching_disabled(session.uuid, _pool ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the igmp_snooping_enabled field of the given pool.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pool">The opaque_ref of the given pool</param>
|
||||
public static bool get_igmp_snooping_enabled(Session session, string _pool)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.pool_get_igmp_snooping_enabled(session.uuid, _pool);
|
||||
else
|
||||
return (bool)session.proxy.pool_get_igmp_snooping_enabled(session.uuid, _pool ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Set the name_label field of the given pool.
|
||||
/// First published in XenServer 4.0.
|
||||
@ -2459,6 +2489,36 @@ namespace XenAPI
|
||||
return XenRef<Task>.Create(session.proxy.async_pool_disable_ssl_legacy(session.uuid, _pool ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Enable or disable IGMP Snooping on the pool.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pool">The opaque_ref of the given pool</param>
|
||||
/// <param name="_value">Enable or disable IGMP Snooping on the pool</param>
|
||||
public static void set_igmp_snooping_enabled(Session session, string _pool, bool _value)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.pool_set_igmp_snooping_enabled(session.uuid, _pool, _value);
|
||||
else
|
||||
session.proxy.pool_set_igmp_snooping_enabled(session.uuid, _pool ?? "", _value).parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Enable or disable IGMP Snooping on the pool.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_pool">The opaque_ref of the given pool</param>
|
||||
/// <param name="_value">Enable or disable IGMP Snooping on the pool</param>
|
||||
public static XenRef<Task> async_set_igmp_snooping_enabled(Session session, string _pool, bool _value)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.async_pool_set_igmp_snooping_enabled(session.uuid, _pool, _value);
|
||||
else
|
||||
return XenRef<Task>.Create(session.proxy.async_pool_set_igmp_snooping_enabled(session.uuid, _pool ?? "", _value).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Return true if the extension is available on the pool
|
||||
/// First published in XenServer 7.0.
|
||||
@ -3238,5 +3298,24 @@ namespace XenAPI
|
||||
}
|
||||
}
|
||||
private bool _live_patching_disabled = false;
|
||||
|
||||
/// <summary>
|
||||
/// true if IGMP snooping is enabled in the pool, false otherwise.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
public virtual bool igmp_snooping_enabled
|
||||
{
|
||||
get { return _igmp_snooping_enabled; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _igmp_snooping_enabled))
|
||||
{
|
||||
_igmp_snooping_enabled = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("igmp_snooping_enabled");
|
||||
}
|
||||
}
|
||||
}
|
||||
private bool _igmp_snooping_enabled = false;
|
||||
}
|
||||
}
|
||||
|
@ -163,6 +163,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._other_config, other._other_config);
|
||||
}
|
||||
|
||||
internal static List<Pool_patch> ProxyArrayToObjectList(Proxy_Pool_patch[] input)
|
||||
{
|
||||
var result = new List<Pool_patch>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Pool_patch(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Pool_patch server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -170,6 +170,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._enforce_homogeneity, other._enforce_homogeneity);
|
||||
}
|
||||
|
||||
internal static List<Pool_update> ProxyArrayToObjectList(Proxy_Pool_update[] input)
|
||||
{
|
||||
var result = new List<Pool_update>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Pool_update(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Pool_update server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -604,6 +604,10 @@ namespace XenAPI
|
||||
Response<bool>
|
||||
pool_get_live_patching_disabled(string session, string _pool);
|
||||
|
||||
[XmlRpcMethod("pool.get_igmp_snooping_enabled")]
|
||||
Response<bool>
|
||||
pool_get_igmp_snooping_enabled(string session, string _pool);
|
||||
|
||||
[XmlRpcMethod("pool.set_name_label")]
|
||||
Response<string>
|
||||
pool_set_name_label(string session, string _pool, string _name_label);
|
||||
@ -1024,6 +1028,14 @@ namespace XenAPI
|
||||
Response<string>
|
||||
async_pool_disable_ssl_legacy(string session, string _pool);
|
||||
|
||||
[XmlRpcMethod("pool.set_igmp_snooping_enabled")]
|
||||
Response<string>
|
||||
pool_set_igmp_snooping_enabled(string session, string _pool, bool _value);
|
||||
|
||||
[XmlRpcMethod("Async.pool.set_igmp_snooping_enabled")]
|
||||
Response<string>
|
||||
async_pool_set_igmp_snooping_enabled(string session, string _pool, bool _value);
|
||||
|
||||
[XmlRpcMethod("pool.has_extension")]
|
||||
Response<bool>
|
||||
pool_has_extension(string session, string _pool, string _name);
|
||||
@ -1444,6 +1456,10 @@ namespace XenAPI
|
||||
Response<string []>
|
||||
vm_get_vbds(string session, string _vm);
|
||||
|
||||
[XmlRpcMethod("VM.get_VUSBs")]
|
||||
Response<string []>
|
||||
vm_get_vusbs(string session, string _vm);
|
||||
|
||||
[XmlRpcMethod("VM.get_crash_dumps")]
|
||||
Response<string []>
|
||||
vm_get_crash_dumps(string session, string _vm);
|
||||
@ -2148,6 +2164,14 @@ namespace XenAPI
|
||||
Response<string>
|
||||
async_vm_migrate_send(string session, string _vm, Object _dest, bool _live, Object _vdi_map, Object _vif_map, Object _options);
|
||||
|
||||
[XmlRpcMethod("VM.migrate_send")]
|
||||
Response<string>
|
||||
vm_migrate_send(string session, string _vm, Object _dest, bool _live, Object _vdi_map, Object _vif_map, Object _options, Object _vgpu_map);
|
||||
|
||||
[XmlRpcMethod("Async.VM.migrate_send")]
|
||||
Response<string>
|
||||
async_vm_migrate_send(string session, string _vm, Object _dest, bool _live, Object _vdi_map, Object _vif_map, Object _options, Object _vgpu_map);
|
||||
|
||||
[XmlRpcMethod("VM.assert_can_migrate")]
|
||||
Response<string>
|
||||
vm_assert_can_migrate(string session, string _vm, Object _dest, bool _live, Object _vdi_map, Object _vif_map, Object _options);
|
||||
@ -2156,6 +2180,14 @@ namespace XenAPI
|
||||
Response<string>
|
||||
async_vm_assert_can_migrate(string session, string _vm, Object _dest, bool _live, Object _vdi_map, Object _vif_map, Object _options);
|
||||
|
||||
[XmlRpcMethod("VM.assert_can_migrate")]
|
||||
Response<string>
|
||||
vm_assert_can_migrate(string session, string _vm, Object _dest, bool _live, Object _vdi_map, Object _vif_map, Object _options, Object _vgpu_map);
|
||||
|
||||
[XmlRpcMethod("Async.VM.assert_can_migrate")]
|
||||
Response<string>
|
||||
async_vm_assert_can_migrate(string session, string _vm, Object _dest, bool _live, Object _vdi_map, Object _vif_map, Object _options, Object _vgpu_map);
|
||||
|
||||
[XmlRpcMethod("VM.get_boot_record")]
|
||||
Response<Proxy_VM>
|
||||
vm_get_boot_record(string session, string _vm);
|
||||
@ -2248,6 +2280,14 @@ namespace XenAPI
|
||||
Response<string>
|
||||
async_vm_retrieve_wlb_recommendations(string session, string _vm);
|
||||
|
||||
[XmlRpcMethod("VM.set_bios_strings")]
|
||||
Response<string>
|
||||
vm_set_bios_strings(string session, string _vm, Object _value);
|
||||
|
||||
[XmlRpcMethod("Async.VM.set_bios_strings")]
|
||||
Response<string>
|
||||
async_vm_set_bios_strings(string session, string _vm, Object _value);
|
||||
|
||||
[XmlRpcMethod("VM.copy_bios_strings")]
|
||||
Response<string>
|
||||
vm_copy_bios_strings(string session, string _vm, string _host);
|
||||
@ -3256,6 +3296,10 @@ namespace XenAPI
|
||||
Response<string []>
|
||||
host_get_pgpus(string session, string _host);
|
||||
|
||||
[XmlRpcMethod("host.get_PUSBs")]
|
||||
Response<string []>
|
||||
host_get_pusbs(string session, string _host);
|
||||
|
||||
[XmlRpcMethod("host.get_ssl_legacy")]
|
||||
Response<bool>
|
||||
host_get_ssl_legacy(string session, string _host);
|
||||
@ -4144,6 +4188,10 @@ namespace XenAPI
|
||||
Response<Object>
|
||||
network_get_assigned_ips(string session, string _network);
|
||||
|
||||
[XmlRpcMethod("network.get_purpose")]
|
||||
Response<string []>
|
||||
network_get_purpose(string session, string _network);
|
||||
|
||||
[XmlRpcMethod("network.set_name_label")]
|
||||
Response<string>
|
||||
network_set_name_label(string session, string _network, string _label);
|
||||
@ -4204,6 +4252,22 @@ namespace XenAPI
|
||||
Response<string>
|
||||
async_network_set_default_locking_mode(string session, string _network, string _value);
|
||||
|
||||
[XmlRpcMethod("network.add_purpose")]
|
||||
Response<string>
|
||||
network_add_purpose(string session, string _network, string _value);
|
||||
|
||||
[XmlRpcMethod("Async.network.add_purpose")]
|
||||
Response<string>
|
||||
async_network_add_purpose(string session, string _network, string _value);
|
||||
|
||||
[XmlRpcMethod("network.remove_purpose")]
|
||||
Response<string>
|
||||
network_remove_purpose(string session, string _network, string _value);
|
||||
|
||||
[XmlRpcMethod("Async.network.remove_purpose")]
|
||||
Response<string>
|
||||
async_network_remove_purpose(string session, string _network, string _value);
|
||||
|
||||
[XmlRpcMethod("network.get_all")]
|
||||
Response<string []>
|
||||
network_get_all(string session);
|
||||
@ -4664,6 +4728,10 @@ namespace XenAPI
|
||||
Response<string []>
|
||||
pif_get_capabilities(string session, string _pif);
|
||||
|
||||
[XmlRpcMethod("PIF.get_igmp_snooping_status")]
|
||||
Response<string>
|
||||
pif_get_igmp_snooping_status(string session, string _pif);
|
||||
|
||||
[XmlRpcMethod("PIF.set_other_config")]
|
||||
Response<string>
|
||||
pif_set_other_config(string session, string _pif, Object _other_config);
|
||||
@ -5956,22 +6024,18 @@ namespace XenAPI
|
||||
Response<string>
|
||||
async_vdi_data_destroy(string session, string _vdi);
|
||||
|
||||
[XmlRpcMethod("VDI.export_changed_blocks")]
|
||||
[XmlRpcMethod("VDI.list_changed_blocks")]
|
||||
Response<string>
|
||||
vdi_export_changed_blocks(string session, string _vdi, string _vdi_to);
|
||||
vdi_list_changed_blocks(string session, string _vdi, string _vdi_to);
|
||||
|
||||
[XmlRpcMethod("Async.VDI.export_changed_blocks")]
|
||||
[XmlRpcMethod("Async.VDI.list_changed_blocks")]
|
||||
Response<string>
|
||||
async_vdi_export_changed_blocks(string session, string _vdi, string _vdi_to);
|
||||
async_vdi_list_changed_blocks(string session, string _vdi, string _vdi_to);
|
||||
|
||||
[XmlRpcMethod("VDI.get_nbd_info")]
|
||||
Response<string []>
|
||||
Response<Proxy_Vdi_nbd_server_info[]>
|
||||
vdi_get_nbd_info(string session, string _vdi);
|
||||
|
||||
[XmlRpcMethod("Async.VDI.get_nbd_info")]
|
||||
Response<string>
|
||||
async_vdi_get_nbd_info(string session, string _vdi);
|
||||
|
||||
[XmlRpcMethod("VDI.get_all")]
|
||||
Response<string []>
|
||||
vdi_get_all(string session);
|
||||
@ -6920,6 +6984,10 @@ namespace XenAPI
|
||||
Response<bool>
|
||||
pgpu_get_is_system_display_device(string session, string _pgpu);
|
||||
|
||||
[XmlRpcMethod("PGPU.get_compatibility_metadata")]
|
||||
Response<Object>
|
||||
pgpu_get_compatibility_metadata(string session, string _pgpu);
|
||||
|
||||
[XmlRpcMethod("PGPU.set_other_config")]
|
||||
Response<string>
|
||||
pgpu_set_other_config(string session, string _pgpu, Object _other_config);
|
||||
@ -7144,6 +7212,10 @@ namespace XenAPI
|
||||
Response<string>
|
||||
vgpu_get_resident_on(string session, string _vgpu);
|
||||
|
||||
[XmlRpcMethod("VGPU.get_scheduled_to_be_resident_on")]
|
||||
Response<string>
|
||||
vgpu_get_scheduled_to_be_resident_on(string session, string _vgpu);
|
||||
|
||||
[XmlRpcMethod("VGPU.set_other_config")]
|
||||
Response<string>
|
||||
vgpu_set_other_config(string session, string _vgpu, Object _other_config);
|
||||
@ -7599,6 +7671,266 @@ namespace XenAPI
|
||||
[XmlRpcMethod("SDN_controller.get_all_records")]
|
||||
Response<Object>
|
||||
sdn_controller_get_all_records(string session);
|
||||
|
||||
[XmlRpcMethod("vdi_nbd_server_info.get_all_records")]
|
||||
Response<Object>
|
||||
vdi_nbd_server_info_get_all_records(string session);
|
||||
|
||||
[XmlRpcMethod("PUSB.get_record")]
|
||||
Response<Proxy_PUSB>
|
||||
pusb_get_record(string session, string _pusb);
|
||||
|
||||
[XmlRpcMethod("PUSB.get_by_uuid")]
|
||||
Response<string>
|
||||
pusb_get_by_uuid(string session, string _uuid);
|
||||
|
||||
[XmlRpcMethod("PUSB.get_uuid")]
|
||||
Response<string>
|
||||
pusb_get_uuid(string session, string _pusb);
|
||||
|
||||
[XmlRpcMethod("PUSB.get_USB_group")]
|
||||
Response<string>
|
||||
pusb_get_usb_group(string session, string _pusb);
|
||||
|
||||
[XmlRpcMethod("PUSB.get_host")]
|
||||
Response<string>
|
||||
pusb_get_host(string session, string _pusb);
|
||||
|
||||
[XmlRpcMethod("PUSB.get_path")]
|
||||
Response<string>
|
||||
pusb_get_path(string session, string _pusb);
|
||||
|
||||
[XmlRpcMethod("PUSB.get_vendor_id")]
|
||||
Response<string>
|
||||
pusb_get_vendor_id(string session, string _pusb);
|
||||
|
||||
[XmlRpcMethod("PUSB.get_vendor_desc")]
|
||||
Response<string>
|
||||
pusb_get_vendor_desc(string session, string _pusb);
|
||||
|
||||
[XmlRpcMethod("PUSB.get_product_id")]
|
||||
Response<string>
|
||||
pusb_get_product_id(string session, string _pusb);
|
||||
|
||||
[XmlRpcMethod("PUSB.get_product_desc")]
|
||||
Response<string>
|
||||
pusb_get_product_desc(string session, string _pusb);
|
||||
|
||||
[XmlRpcMethod("PUSB.get_serial")]
|
||||
Response<string>
|
||||
pusb_get_serial(string session, string _pusb);
|
||||
|
||||
[XmlRpcMethod("PUSB.get_version")]
|
||||
Response<string>
|
||||
pusb_get_version(string session, string _pusb);
|
||||
|
||||
[XmlRpcMethod("PUSB.get_description")]
|
||||
Response<string>
|
||||
pusb_get_description(string session, string _pusb);
|
||||
|
||||
[XmlRpcMethod("PUSB.get_passthrough_enabled")]
|
||||
Response<bool>
|
||||
pusb_get_passthrough_enabled(string session, string _pusb);
|
||||
|
||||
[XmlRpcMethod("PUSB.get_other_config")]
|
||||
Response<Object>
|
||||
pusb_get_other_config(string session, string _pusb);
|
||||
|
||||
[XmlRpcMethod("PUSB.set_other_config")]
|
||||
Response<string>
|
||||
pusb_set_other_config(string session, string _pusb, Object _other_config);
|
||||
|
||||
[XmlRpcMethod("PUSB.add_to_other_config")]
|
||||
Response<string>
|
||||
pusb_add_to_other_config(string session, string _pusb, string _key, string _value);
|
||||
|
||||
[XmlRpcMethod("PUSB.remove_from_other_config")]
|
||||
Response<string>
|
||||
pusb_remove_from_other_config(string session, string _pusb, string _key);
|
||||
|
||||
[XmlRpcMethod("PUSB.scan")]
|
||||
Response<string>
|
||||
pusb_scan(string session, string _host);
|
||||
|
||||
[XmlRpcMethod("Async.PUSB.scan")]
|
||||
Response<string>
|
||||
async_pusb_scan(string session, string _host);
|
||||
|
||||
[XmlRpcMethod("PUSB.set_passthrough_enabled")]
|
||||
Response<string>
|
||||
pusb_set_passthrough_enabled(string session, string _pusb, bool _value);
|
||||
|
||||
[XmlRpcMethod("Async.PUSB.set_passthrough_enabled")]
|
||||
Response<string>
|
||||
async_pusb_set_passthrough_enabled(string session, string _pusb, bool _value);
|
||||
|
||||
[XmlRpcMethod("PUSB.get_all")]
|
||||
Response<string []>
|
||||
pusb_get_all(string session);
|
||||
|
||||
[XmlRpcMethod("PUSB.get_all_records")]
|
||||
Response<Object>
|
||||
pusb_get_all_records(string session);
|
||||
|
||||
[XmlRpcMethod("USB_group.get_record")]
|
||||
Response<Proxy_USB_group>
|
||||
usb_group_get_record(string session, string _usb_group);
|
||||
|
||||
[XmlRpcMethod("USB_group.get_by_uuid")]
|
||||
Response<string>
|
||||
usb_group_get_by_uuid(string session, string _uuid);
|
||||
|
||||
[XmlRpcMethod("USB_group.get_by_name_label")]
|
||||
Response<string []>
|
||||
usb_group_get_by_name_label(string session, string _label);
|
||||
|
||||
[XmlRpcMethod("USB_group.get_uuid")]
|
||||
Response<string>
|
||||
usb_group_get_uuid(string session, string _usb_group);
|
||||
|
||||
[XmlRpcMethod("USB_group.get_name_label")]
|
||||
Response<string>
|
||||
usb_group_get_name_label(string session, string _usb_group);
|
||||
|
||||
[XmlRpcMethod("USB_group.get_name_description")]
|
||||
Response<string>
|
||||
usb_group_get_name_description(string session, string _usb_group);
|
||||
|
||||
[XmlRpcMethod("USB_group.get_PUSBs")]
|
||||
Response<string []>
|
||||
usb_group_get_pusbs(string session, string _usb_group);
|
||||
|
||||
[XmlRpcMethod("USB_group.get_VUSBs")]
|
||||
Response<string []>
|
||||
usb_group_get_vusbs(string session, string _usb_group);
|
||||
|
||||
[XmlRpcMethod("USB_group.get_other_config")]
|
||||
Response<Object>
|
||||
usb_group_get_other_config(string session, string _usb_group);
|
||||
|
||||
[XmlRpcMethod("USB_group.set_name_label")]
|
||||
Response<string>
|
||||
usb_group_set_name_label(string session, string _usb_group, string _label);
|
||||
|
||||
[XmlRpcMethod("USB_group.set_name_description")]
|
||||
Response<string>
|
||||
usb_group_set_name_description(string session, string _usb_group, string _description);
|
||||
|
||||
[XmlRpcMethod("USB_group.set_other_config")]
|
||||
Response<string>
|
||||
usb_group_set_other_config(string session, string _usb_group, Object _other_config);
|
||||
|
||||
[XmlRpcMethod("USB_group.add_to_other_config")]
|
||||
Response<string>
|
||||
usb_group_add_to_other_config(string session, string _usb_group, string _key, string _value);
|
||||
|
||||
[XmlRpcMethod("USB_group.remove_from_other_config")]
|
||||
Response<string>
|
||||
usb_group_remove_from_other_config(string session, string _usb_group, string _key);
|
||||
|
||||
[XmlRpcMethod("USB_group.create")]
|
||||
Response<string>
|
||||
usb_group_create(string session, string _name_label, string _name_description, Object _other_config);
|
||||
|
||||
[XmlRpcMethod("Async.USB_group.create")]
|
||||
Response<string>
|
||||
async_usb_group_create(string session, string _name_label, string _name_description, Object _other_config);
|
||||
|
||||
[XmlRpcMethod("USB_group.destroy")]
|
||||
Response<string>
|
||||
usb_group_destroy(string session, string _usb_group);
|
||||
|
||||
[XmlRpcMethod("Async.USB_group.destroy")]
|
||||
Response<string>
|
||||
async_usb_group_destroy(string session, string _usb_group);
|
||||
|
||||
[XmlRpcMethod("USB_group.get_all")]
|
||||
Response<string []>
|
||||
usb_group_get_all(string session);
|
||||
|
||||
[XmlRpcMethod("USB_group.get_all_records")]
|
||||
Response<Object>
|
||||
usb_group_get_all_records(string session);
|
||||
|
||||
[XmlRpcMethod("VUSB.get_record")]
|
||||
Response<Proxy_VUSB>
|
||||
vusb_get_record(string session, string _vusb);
|
||||
|
||||
[XmlRpcMethod("VUSB.get_by_uuid")]
|
||||
Response<string>
|
||||
vusb_get_by_uuid(string session, string _uuid);
|
||||
|
||||
[XmlRpcMethod("VUSB.get_uuid")]
|
||||
Response<string>
|
||||
vusb_get_uuid(string session, string _vusb);
|
||||
|
||||
[XmlRpcMethod("VUSB.get_allowed_operations")]
|
||||
Response<string []>
|
||||
vusb_get_allowed_operations(string session, string _vusb);
|
||||
|
||||
[XmlRpcMethod("VUSB.get_current_operations")]
|
||||
Response<Object>
|
||||
vusb_get_current_operations(string session, string _vusb);
|
||||
|
||||
[XmlRpcMethod("VUSB.get_VM")]
|
||||
Response<string>
|
||||
vusb_get_vm(string session, string _vusb);
|
||||
|
||||
[XmlRpcMethod("VUSB.get_USB_group")]
|
||||
Response<string>
|
||||
vusb_get_usb_group(string session, string _vusb);
|
||||
|
||||
[XmlRpcMethod("VUSB.get_other_config")]
|
||||
Response<Object>
|
||||
vusb_get_other_config(string session, string _vusb);
|
||||
|
||||
[XmlRpcMethod("VUSB.get_currently_attached")]
|
||||
Response<bool>
|
||||
vusb_get_currently_attached(string session, string _vusb);
|
||||
|
||||
[XmlRpcMethod("VUSB.set_other_config")]
|
||||
Response<string>
|
||||
vusb_set_other_config(string session, string _vusb, Object _other_config);
|
||||
|
||||
[XmlRpcMethod("VUSB.add_to_other_config")]
|
||||
Response<string>
|
||||
vusb_add_to_other_config(string session, string _vusb, string _key, string _value);
|
||||
|
||||
[XmlRpcMethod("VUSB.remove_from_other_config")]
|
||||
Response<string>
|
||||
vusb_remove_from_other_config(string session, string _vusb, string _key);
|
||||
|
||||
[XmlRpcMethod("VUSB.create")]
|
||||
Response<string>
|
||||
vusb_create(string session, string _vm, string _usb_group, Object _other_config);
|
||||
|
||||
[XmlRpcMethod("Async.VUSB.create")]
|
||||
Response<string>
|
||||
async_vusb_create(string session, string _vm, string _usb_group, Object _other_config);
|
||||
|
||||
[XmlRpcMethod("VUSB.unplug")]
|
||||
Response<string>
|
||||
vusb_unplug(string session, string _vusb);
|
||||
|
||||
[XmlRpcMethod("Async.VUSB.unplug")]
|
||||
Response<string>
|
||||
async_vusb_unplug(string session, string _vusb);
|
||||
|
||||
[XmlRpcMethod("VUSB.destroy")]
|
||||
Response<string>
|
||||
vusb_destroy(string session, string _vusb);
|
||||
|
||||
[XmlRpcMethod("Async.VUSB.destroy")]
|
||||
Response<string>
|
||||
async_vusb_destroy(string session, string _vusb);
|
||||
|
||||
[XmlRpcMethod("VUSB.get_all")]
|
||||
Response<string []>
|
||||
vusb_get_all(string session);
|
||||
|
||||
[XmlRpcMethod("VUSB.get_all_records")]
|
||||
Response<Object>
|
||||
vusb_get_all_records(string session);
|
||||
}
|
||||
|
||||
[XmlRpcMissingMapping(MappingAction.Ignore)]
|
||||
@ -7704,6 +8036,7 @@ namespace XenAPI
|
||||
public Object cpu_info;
|
||||
public bool policy_no_vendor_device;
|
||||
public bool live_patching_disabled;
|
||||
public bool igmp_snooping_enabled;
|
||||
}
|
||||
|
||||
[XmlRpcMissingMapping(MappingAction.Ignore)]
|
||||
@ -7767,6 +8100,7 @@ namespace XenAPI
|
||||
public string [] consoles;
|
||||
public string [] VIFs;
|
||||
public string [] VBDs;
|
||||
public string [] VUSBs;
|
||||
public string [] crash_dumps;
|
||||
public string [] VTPMs;
|
||||
public string PV_bootloader;
|
||||
@ -7972,6 +8306,7 @@ namespace XenAPI
|
||||
public Object chipset_info;
|
||||
public string [] PCIs;
|
||||
public string [] PGPUs;
|
||||
public string [] PUSBs;
|
||||
public bool ssl_legacy;
|
||||
public Object guest_VCPUs_params;
|
||||
public string display;
|
||||
@ -8053,6 +8388,7 @@ namespace XenAPI
|
||||
public string [] tags;
|
||||
public string default_locking_mode;
|
||||
public Object assigned_ips;
|
||||
public string [] purpose;
|
||||
}
|
||||
|
||||
[XmlRpcMissingMapping(MappingAction.Ignore)]
|
||||
@ -8131,6 +8467,7 @@ namespace XenAPI
|
||||
public bool managed;
|
||||
public Object properties;
|
||||
public string [] capabilities;
|
||||
public string igmp_snooping_status;
|
||||
}
|
||||
|
||||
[XmlRpcMissingMapping(MappingAction.Ignore)]
|
||||
@ -8430,6 +8767,7 @@ namespace XenAPI
|
||||
public Object supported_VGPU_max_capacities;
|
||||
public string dom0_access;
|
||||
public bool is_system_display_device;
|
||||
public Object compatibility_metadata;
|
||||
}
|
||||
|
||||
[XmlRpcMissingMapping(MappingAction.Ignore)]
|
||||
@ -8458,6 +8796,7 @@ namespace XenAPI
|
||||
public Object other_config;
|
||||
public string type;
|
||||
public string resident_on;
|
||||
public string scheduled_to_be_resident_on;
|
||||
}
|
||||
|
||||
[XmlRpcMissingMapping(MappingAction.Ignore)]
|
||||
@ -8544,4 +8883,55 @@ namespace XenAPI
|
||||
public string port;
|
||||
}
|
||||
|
||||
[XmlRpcMissingMapping(MappingAction.Ignore)]
|
||||
public class Proxy_Vdi_nbd_server_info
|
||||
{
|
||||
public string exportname;
|
||||
public string address;
|
||||
public string port;
|
||||
public string cert;
|
||||
public string subject;
|
||||
}
|
||||
|
||||
[XmlRpcMissingMapping(MappingAction.Ignore)]
|
||||
public class Proxy_PUSB
|
||||
{
|
||||
public string uuid;
|
||||
public string USB_group;
|
||||
public string host;
|
||||
public string path;
|
||||
public string vendor_id;
|
||||
public string vendor_desc;
|
||||
public string product_id;
|
||||
public string product_desc;
|
||||
public string serial;
|
||||
public string version;
|
||||
public string description;
|
||||
public bool passthrough_enabled;
|
||||
public Object other_config;
|
||||
}
|
||||
|
||||
[XmlRpcMissingMapping(MappingAction.Ignore)]
|
||||
public class Proxy_USB_group
|
||||
{
|
||||
public string uuid;
|
||||
public string name_label;
|
||||
public string name_description;
|
||||
public string [] PUSBs;
|
||||
public string [] VUSBs;
|
||||
public Object other_config;
|
||||
}
|
||||
|
||||
[XmlRpcMissingMapping(MappingAction.Ignore)]
|
||||
public class Proxy_VUSB
|
||||
{
|
||||
public string uuid;
|
||||
public string [] allowed_operations;
|
||||
public Object current_operations;
|
||||
public string VM;
|
||||
public string USB_group;
|
||||
public Object other_config;
|
||||
public bool currently_attached;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -65,6 +65,11 @@ namespace XenAPI
|
||||
new Relation("PGPUs", "PGPU", "GPU_group"),
|
||||
});
|
||||
|
||||
relations.Add(typeof(Proxy_USB_group), new Relation[] {
|
||||
new Relation("VUSBs", "VUSB", "USB_group"),
|
||||
new Relation("PUSBs", "PUSB", "USB_group"),
|
||||
});
|
||||
|
||||
relations.Add(typeof(Proxy_Subject), new Relation[] {
|
||||
new Relation("roles", "subject", "roles"),
|
||||
});
|
||||
@ -134,6 +139,7 @@ namespace XenAPI
|
||||
});
|
||||
|
||||
relations.Add(typeof(Proxy_VM), new Relation[] {
|
||||
new Relation("VUSBs", "VUSB", "VM"),
|
||||
new Relation("VGPUs", "VGPU", "VM"),
|
||||
new Relation("consoles", "console", "VM"),
|
||||
new Relation("VTPMs", "VTPM", "VM"),
|
||||
@ -150,6 +156,7 @@ namespace XenAPI
|
||||
|
||||
relations.Add(typeof(Proxy_Host), new Relation[] {
|
||||
new Relation("features", "Feature", "host"),
|
||||
new Relation("PUSBs", "PUSB", "host"),
|
||||
new Relation("PGPUs", "PGPU", "host"),
|
||||
new Relation("PCIs", "PCI", "host"),
|
||||
new Relation("patches", "host_patch", "host"),
|
||||
|
@ -121,6 +121,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._subroles, other._subroles);
|
||||
}
|
||||
|
||||
internal static List<Role> ProxyArrayToObjectList(Proxy_Role[] input)
|
||||
{
|
||||
var result = new List<Role>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Role(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Role server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -121,6 +121,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._port, other._port);
|
||||
}
|
||||
|
||||
internal static List<SDN_controller> ProxyArrayToObjectList(Proxy_SDN_controller[] input)
|
||||
{
|
||||
var result = new List<SDN_controller>();
|
||||
foreach (var item in input)
|
||||
result.Add(new SDN_controller(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, SDN_controller server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -191,6 +191,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._required_cluster_stack, other._required_cluster_stack);
|
||||
}
|
||||
|
||||
internal static List<SM> ProxyArrayToObjectList(Proxy_SM[] input)
|
||||
{
|
||||
var result = new List<SM>();
|
||||
foreach (var item in input)
|
||||
result.Add(new SM(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, SM server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -242,6 +242,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._is_tools_sr, other._is_tools_sr);
|
||||
}
|
||||
|
||||
internal static List<SR> ProxyArrayToObjectList(Proxy_SR[] input)
|
||||
{
|
||||
var result = new List<SR>();
|
||||
foreach (var item in input)
|
||||
result.Add(new SR(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, SR server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
@ -1488,7 +1497,7 @@ namespace XenAPI
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.sr_get_data_sources(session.uuid, _sr);
|
||||
else
|
||||
return Helper.Proxy_Data_sourceArrayToData_sourceList(session.proxy.sr_get_data_sources(session.uuid, _sr ?? "").parse());
|
||||
return Data_source.ProxyArrayToObjectList(session.proxy.sr_get_data_sources(session.uuid, _sr ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -114,6 +114,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._other_config, other._other_config);
|
||||
}
|
||||
|
||||
internal static List<Secret> ProxyArrayToObjectList(Proxy_Secret[] input)
|
||||
{
|
||||
var result = new List<Secret>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Secret(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Secret server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -121,6 +121,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._roles, other._roles);
|
||||
}
|
||||
|
||||
internal static List<Subject> ProxyArrayToObjectList(Proxy_Subject[] input)
|
||||
{
|
||||
var result = new List<Subject>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Subject(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Subject server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -214,6 +214,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._backtrace, other._backtrace);
|
||||
}
|
||||
|
||||
internal static List<Task> ProxyArrayToObjectList(Proxy_Task[] input)
|
||||
{
|
||||
var result = new List<Task>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Task(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Task server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -128,6 +128,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._other_config, other._other_config);
|
||||
}
|
||||
|
||||
internal static List<Tunnel> ProxyArrayToObjectList(Proxy_Tunnel[] input)
|
||||
{
|
||||
var result = new List<Tunnel>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Tunnel(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Tunnel server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
569
XenModel/XenAPI/USB_group.cs
Normal file
569
XenModel/XenAPI/USB_group.cs
Normal file
@ -0,0 +1,569 @@
|
||||
/*
|
||||
* 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;
|
||||
using System.ComponentModel;
|
||||
using System.Globalization;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Converters;
|
||||
|
||||
|
||||
namespace XenAPI
|
||||
{
|
||||
/// <summary>
|
||||
/// A group of compatible USBs across the resource pool
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
public partial class USB_group : XenObject<USB_group>
|
||||
{
|
||||
public USB_group()
|
||||
{
|
||||
}
|
||||
|
||||
public USB_group(string uuid,
|
||||
string name_label,
|
||||
string name_description,
|
||||
List<XenRef<PUSB>> PUSBs,
|
||||
List<XenRef<VUSB>> VUSBs,
|
||||
Dictionary<string, string> other_config)
|
||||
{
|
||||
this.uuid = uuid;
|
||||
this.name_label = name_label;
|
||||
this.name_description = name_description;
|
||||
this.PUSBs = PUSBs;
|
||||
this.VUSBs = VUSBs;
|
||||
this.other_config = other_config;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Creates a new USB_group from a Proxy_USB_group.
|
||||
/// </summary>
|
||||
/// <param name="proxy"></param>
|
||||
public USB_group(Proxy_USB_group proxy)
|
||||
{
|
||||
this.UpdateFromProxy(proxy);
|
||||
}
|
||||
|
||||
public override void UpdateFrom(USB_group update)
|
||||
{
|
||||
uuid = update.uuid;
|
||||
name_label = update.name_label;
|
||||
name_description = update.name_description;
|
||||
PUSBs = update.PUSBs;
|
||||
VUSBs = update.VUSBs;
|
||||
other_config = update.other_config;
|
||||
}
|
||||
|
||||
internal void UpdateFromProxy(Proxy_USB_group proxy)
|
||||
{
|
||||
uuid = proxy.uuid == null ? null : (string)proxy.uuid;
|
||||
name_label = proxy.name_label == null ? null : (string)proxy.name_label;
|
||||
name_description = proxy.name_description == null ? null : (string)proxy.name_description;
|
||||
PUSBs = proxy.PUSBs == null ? null : XenRef<PUSB>.Create(proxy.PUSBs);
|
||||
VUSBs = proxy.VUSBs == null ? null : XenRef<VUSB>.Create(proxy.VUSBs);
|
||||
other_config = proxy.other_config == null ? null : Maps.convert_from_proxy_string_string(proxy.other_config);
|
||||
}
|
||||
|
||||
public Proxy_USB_group ToProxy()
|
||||
{
|
||||
Proxy_USB_group result_ = new Proxy_USB_group();
|
||||
result_.uuid = uuid ?? "";
|
||||
result_.name_label = name_label ?? "";
|
||||
result_.name_description = name_description ?? "";
|
||||
result_.PUSBs = (PUSBs != null) ? Helper.RefListToStringArray(PUSBs) : new string[] {};
|
||||
result_.VUSBs = (VUSBs != null) ? Helper.RefListToStringArray(VUSBs) : new string[] {};
|
||||
result_.other_config = Maps.convert_to_proxy_string_string(other_config);
|
||||
return result_;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Creates a new USB_group from a Hashtable.
|
||||
/// </summary>
|
||||
/// <param name="table"></param>
|
||||
public USB_group(Hashtable table)
|
||||
{
|
||||
uuid = Marshalling.ParseString(table, "uuid");
|
||||
name_label = Marshalling.ParseString(table, "name_label");
|
||||
name_description = Marshalling.ParseString(table, "name_description");
|
||||
PUSBs = Marshalling.ParseSetRef<PUSB>(table, "PUSBs");
|
||||
VUSBs = Marshalling.ParseSetRef<VUSB>(table, "VUSBs");
|
||||
other_config = Maps.convert_from_proxy_string_string(Marshalling.ParseHashTable(table, "other_config"));
|
||||
}
|
||||
|
||||
public bool DeepEquals(USB_group other)
|
||||
{
|
||||
if (ReferenceEquals(null, other))
|
||||
return false;
|
||||
if (ReferenceEquals(this, other))
|
||||
return true;
|
||||
|
||||
return Helper.AreEqual2(this._uuid, other._uuid) &&
|
||||
Helper.AreEqual2(this._name_label, other._name_label) &&
|
||||
Helper.AreEqual2(this._name_description, other._name_description) &&
|
||||
Helper.AreEqual2(this._PUSBs, other._PUSBs) &&
|
||||
Helper.AreEqual2(this._VUSBs, other._VUSBs) &&
|
||||
Helper.AreEqual2(this._other_config, other._other_config);
|
||||
}
|
||||
|
||||
internal static List<USB_group> ProxyArrayToObjectList(Proxy_USB_group[] input)
|
||||
{
|
||||
var result = new List<USB_group>();
|
||||
foreach (var item in input)
|
||||
result.Add(new USB_group(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, USB_group server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
{ System.Diagnostics.Debug.Assert(false, "Cannot create instances of this type on the server");
|
||||
return "";
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!Helper.AreEqual2(_name_label, server._name_label))
|
||||
{
|
||||
USB_group.set_name_label(session, opaqueRef, _name_label);
|
||||
}
|
||||
if (!Helper.AreEqual2(_name_description, server._name_description))
|
||||
{
|
||||
USB_group.set_name_description(session, opaqueRef, _name_description);
|
||||
}
|
||||
if (!Helper.AreEqual2(_other_config, server._other_config))
|
||||
{
|
||||
USB_group.set_other_config(session, opaqueRef, _other_config);
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// Get a record containing the current state of the given USB_group.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_usb_group">The opaque_ref of the given usb_group</param>
|
||||
public static USB_group get_record(Session session, string _usb_group)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.usb_group_get_record(session.uuid, _usb_group);
|
||||
else
|
||||
return new USB_group((Proxy_USB_group)session.proxy.usb_group_get_record(session.uuid, _usb_group ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get a reference to the USB_group instance with the specified UUID.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_uuid">UUID of object to return</param>
|
||||
public static XenRef<USB_group> get_by_uuid(Session session, string _uuid)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.usb_group_get_by_uuid(session.uuid, _uuid);
|
||||
else
|
||||
return XenRef<USB_group>.Create(session.proxy.usb_group_get_by_uuid(session.uuid, _uuid ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get all the USB_group instances with the given label.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_label">label of object to return</param>
|
||||
public static List<XenRef<USB_group>> get_by_name_label(Session session, string _label)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.usb_group_get_by_name_label(session.uuid, _label);
|
||||
else
|
||||
return XenRef<USB_group>.Create(session.proxy.usb_group_get_by_name_label(session.uuid, _label ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the uuid field of the given USB_group.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_usb_group">The opaque_ref of the given usb_group</param>
|
||||
public static string get_uuid(Session session, string _usb_group)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.usb_group_get_uuid(session.uuid, _usb_group);
|
||||
else
|
||||
return (string)session.proxy.usb_group_get_uuid(session.uuid, _usb_group ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the name/label field of the given USB_group.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_usb_group">The opaque_ref of the given usb_group</param>
|
||||
public static string get_name_label(Session session, string _usb_group)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.usb_group_get_name_label(session.uuid, _usb_group);
|
||||
else
|
||||
return (string)session.proxy.usb_group_get_name_label(session.uuid, _usb_group ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the name/description field of the given USB_group.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_usb_group">The opaque_ref of the given usb_group</param>
|
||||
public static string get_name_description(Session session, string _usb_group)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.usb_group_get_name_description(session.uuid, _usb_group);
|
||||
else
|
||||
return (string)session.proxy.usb_group_get_name_description(session.uuid, _usb_group ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the PUSBs field of the given USB_group.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_usb_group">The opaque_ref of the given usb_group</param>
|
||||
public static List<XenRef<PUSB>> get_PUSBs(Session session, string _usb_group)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.usb_group_get_pusbs(session.uuid, _usb_group);
|
||||
else
|
||||
return XenRef<PUSB>.Create(session.proxy.usb_group_get_pusbs(session.uuid, _usb_group ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the VUSBs field of the given USB_group.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_usb_group">The opaque_ref of the given usb_group</param>
|
||||
public static List<XenRef<VUSB>> get_VUSBs(Session session, string _usb_group)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.usb_group_get_vusbs(session.uuid, _usb_group);
|
||||
else
|
||||
return XenRef<VUSB>.Create(session.proxy.usb_group_get_vusbs(session.uuid, _usb_group ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the other_config field of the given USB_group.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_usb_group">The opaque_ref of the given usb_group</param>
|
||||
public static Dictionary<string, string> get_other_config(Session session, string _usb_group)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.usb_group_get_other_config(session.uuid, _usb_group);
|
||||
else
|
||||
return Maps.convert_from_proxy_string_string(session.proxy.usb_group_get_other_config(session.uuid, _usb_group ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Set the name/label field of the given USB_group.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_usb_group">The opaque_ref of the given usb_group</param>
|
||||
/// <param name="_label">New value to set</param>
|
||||
public static void set_name_label(Session session, string _usb_group, string _label)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.usb_group_set_name_label(session.uuid, _usb_group, _label);
|
||||
else
|
||||
session.proxy.usb_group_set_name_label(session.uuid, _usb_group ?? "", _label ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Set the name/description field of the given USB_group.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_usb_group">The opaque_ref of the given usb_group</param>
|
||||
/// <param name="_description">New value to set</param>
|
||||
public static void set_name_description(Session session, string _usb_group, string _description)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.usb_group_set_name_description(session.uuid, _usb_group, _description);
|
||||
else
|
||||
session.proxy.usb_group_set_name_description(session.uuid, _usb_group ?? "", _description ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Set the other_config field of the given USB_group.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_usb_group">The opaque_ref of the given usb_group</param>
|
||||
/// <param name="_other_config">New value to set</param>
|
||||
public static void set_other_config(Session session, string _usb_group, Dictionary<string, string> _other_config)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.usb_group_set_other_config(session.uuid, _usb_group, _other_config);
|
||||
else
|
||||
session.proxy.usb_group_set_other_config(session.uuid, _usb_group ?? "", Maps.convert_to_proxy_string_string(_other_config)).parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Add the given key-value pair to the other_config field of the given USB_group.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_usb_group">The opaque_ref of the given usb_group</param>
|
||||
/// <param name="_key">Key to add</param>
|
||||
/// <param name="_value">Value to add</param>
|
||||
public static void add_to_other_config(Session session, string _usb_group, string _key, string _value)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.usb_group_add_to_other_config(session.uuid, _usb_group, _key, _value);
|
||||
else
|
||||
session.proxy.usb_group_add_to_other_config(session.uuid, _usb_group ?? "", _key ?? "", _value ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Remove the given key and its corresponding value from the other_config field of the given USB_group. If the key is not in that Map, then do nothing.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_usb_group">The opaque_ref of the given usb_group</param>
|
||||
/// <param name="_key">Key to remove</param>
|
||||
public static void remove_from_other_config(Session session, string _usb_group, string _key)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.usb_group_remove_from_other_config(session.uuid, _usb_group, _key);
|
||||
else
|
||||
session.proxy.usb_group_remove_from_other_config(session.uuid, _usb_group ?? "", _key ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_name_label"></param>
|
||||
/// <param name="_name_description"></param>
|
||||
/// <param name="_other_config"></param>
|
||||
public static XenRef<USB_group> create(Session session, string _name_label, string _name_description, Dictionary<string, string> _other_config)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.usb_group_create(session.uuid, _name_label, _name_description, _other_config);
|
||||
else
|
||||
return XenRef<USB_group>.Create(session.proxy.usb_group_create(session.uuid, _name_label ?? "", _name_description ?? "", Maps.convert_to_proxy_string_string(_other_config)).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_name_label"></param>
|
||||
/// <param name="_name_description"></param>
|
||||
/// <param name="_other_config"></param>
|
||||
public static XenRef<Task> async_create(Session session, string _name_label, string _name_description, Dictionary<string, string> _other_config)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.async_usb_group_create(session.uuid, _name_label, _name_description, _other_config);
|
||||
else
|
||||
return XenRef<Task>.Create(session.proxy.async_usb_group_create(session.uuid, _name_label ?? "", _name_description ?? "", Maps.convert_to_proxy_string_string(_other_config)).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_usb_group">The opaque_ref of the given usb_group</param>
|
||||
public static void destroy(Session session, string _usb_group)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.usb_group_destroy(session.uuid, _usb_group);
|
||||
else
|
||||
session.proxy.usb_group_destroy(session.uuid, _usb_group ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_usb_group">The opaque_ref of the given usb_group</param>
|
||||
public static XenRef<Task> async_destroy(Session session, string _usb_group)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.async_usb_group_destroy(session.uuid, _usb_group);
|
||||
else
|
||||
return XenRef<Task>.Create(session.proxy.async_usb_group_destroy(session.uuid, _usb_group ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Return a list of all the USB_groups known to the system.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
public static List<XenRef<USB_group>> get_all(Session session)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.usb_group_get_all(session.uuid);
|
||||
else
|
||||
return XenRef<USB_group>.Create(session.proxy.usb_group_get_all(session.uuid).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get all the USB_group Records at once, in a single XML RPC call
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
public static Dictionary<XenRef<USB_group>, USB_group> get_all_records(Session session)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.usb_group_get_all_records(session.uuid);
|
||||
else
|
||||
return XenRef<USB_group>.Create<Proxy_USB_group>(session.proxy.usb_group_get_all_records(session.uuid).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Unique identifier/object reference
|
||||
/// </summary>
|
||||
public virtual string uuid
|
||||
{
|
||||
get { return _uuid; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _uuid))
|
||||
{
|
||||
_uuid = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("uuid");
|
||||
}
|
||||
}
|
||||
}
|
||||
private string _uuid = "";
|
||||
|
||||
/// <summary>
|
||||
/// a human-readable name
|
||||
/// </summary>
|
||||
public virtual string name_label
|
||||
{
|
||||
get { return _name_label; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _name_label))
|
||||
{
|
||||
_name_label = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("name_label");
|
||||
}
|
||||
}
|
||||
}
|
||||
private string _name_label = "";
|
||||
|
||||
/// <summary>
|
||||
/// a notes field containing human-readable description
|
||||
/// </summary>
|
||||
public virtual string name_description
|
||||
{
|
||||
get { return _name_description; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _name_description))
|
||||
{
|
||||
_name_description = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("name_description");
|
||||
}
|
||||
}
|
||||
}
|
||||
private string _name_description = "";
|
||||
|
||||
/// <summary>
|
||||
/// List of PUSBs in the group
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(XenRefListConverter<PUSB>))]
|
||||
public virtual List<XenRef<PUSB>> PUSBs
|
||||
{
|
||||
get { return _PUSBs; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _PUSBs))
|
||||
{
|
||||
_PUSBs = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("PUSBs");
|
||||
}
|
||||
}
|
||||
}
|
||||
private List<XenRef<PUSB>> _PUSBs = new List<XenRef<PUSB>>() {};
|
||||
|
||||
/// <summary>
|
||||
/// List of VUSBs using the group
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(XenRefListConverter<VUSB>))]
|
||||
public virtual List<XenRef<VUSB>> VUSBs
|
||||
{
|
||||
get { return _VUSBs; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _VUSBs))
|
||||
{
|
||||
_VUSBs = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("VUSBs");
|
||||
}
|
||||
}
|
||||
}
|
||||
private List<XenRef<VUSB>> _VUSBs = new List<XenRef<VUSB>>() {};
|
||||
|
||||
/// <summary>
|
||||
/// Additional configuration
|
||||
/// </summary>
|
||||
public virtual Dictionary<string, string> other_config
|
||||
{
|
||||
get { return _other_config; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _other_config))
|
||||
{
|
||||
_other_config = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("other_config");
|
||||
}
|
||||
}
|
||||
}
|
||||
private Dictionary<string, string> _other_config = new Dictionary<string, string>() {};
|
||||
}
|
||||
}
|
@ -121,6 +121,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._other_config, other._other_config);
|
||||
}
|
||||
|
||||
internal static List<User> ProxyArrayToObjectList(Proxy_User[] input)
|
||||
{
|
||||
var result = new List<User>();
|
||||
foreach (var item in input)
|
||||
result.Add(new User(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, User server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -249,6 +249,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._metrics, other._metrics);
|
||||
}
|
||||
|
||||
internal static List<VBD> ProxyArrayToObjectList(Proxy_VBD[] input)
|
||||
{
|
||||
var result = new List<VBD>();
|
||||
foreach (var item in input)
|
||||
result.Add(new VBD(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, VBD server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -128,6 +128,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._other_config, other._other_config);
|
||||
}
|
||||
|
||||
internal static List<VBD_metrics> ProxyArrayToObjectList(Proxy_VBD_metrics[] input)
|
||||
{
|
||||
var result = new List<VBD_metrics>();
|
||||
foreach (var item in input)
|
||||
result.Add(new VBD_metrics(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, VBD_metrics server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -319,6 +319,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._cbt_enabled, other._cbt_enabled);
|
||||
}
|
||||
|
||||
internal static List<VDI> ProxyArrayToObjectList(Proxy_VDI[] input)
|
||||
{
|
||||
var result = new List<VDI>();
|
||||
foreach (var item in input)
|
||||
result.Add(new VDI(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, VDI server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
@ -2094,61 +2103,47 @@ namespace XenAPI
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reports which blocks differ in the two VDIs. This operation is not allowed when vdi_to is attached to a VM.
|
||||
/// Compare two VDIs in 64k block increments and report which blocks differ. This operation is not allowed when vdi_to is attached to a VM.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vdi">The opaque_ref of the given vdi</param>
|
||||
/// <param name="_vdi_to">The second VDI.</param>
|
||||
public static string export_changed_blocks(Session session, string _vdi, string _vdi_to)
|
||||
public static string list_changed_blocks(Session session, string _vdi, string _vdi_to)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vdi_export_changed_blocks(session.uuid, _vdi, _vdi_to);
|
||||
return session.JsonRpcClient.vdi_list_changed_blocks(session.uuid, _vdi, _vdi_to);
|
||||
else
|
||||
return (string)session.proxy.vdi_export_changed_blocks(session.uuid, _vdi ?? "", _vdi_to ?? "").parse();
|
||||
return (string)session.proxy.vdi_list_changed_blocks(session.uuid, _vdi ?? "", _vdi_to ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reports which blocks differ in the two VDIs. This operation is not allowed when vdi_to is attached to a VM.
|
||||
/// Compare two VDIs in 64k block increments and report which blocks differ. This operation is not allowed when vdi_to is attached to a VM.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vdi">The opaque_ref of the given vdi</param>
|
||||
/// <param name="_vdi_to">The second VDI.</param>
|
||||
public static XenRef<Task> async_export_changed_blocks(Session session, string _vdi, string _vdi_to)
|
||||
public static XenRef<Task> async_list_changed_blocks(Session session, string _vdi, string _vdi_to)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.async_vdi_export_changed_blocks(session.uuid, _vdi, _vdi_to);
|
||||
return session.JsonRpcClient.async_vdi_list_changed_blocks(session.uuid, _vdi, _vdi_to);
|
||||
else
|
||||
return XenRef<Task>.Create(session.proxy.async_vdi_export_changed_blocks(session.uuid, _vdi ?? "", _vdi_to ?? "").parse());
|
||||
return XenRef<Task>.Create(session.proxy.async_vdi_list_changed_blocks(session.uuid, _vdi ?? "", _vdi_to ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get a list of URIs specifying how to access this VDI via the NBD server of XenServer. A URI will be returned for each PIF of each host that is connected to the VDI's SR. An empty list is returned in case no network has a PIF on a host with access to the relevant SR. To access the given VDI, any of the returned URIs can be passed to the NBD server running at the IP address and port specified by that URI as the export name.
|
||||
/// Get details specifying how to access this VDI via a Network Block Device server. For each of a set of NBD server addresses on which the VDI is available, the return value set contains a vdi_nbd_server_info object that contains an exportname to request once the NBD connection is established, and connection details for the address. An empty list is returned if there is no network that has a PIF on a host with access to the relevant SR, or if no such network has been assigned an NBD-related purpose in its purpose field. To access the given VDI, any of the vdi_nbd_server_info objects can be used to make a connection to a server, and then the VDI will be available by requesting the exportname.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vdi">The opaque_ref of the given vdi</param>
|
||||
public static string[] get_nbd_info(Session session, string _vdi)
|
||||
public static List<Vdi_nbd_server_info> get_nbd_info(Session session, string _vdi)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vdi_get_nbd_info(session.uuid, _vdi);
|
||||
else
|
||||
return (string [])session.proxy.vdi_get_nbd_info(session.uuid, _vdi ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get a list of URIs specifying how to access this VDI via the NBD server of XenServer. A URI will be returned for each PIF of each host that is connected to the VDI's SR. An empty list is returned in case no network has a PIF on a host with access to the relevant SR. To access the given VDI, any of the returned URIs can be passed to the NBD server running at the IP address and port specified by that URI as the export name.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vdi">The opaque_ref of the given vdi</param>
|
||||
public static XenRef<Task> async_get_nbd_info(Session session, string _vdi)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.async_vdi_get_nbd_info(session.uuid, _vdi);
|
||||
else
|
||||
return XenRef<Task>.Create(session.proxy.async_vdi_get_nbd_info(session.uuid, _vdi ?? "").parse());
|
||||
return Vdi_nbd_server_info.ProxyArrayToObjectList(session.proxy.vdi_get_nbd_info(session.uuid, _vdi ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -57,7 +57,8 @@ namespace XenAPI
|
||||
bool currently_attached,
|
||||
Dictionary<string, string> other_config,
|
||||
XenRef<VGPU_type> type,
|
||||
XenRef<PGPU> resident_on)
|
||||
XenRef<PGPU> resident_on,
|
||||
XenRef<PGPU> scheduled_to_be_resident_on)
|
||||
{
|
||||
this.uuid = uuid;
|
||||
this.VM = VM;
|
||||
@ -67,6 +68,7 @@ namespace XenAPI
|
||||
this.other_config = other_config;
|
||||
this.type = type;
|
||||
this.resident_on = resident_on;
|
||||
this.scheduled_to_be_resident_on = scheduled_to_be_resident_on;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -88,6 +90,7 @@ namespace XenAPI
|
||||
other_config = update.other_config;
|
||||
type = update.type;
|
||||
resident_on = update.resident_on;
|
||||
scheduled_to_be_resident_on = update.scheduled_to_be_resident_on;
|
||||
}
|
||||
|
||||
internal void UpdateFromProxy(Proxy_VGPU proxy)
|
||||
@ -100,6 +103,7 @@ namespace XenAPI
|
||||
other_config = proxy.other_config == null ? null : Maps.convert_from_proxy_string_string(proxy.other_config);
|
||||
type = proxy.type == null ? null : XenRef<VGPU_type>.Create(proxy.type);
|
||||
resident_on = proxy.resident_on == null ? null : XenRef<PGPU>.Create(proxy.resident_on);
|
||||
scheduled_to_be_resident_on = proxy.scheduled_to_be_resident_on == null ? null : XenRef<PGPU>.Create(proxy.scheduled_to_be_resident_on);
|
||||
}
|
||||
|
||||
public Proxy_VGPU ToProxy()
|
||||
@ -113,6 +117,7 @@ namespace XenAPI
|
||||
result_.other_config = Maps.convert_to_proxy_string_string(other_config);
|
||||
result_.type = type ?? "";
|
||||
result_.resident_on = resident_on ?? "";
|
||||
result_.scheduled_to_be_resident_on = scheduled_to_be_resident_on ?? "";
|
||||
return result_;
|
||||
}
|
||||
|
||||
@ -130,6 +135,7 @@ namespace XenAPI
|
||||
other_config = Maps.convert_from_proxy_string_string(Marshalling.ParseHashTable(table, "other_config"));
|
||||
type = Marshalling.ParseRef<VGPU_type>(table, "type");
|
||||
resident_on = Marshalling.ParseRef<PGPU>(table, "resident_on");
|
||||
scheduled_to_be_resident_on = Marshalling.ParseRef<PGPU>(table, "scheduled_to_be_resident_on");
|
||||
}
|
||||
|
||||
public bool DeepEquals(VGPU other)
|
||||
@ -146,7 +152,17 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._currently_attached, other._currently_attached) &&
|
||||
Helper.AreEqual2(this._other_config, other._other_config) &&
|
||||
Helper.AreEqual2(this._type, other._type) &&
|
||||
Helper.AreEqual2(this._resident_on, other._resident_on);
|
||||
Helper.AreEqual2(this._resident_on, other._resident_on) &&
|
||||
Helper.AreEqual2(this._scheduled_to_be_resident_on, other._scheduled_to_be_resident_on);
|
||||
}
|
||||
|
||||
internal static List<VGPU> ProxyArrayToObjectList(Proxy_VGPU[] input)
|
||||
{
|
||||
var result = new List<VGPU>();
|
||||
foreach (var item in input)
|
||||
result.Add(new VGPU(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, VGPU server)
|
||||
@ -305,6 +321,20 @@ namespace XenAPI
|
||||
return XenRef<PGPU>.Create(session.proxy.vgpu_get_resident_on(session.uuid, _vgpu ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the scheduled_to_be_resident_on field of the given VGPU.
|
||||
/// First published in XenServer 7.0.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vgpu">The opaque_ref of the given vgpu</param>
|
||||
public static XenRef<PGPU> get_scheduled_to_be_resident_on(Session session, string _vgpu)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vgpu_get_scheduled_to_be_resident_on(session.uuid, _vgpu);
|
||||
else
|
||||
return XenRef<PGPU>.Create(session.proxy.vgpu_get_scheduled_to_be_resident_on(session.uuid, _vgpu ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Set the other_config field of the given VGPU.
|
||||
/// First published in XenServer 6.0.
|
||||
@ -624,5 +654,25 @@ namespace XenAPI
|
||||
}
|
||||
}
|
||||
private XenRef<PGPU> _resident_on = new XenRef<PGPU>("OpaqueRef:NULL");
|
||||
|
||||
/// <summary>
|
||||
/// The PGPU on which this VGPU is scheduled to run
|
||||
/// First published in XenServer 7.0.
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(XenRefConverter<PGPU>))]
|
||||
public virtual XenRef<PGPU> scheduled_to_be_resident_on
|
||||
{
|
||||
get { return _scheduled_to_be_resident_on; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _scheduled_to_be_resident_on))
|
||||
{
|
||||
_scheduled_to_be_resident_on = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("scheduled_to_be_resident_on");
|
||||
}
|
||||
}
|
||||
}
|
||||
private XenRef<PGPU> _scheduled_to_be_resident_on = new XenRef<PGPU>("OpaqueRef:NULL");
|
||||
}
|
||||
}
|
||||
|
@ -198,6 +198,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._experimental, other._experimental);
|
||||
}
|
||||
|
||||
internal static List<VGPU_type> ProxyArrayToObjectList(Proxy_VGPU_type[] input)
|
||||
{
|
||||
var result = new List<VGPU_type>();
|
||||
foreach (var item in input)
|
||||
result.Add(new VGPU_type(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, VGPU_type server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -284,6 +284,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._ipv6_gateway, other._ipv6_gateway);
|
||||
}
|
||||
|
||||
internal static List<VIF> ProxyArrayToObjectList(Proxy_VIF[] input)
|
||||
{
|
||||
var result = new List<VIF>();
|
||||
foreach (var item in input)
|
||||
result.Add(new VIF(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, VIF server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -128,6 +128,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._other_config, other._other_config);
|
||||
}
|
||||
|
||||
internal static List<VIF_metrics> ProxyArrayToObjectList(Proxy_VIF_metrics[] input)
|
||||
{
|
||||
var result = new List<VIF_metrics>();
|
||||
foreach (var item in input)
|
||||
result.Add(new VIF_metrics(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, VIF_metrics server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -128,6 +128,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._other_config, other._other_config);
|
||||
}
|
||||
|
||||
internal static List<VLAN> ProxyArrayToObjectList(Proxy_VLAN[] input)
|
||||
{
|
||||
var result = new List<VLAN>();
|
||||
foreach (var item in input)
|
||||
result.Add(new VLAN(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, VLAN server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -77,6 +77,7 @@ namespace XenAPI
|
||||
List<XenRef<Console>> consoles,
|
||||
List<XenRef<VIF>> VIFs,
|
||||
List<XenRef<VBD>> VBDs,
|
||||
List<XenRef<VUSB>> VUSBs,
|
||||
List<XenRef<Crashdump>> crash_dumps,
|
||||
List<XenRef<VTPM>> VTPMs,
|
||||
string PV_bootloader,
|
||||
@ -160,6 +161,7 @@ namespace XenAPI
|
||||
this.consoles = consoles;
|
||||
this.VIFs = VIFs;
|
||||
this.VBDs = VBDs;
|
||||
this.VUSBs = VUSBs;
|
||||
this.crash_dumps = crash_dumps;
|
||||
this.VTPMs = VTPMs;
|
||||
this.PV_bootloader = PV_bootloader;
|
||||
@ -255,6 +257,7 @@ namespace XenAPI
|
||||
consoles = update.consoles;
|
||||
VIFs = update.VIFs;
|
||||
VBDs = update.VBDs;
|
||||
VUSBs = update.VUSBs;
|
||||
crash_dumps = update.crash_dumps;
|
||||
VTPMs = update.VTPMs;
|
||||
PV_bootloader = update.PV_bootloader;
|
||||
@ -341,6 +344,7 @@ namespace XenAPI
|
||||
consoles = proxy.consoles == null ? null : XenRef<Console>.Create(proxy.consoles);
|
||||
VIFs = proxy.VIFs == null ? null : XenRef<VIF>.Create(proxy.VIFs);
|
||||
VBDs = proxy.VBDs == null ? null : XenRef<VBD>.Create(proxy.VBDs);
|
||||
VUSBs = proxy.VUSBs == null ? null : XenRef<VUSB>.Create(proxy.VUSBs);
|
||||
crash_dumps = proxy.crash_dumps == null ? null : XenRef<Crashdump>.Create(proxy.crash_dumps);
|
||||
VTPMs = proxy.VTPMs == null ? null : XenRef<VTPM>.Create(proxy.VTPMs);
|
||||
PV_bootloader = proxy.PV_bootloader == null ? null : (string)proxy.PV_bootloader;
|
||||
@ -428,6 +432,7 @@ namespace XenAPI
|
||||
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_.VUSBs = (VUSBs != null) ? Helper.RefListToStringArray(VUSBs) : 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 ?? "";
|
||||
@ -519,6 +524,7 @@ namespace XenAPI
|
||||
consoles = Marshalling.ParseSetRef<Console>(table, "consoles");
|
||||
VIFs = Marshalling.ParseSetRef<VIF>(table, "VIFs");
|
||||
VBDs = Marshalling.ParseSetRef<VBD>(table, "VBDs");
|
||||
VUSBs = Marshalling.ParseSetRef<VUSB>(table, "VUSBs");
|
||||
crash_dumps = Marshalling.ParseSetRef<Crashdump>(table, "crash_dumps");
|
||||
VTPMs = Marshalling.ParseSetRef<VTPM>(table, "VTPMs");
|
||||
PV_bootloader = Marshalling.ParseString(table, "PV_bootloader");
|
||||
@ -612,6 +618,7 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._consoles, other._consoles) &&
|
||||
Helper.AreEqual2(this._VIFs, other._VIFs) &&
|
||||
Helper.AreEqual2(this._VBDs, other._VBDs) &&
|
||||
Helper.AreEqual2(this._VUSBs, other._VUSBs) &&
|
||||
Helper.AreEqual2(this._crash_dumps, other._crash_dumps) &&
|
||||
Helper.AreEqual2(this._VTPMs, other._VTPMs) &&
|
||||
Helper.AreEqual2(this._PV_bootloader, other._PV_bootloader) &&
|
||||
@ -669,6 +676,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._reference_label, other._reference_label);
|
||||
}
|
||||
|
||||
internal static List<VM> ProxyArrayToObjectList(Proxy_VM[] input)
|
||||
{
|
||||
var result = new List<VM>();
|
||||
foreach (var item in input)
|
||||
result.Add(new VM(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, VM server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
@ -1328,6 +1344,20 @@ namespace XenAPI
|
||||
return XenRef<VBD>.Create(session.proxy.vm_get_vbds(session.uuid, _vm ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the VUSBs field of the given VM.
|
||||
/// First published in XenServer 4.0.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vm">The opaque_ref of the given vm</param>
|
||||
public static List<XenRef<VUSB>> get_VUSBs(Session session, string _vm)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vm_get_vusbs(session.uuid, _vm);
|
||||
else
|
||||
return XenRef<VUSB>.Create(session.proxy.vm_get_vusbs(session.uuid, _vm ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the crash_dumps field of the given VM.
|
||||
/// First published in XenServer 4.0.
|
||||
@ -3953,6 +3983,46 @@ namespace XenAPI
|
||||
return XenRef<Task>.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());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 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.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vm">The opaque_ref of the given vm</param>
|
||||
/// <param name="_dest">The result of a Host.migrate_receive call.</param>
|
||||
/// <param name="_live">Live migration</param>
|
||||
/// <param name="_vdi_map">Map of source VDI to destination SR</param>
|
||||
/// <param name="_vif_map">Map of source VIF to destination network</param>
|
||||
/// <param name="_options">Other parameters</param>
|
||||
/// <param name="_vgpu_map">Map of source vGPU to destination GPU group First published in Unreleased.</param>
|
||||
public static XenRef<VM> migrate_send(Session session, string _vm, Dictionary<string, string> _dest, bool _live, Dictionary<XenRef<VDI>, XenRef<SR>> _vdi_map, Dictionary<XenRef<VIF>, XenRef<Network>> _vif_map, Dictionary<string, string> _options, Dictionary<XenRef<VGPU>, XenRef<GPU_group>> _vgpu_map)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vm_migrate_send(session.uuid, _vm, _dest, _live, _vdi_map, _vif_map, _options, _vgpu_map);
|
||||
else
|
||||
return XenRef<VM>.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), Maps.convert_to_proxy_XenRefVGPU_XenRefGPU_group(_vgpu_map)).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 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.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vm">The opaque_ref of the given vm</param>
|
||||
/// <param name="_dest">The result of a Host.migrate_receive call.</param>
|
||||
/// <param name="_live">Live migration</param>
|
||||
/// <param name="_vdi_map">Map of source VDI to destination SR</param>
|
||||
/// <param name="_vif_map">Map of source VIF to destination network</param>
|
||||
/// <param name="_options">Other parameters</param>
|
||||
/// <param name="_vgpu_map">Map of source vGPU to destination GPU group First published in Unreleased.</param>
|
||||
public static XenRef<Task> async_migrate_send(Session session, string _vm, Dictionary<string, string> _dest, bool _live, Dictionary<XenRef<VDI>, XenRef<SR>> _vdi_map, Dictionary<XenRef<VIF>, XenRef<Network>> _vif_map, Dictionary<string, string> _options, Dictionary<XenRef<VGPU>, XenRef<GPU_group>> _vgpu_map)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.async_vm_migrate_send(session.uuid, _vm, _dest, _live, _vdi_map, _vif_map, _options, _vgpu_map);
|
||||
else
|
||||
return XenRef<Task>.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), Maps.convert_to_proxy_XenRefVGPU_XenRefGPU_group(_vgpu_map)).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Assert whether a VM can be migrated to the specified destination.
|
||||
/// First published in XenServer 6.1.
|
||||
@ -3992,11 +4062,53 @@ namespace XenAPI
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Returns a record describing the VM's dynamic state, initialised when the VM boots and updated to reflect runtime configuration changes e.g. CPU hotplug
|
||||
/// First published in XenServer 4.0.
|
||||
/// Assert whether a VM can be migrated to the specified destination.
|
||||
/// First published in XenServer 6.1.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vm">The opaque_ref of the given vm</param>
|
||||
/// <param name="_dest">The result of a VM.migrate_receive call.</param>
|
||||
/// <param name="_live">Live migration</param>
|
||||
/// <param name="_vdi_map">Map of source VDI to destination SR</param>
|
||||
/// <param name="_vif_map">Map of source VIF to destination network</param>
|
||||
/// <param name="_options">Other parameters</param>
|
||||
/// <param name="_vgpu_map">Map of source vGPU to destination GPU group First published in Unreleased.</param>
|
||||
public static void assert_can_migrate(Session session, string _vm, Dictionary<string, string> _dest, bool _live, Dictionary<XenRef<VDI>, XenRef<SR>> _vdi_map, Dictionary<XenRef<VIF>, XenRef<Network>> _vif_map, Dictionary<string, string> _options, Dictionary<XenRef<VGPU>, XenRef<GPU_group>> _vgpu_map)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.vm_assert_can_migrate(session.uuid, _vm, _dest, _live, _vdi_map, _vif_map, _options, _vgpu_map);
|
||||
else
|
||||
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), Maps.convert_to_proxy_XenRefVGPU_XenRefGPU_group(_vgpu_map)).parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Assert whether a VM can be migrated to the specified destination.
|
||||
/// First published in XenServer 6.1.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vm">The opaque_ref of the given vm</param>
|
||||
/// <param name="_dest">The result of a VM.migrate_receive call.</param>
|
||||
/// <param name="_live">Live migration</param>
|
||||
/// <param name="_vdi_map">Map of source VDI to destination SR</param>
|
||||
/// <param name="_vif_map">Map of source VIF to destination network</param>
|
||||
/// <param name="_options">Other parameters</param>
|
||||
/// <param name="_vgpu_map">Map of source vGPU to destination GPU group First published in Unreleased.</param>
|
||||
public static XenRef<Task> async_assert_can_migrate(Session session, string _vm, Dictionary<string, string> _dest, bool _live, Dictionary<XenRef<VDI>, XenRef<SR>> _vdi_map, Dictionary<XenRef<VIF>, XenRef<Network>> _vif_map, Dictionary<string, string> _options, Dictionary<XenRef<VGPU>, XenRef<GPU_group>> _vgpu_map)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.async_vm_assert_can_migrate(session.uuid, _vm, _dest, _live, _vdi_map, _vif_map, _options, _vgpu_map);
|
||||
else
|
||||
return XenRef<Task>.Create(session.proxy.async_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), Maps.convert_to_proxy_XenRefVGPU_XenRefGPU_group(_vgpu_map)).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Returns a record describing the VM's dynamic state, initialised when the VM boots and updated to reflect runtime configuration changes e.g. CPU hotplug
|
||||
/// First published in XenServer 4.0.
|
||||
/// Deprecated since Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vm">The opaque_ref of the given vm</param>
|
||||
[Deprecated("Unreleased")]
|
||||
public static VM get_boot_record(Session session, string _vm)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
@ -4016,7 +4128,7 @@ namespace XenAPI
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vm_get_data_sources(session.uuid, _vm);
|
||||
else
|
||||
return Helper.Proxy_Data_sourceArrayToData_sourceList(session.proxy.vm_get_data_sources(session.uuid, _vm ?? "").parse());
|
||||
return Data_source.ProxyArrayToObjectList(session.proxy.vm_get_data_sources(session.uuid, _vm ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -4330,6 +4442,36 @@ namespace XenAPI
|
||||
return XenRef<Task>.Create(session.proxy.async_vm_retrieve_wlb_recommendations(session.uuid, _vm ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Set custom BIOS strings to this VM. VM will be given a default set of BIOS strings, only some of which can be overridden by the supplied values. Allowed keys are: 'bios-vendor', 'bios-version', 'system-manufacturer', 'system-product-name', 'system-version', 'system-serial-number', 'enclosure-asset-tag'
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vm">The opaque_ref of the given vm</param>
|
||||
/// <param name="_value">The custom BIOS strings as a list of key-value pairs</param>
|
||||
public static void set_bios_strings(Session session, string _vm, Dictionary<string, string> _value)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.vm_set_bios_strings(session.uuid, _vm, _value);
|
||||
else
|
||||
session.proxy.vm_set_bios_strings(session.uuid, _vm ?? "", Maps.convert_to_proxy_string_string(_value)).parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Set custom BIOS strings to this VM. VM will be given a default set of BIOS strings, only some of which can be overridden by the supplied values. Allowed keys are: 'bios-vendor', 'bios-version', 'system-manufacturer', 'system-product-name', 'system-version', 'system-serial-number', 'enclosure-asset-tag'
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vm">The opaque_ref of the given vm</param>
|
||||
/// <param name="_value">The custom BIOS strings as a list of key-value pairs</param>
|
||||
public static XenRef<Task> async_set_bios_strings(Session session, string _vm, Dictionary<string, string> _value)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.async_vm_set_bios_strings(session.uuid, _vm, _value);
|
||||
else
|
||||
return XenRef<Task>.Create(session.proxy.async_vm_set_bios_strings(session.uuid, _vm ?? "", Maps.convert_to_proxy_string_string(_value)).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Copy the BIOS strings from the given host to this VM
|
||||
/// First published in XenServer 5.6.
|
||||
@ -5317,6 +5459,25 @@ namespace XenAPI
|
||||
}
|
||||
private List<XenRef<VBD>> _VBDs = new List<XenRef<VBD>>() {};
|
||||
|
||||
/// <summary>
|
||||
/// vitual usb devices
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(XenRefListConverter<VUSB>))]
|
||||
public virtual List<XenRef<VUSB>> VUSBs
|
||||
{
|
||||
get { return _VUSBs; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _VUSBs))
|
||||
{
|
||||
_VUSBs = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("VUSBs");
|
||||
}
|
||||
}
|
||||
}
|
||||
private List<XenRef<VUSB>> _VUSBs = new List<XenRef<VUSB>>() {};
|
||||
|
||||
/// <summary>
|
||||
/// crash dumps associated with this VM
|
||||
/// </summary>
|
||||
|
@ -233,6 +233,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._recent_alerts, other._recent_alerts);
|
||||
}
|
||||
|
||||
internal static List<VMPP> ProxyArrayToObjectList(Proxy_VMPP[] input)
|
||||
{
|
||||
var result = new List<VMPP>();
|
||||
foreach (var item in input)
|
||||
result.Add(new VMPP(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, VMPP server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -163,6 +163,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._VMs, other._VMs);
|
||||
}
|
||||
|
||||
internal static List<VMSS> ProxyArrayToObjectList(Proxy_VMSS[] input)
|
||||
{
|
||||
var result = new List<VMSS>();
|
||||
foreach (var item in input)
|
||||
result.Add(new VMSS(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, VMSS server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -137,6 +137,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._VMs, other._VMs);
|
||||
}
|
||||
|
||||
internal static List<VM_appliance> ProxyArrayToObjectList(Proxy_VM_appliance[] input)
|
||||
{
|
||||
var result = new List<VM_appliance>();
|
||||
foreach (var item in input)
|
||||
result.Add(new VM_appliance(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, VM_appliance server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -191,6 +191,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._PV_drivers_detected, other._PV_drivers_detected);
|
||||
}
|
||||
|
||||
internal static List<VM_guest_metrics> ProxyArrayToObjectList(Proxy_VM_guest_metrics[] input)
|
||||
{
|
||||
var result = new List<VM_guest_metrics>();
|
||||
foreach (var item in input)
|
||||
result.Add(new VM_guest_metrics(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, VM_guest_metrics server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -198,6 +198,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._nomigrate, other._nomigrate);
|
||||
}
|
||||
|
||||
internal static List<VM_metrics> ProxyArrayToObjectList(Proxy_VM_metrics[] input)
|
||||
{
|
||||
var result = new List<VM_metrics>();
|
||||
foreach (var item in input)
|
||||
result.Add(new VM_metrics(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, VM_metrics server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
@ -114,6 +114,15 @@ namespace XenAPI
|
||||
Helper.AreEqual2(this._backend, other._backend);
|
||||
}
|
||||
|
||||
internal static List<VTPM> ProxyArrayToObjectList(Proxy_VTPM[] input)
|
||||
{
|
||||
var result = new List<VTPM>();
|
||||
foreach (var item in input)
|
||||
result.Add(new VTPM(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, VTPM server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
|
586
XenModel/XenAPI/VUSB.cs
Normal file
586
XenModel/XenAPI/VUSB.cs
Normal file
@ -0,0 +1,586 @@
|
||||
/*
|
||||
* 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;
|
||||
using System.ComponentModel;
|
||||
using System.Globalization;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Converters;
|
||||
|
||||
|
||||
namespace XenAPI
|
||||
{
|
||||
/// <summary>
|
||||
/// Describes the vusb device
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
public partial class VUSB : XenObject<VUSB>
|
||||
{
|
||||
public VUSB()
|
||||
{
|
||||
}
|
||||
|
||||
public VUSB(string uuid,
|
||||
List<vusb_operations> allowed_operations,
|
||||
Dictionary<string, vusb_operations> current_operations,
|
||||
XenRef<VM> VM,
|
||||
XenRef<USB_group> USB_group,
|
||||
Dictionary<string, string> other_config,
|
||||
bool currently_attached)
|
||||
{
|
||||
this.uuid = uuid;
|
||||
this.allowed_operations = allowed_operations;
|
||||
this.current_operations = current_operations;
|
||||
this.VM = VM;
|
||||
this.USB_group = USB_group;
|
||||
this.other_config = other_config;
|
||||
this.currently_attached = currently_attached;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Creates a new VUSB from a Proxy_VUSB.
|
||||
/// </summary>
|
||||
/// <param name="proxy"></param>
|
||||
public VUSB(Proxy_VUSB proxy)
|
||||
{
|
||||
this.UpdateFromProxy(proxy);
|
||||
}
|
||||
|
||||
public override void UpdateFrom(VUSB update)
|
||||
{
|
||||
uuid = update.uuid;
|
||||
allowed_operations = update.allowed_operations;
|
||||
current_operations = update.current_operations;
|
||||
VM = update.VM;
|
||||
USB_group = update.USB_group;
|
||||
other_config = update.other_config;
|
||||
currently_attached = update.currently_attached;
|
||||
}
|
||||
|
||||
internal void UpdateFromProxy(Proxy_VUSB proxy)
|
||||
{
|
||||
uuid = proxy.uuid == null ? null : (string)proxy.uuid;
|
||||
allowed_operations = proxy.allowed_operations == null ? null : Helper.StringArrayToEnumList<vusb_operations>(proxy.allowed_operations);
|
||||
current_operations = proxy.current_operations == null ? null : Maps.convert_from_proxy_string_vusb_operations(proxy.current_operations);
|
||||
VM = proxy.VM == null ? null : XenRef<VM>.Create(proxy.VM);
|
||||
USB_group = proxy.USB_group == null ? null : XenRef<USB_group>.Create(proxy.USB_group);
|
||||
other_config = proxy.other_config == null ? null : Maps.convert_from_proxy_string_string(proxy.other_config);
|
||||
currently_attached = (bool)proxy.currently_attached;
|
||||
}
|
||||
|
||||
public Proxy_VUSB ToProxy()
|
||||
{
|
||||
Proxy_VUSB result_ = new Proxy_VUSB();
|
||||
result_.uuid = uuid ?? "";
|
||||
result_.allowed_operations = (allowed_operations != null) ? Helper.ObjectListToStringArray(allowed_operations) : new string[] {};
|
||||
result_.current_operations = Maps.convert_to_proxy_string_vusb_operations(current_operations);
|
||||
result_.VM = VM ?? "";
|
||||
result_.USB_group = USB_group ?? "";
|
||||
result_.other_config = Maps.convert_to_proxy_string_string(other_config);
|
||||
result_.currently_attached = currently_attached;
|
||||
return result_;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Creates a new VUSB from a Hashtable.
|
||||
/// </summary>
|
||||
/// <param name="table"></param>
|
||||
public VUSB(Hashtable table)
|
||||
{
|
||||
uuid = Marshalling.ParseString(table, "uuid");
|
||||
allowed_operations = Helper.StringArrayToEnumList<vusb_operations>(Marshalling.ParseStringArray(table, "allowed_operations"));
|
||||
current_operations = Maps.convert_from_proxy_string_vusb_operations(Marshalling.ParseHashTable(table, "current_operations"));
|
||||
VM = Marshalling.ParseRef<VM>(table, "VM");
|
||||
USB_group = Marshalling.ParseRef<USB_group>(table, "USB_group");
|
||||
other_config = Maps.convert_from_proxy_string_string(Marshalling.ParseHashTable(table, "other_config"));
|
||||
currently_attached = Marshalling.ParseBool(table, "currently_attached");
|
||||
}
|
||||
|
||||
public bool DeepEquals(VUSB 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._VM, other._VM) &&
|
||||
Helper.AreEqual2(this._USB_group, other._USB_group) &&
|
||||
Helper.AreEqual2(this._other_config, other._other_config) &&
|
||||
Helper.AreEqual2(this._currently_attached, other._currently_attached);
|
||||
}
|
||||
|
||||
internal static List<VUSB> ProxyArrayToObjectList(Proxy_VUSB[] input)
|
||||
{
|
||||
var result = new List<VUSB>();
|
||||
foreach (var item in input)
|
||||
result.Add(new VUSB(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, VUSB server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
{ System.Diagnostics.Debug.Assert(false, "Cannot create instances of this type on the server");
|
||||
return "";
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!Helper.AreEqual2(_other_config, server._other_config))
|
||||
{
|
||||
VUSB.set_other_config(session, opaqueRef, _other_config);
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// Get a record containing the current state of the given VUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vusb">The opaque_ref of the given vusb</param>
|
||||
public static VUSB get_record(Session session, string _vusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vusb_get_record(session.uuid, _vusb);
|
||||
else
|
||||
return new VUSB((Proxy_VUSB)session.proxy.vusb_get_record(session.uuid, _vusb ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get a reference to the VUSB instance with the specified UUID.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_uuid">UUID of object to return</param>
|
||||
public static XenRef<VUSB> get_by_uuid(Session session, string _uuid)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vusb_get_by_uuid(session.uuid, _uuid);
|
||||
else
|
||||
return XenRef<VUSB>.Create(session.proxy.vusb_get_by_uuid(session.uuid, _uuid ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the uuid field of the given VUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vusb">The opaque_ref of the given vusb</param>
|
||||
public static string get_uuid(Session session, string _vusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vusb_get_uuid(session.uuid, _vusb);
|
||||
else
|
||||
return (string)session.proxy.vusb_get_uuid(session.uuid, _vusb ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the allowed_operations field of the given VUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vusb">The opaque_ref of the given vusb</param>
|
||||
public static List<vusb_operations> get_allowed_operations(Session session, string _vusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vusb_get_allowed_operations(session.uuid, _vusb);
|
||||
else
|
||||
return Helper.StringArrayToEnumList<vusb_operations>(session.proxy.vusb_get_allowed_operations(session.uuid, _vusb ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the current_operations field of the given VUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vusb">The opaque_ref of the given vusb</param>
|
||||
public static Dictionary<string, vusb_operations> get_current_operations(Session session, string _vusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vusb_get_current_operations(session.uuid, _vusb);
|
||||
else
|
||||
return Maps.convert_from_proxy_string_vusb_operations(session.proxy.vusb_get_current_operations(session.uuid, _vusb ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the VM field of the given VUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vusb">The opaque_ref of the given vusb</param>
|
||||
public static XenRef<VM> get_VM(Session session, string _vusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vusb_get_vm(session.uuid, _vusb);
|
||||
else
|
||||
return XenRef<VM>.Create(session.proxy.vusb_get_vm(session.uuid, _vusb ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the USB_group field of the given VUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vusb">The opaque_ref of the given vusb</param>
|
||||
public static XenRef<USB_group> get_USB_group(Session session, string _vusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vusb_get_usb_group(session.uuid, _vusb);
|
||||
else
|
||||
return XenRef<USB_group>.Create(session.proxy.vusb_get_usb_group(session.uuid, _vusb ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the other_config field of the given VUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vusb">The opaque_ref of the given vusb</param>
|
||||
public static Dictionary<string, string> get_other_config(Session session, string _vusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vusb_get_other_config(session.uuid, _vusb);
|
||||
else
|
||||
return Maps.convert_from_proxy_string_string(session.proxy.vusb_get_other_config(session.uuid, _vusb ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the currently_attached field of the given VUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vusb">The opaque_ref of the given vusb</param>
|
||||
public static bool get_currently_attached(Session session, string _vusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vusb_get_currently_attached(session.uuid, _vusb);
|
||||
else
|
||||
return (bool)session.proxy.vusb_get_currently_attached(session.uuid, _vusb ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Set the other_config field of the given VUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vusb">The opaque_ref of the given vusb</param>
|
||||
/// <param name="_other_config">New value to set</param>
|
||||
public static void set_other_config(Session session, string _vusb, Dictionary<string, string> _other_config)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.vusb_set_other_config(session.uuid, _vusb, _other_config);
|
||||
else
|
||||
session.proxy.vusb_set_other_config(session.uuid, _vusb ?? "", Maps.convert_to_proxy_string_string(_other_config)).parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Add the given key-value pair to the other_config field of the given VUSB.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vusb">The opaque_ref of the given vusb</param>
|
||||
/// <param name="_key">Key to add</param>
|
||||
/// <param name="_value">Value to add</param>
|
||||
public static void add_to_other_config(Session session, string _vusb, string _key, string _value)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.vusb_add_to_other_config(session.uuid, _vusb, _key, _value);
|
||||
else
|
||||
session.proxy.vusb_add_to_other_config(session.uuid, _vusb ?? "", _key ?? "", _value ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Remove the given key and its corresponding value from the other_config field of the given VUSB. If the key is not in that Map, then do nothing.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vusb">The opaque_ref of the given vusb</param>
|
||||
/// <param name="_key">Key to remove</param>
|
||||
public static void remove_from_other_config(Session session, string _vusb, string _key)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.vusb_remove_from_other_config(session.uuid, _vusb, _key);
|
||||
else
|
||||
session.proxy.vusb_remove_from_other_config(session.uuid, _vusb ?? "", _key ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Create a new VUSB record in the database only
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vm">The VM</param>
|
||||
/// <param name="_usb_group"></param>
|
||||
/// <param name="_other_config"></param>
|
||||
public static XenRef<VUSB> create(Session session, string _vm, string _usb_group, Dictionary<string, string> _other_config)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vusb_create(session.uuid, _vm, _usb_group, _other_config);
|
||||
else
|
||||
return XenRef<VUSB>.Create(session.proxy.vusb_create(session.uuid, _vm ?? "", _usb_group ?? "", Maps.convert_to_proxy_string_string(_other_config)).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Create a new VUSB record in the database only
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vm">The VM</param>
|
||||
/// <param name="_usb_group"></param>
|
||||
/// <param name="_other_config"></param>
|
||||
public static XenRef<Task> async_create(Session session, string _vm, string _usb_group, Dictionary<string, string> _other_config)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.async_vusb_create(session.uuid, _vm, _usb_group, _other_config);
|
||||
else
|
||||
return XenRef<Task>.Create(session.proxy.async_vusb_create(session.uuid, _vm ?? "", _usb_group ?? "", Maps.convert_to_proxy_string_string(_other_config)).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Unplug the vusb device from the vm.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vusb">The opaque_ref of the given vusb</param>
|
||||
public static void unplug(Session session, string _vusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.vusb_unplug(session.uuid, _vusb);
|
||||
else
|
||||
session.proxy.vusb_unplug(session.uuid, _vusb ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Unplug the vusb device from the vm.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vusb">The opaque_ref of the given vusb</param>
|
||||
public static XenRef<Task> async_unplug(Session session, string _vusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.async_vusb_unplug(session.uuid, _vusb);
|
||||
else
|
||||
return XenRef<Task>.Create(session.proxy.async_vusb_unplug(session.uuid, _vusb ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Removes a VUSB record from the database
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vusb">The opaque_ref of the given vusb</param>
|
||||
public static void destroy(Session session, string _vusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
session.JsonRpcClient.vusb_destroy(session.uuid, _vusb);
|
||||
else
|
||||
session.proxy.vusb_destroy(session.uuid, _vusb ?? "").parse();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Removes a VUSB record from the database
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
/// <param name="_vusb">The opaque_ref of the given vusb</param>
|
||||
public static XenRef<Task> async_destroy(Session session, string _vusb)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.async_vusb_destroy(session.uuid, _vusb);
|
||||
else
|
||||
return XenRef<Task>.Create(session.proxy.async_vusb_destroy(session.uuid, _vusb ?? "").parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Return a list of all the VUSBs known to the system.
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
public static List<XenRef<VUSB>> get_all(Session session)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vusb_get_all(session.uuid);
|
||||
else
|
||||
return XenRef<VUSB>.Create(session.proxy.vusb_get_all(session.uuid).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get all the VUSB Records at once, in a single XML RPC call
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
/// <param name="session">The session</param>
|
||||
public static Dictionary<XenRef<VUSB>, VUSB> get_all_records(Session session)
|
||||
{
|
||||
if (session.JsonRpcClient != null)
|
||||
return session.JsonRpcClient.vusb_get_all_records(session.uuid);
|
||||
else
|
||||
return XenRef<VUSB>.Create<Proxy_VUSB>(session.proxy.vusb_get_all_records(session.uuid).parse());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Unique identifier/object reference
|
||||
/// </summary>
|
||||
public virtual string uuid
|
||||
{
|
||||
get { return _uuid; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _uuid))
|
||||
{
|
||||
_uuid = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("uuid");
|
||||
}
|
||||
}
|
||||
}
|
||||
private string _uuid = "";
|
||||
|
||||
/// <summary>
|
||||
/// list of the operations allowed in this state. This list is advisory only and the server state may have changed by the time this field is read by a client.
|
||||
/// </summary>
|
||||
public virtual List<vusb_operations> allowed_operations
|
||||
{
|
||||
get { return _allowed_operations; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _allowed_operations))
|
||||
{
|
||||
_allowed_operations = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("allowed_operations");
|
||||
}
|
||||
}
|
||||
}
|
||||
private List<vusb_operations> _allowed_operations = new List<vusb_operations>() {};
|
||||
|
||||
/// <summary>
|
||||
/// links each of the running tasks using this object (by reference) to a current_operation enum which describes the nature of the task.
|
||||
/// </summary>
|
||||
public virtual Dictionary<string, vusb_operations> current_operations
|
||||
{
|
||||
get { return _current_operations; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _current_operations))
|
||||
{
|
||||
_current_operations = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("current_operations");
|
||||
}
|
||||
}
|
||||
}
|
||||
private Dictionary<string, vusb_operations> _current_operations = new Dictionary<string, vusb_operations>() {};
|
||||
|
||||
/// <summary>
|
||||
/// VM that owns the VUSB
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(XenRefConverter<VM>))]
|
||||
public virtual XenRef<VM> VM
|
||||
{
|
||||
get { return _VM; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _VM))
|
||||
{
|
||||
_VM = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("VM");
|
||||
}
|
||||
}
|
||||
}
|
||||
private XenRef<VM> _VM = new XenRef<VM>(Helper.NullOpaqueRef);
|
||||
|
||||
/// <summary>
|
||||
/// USB group used by the VUSB
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(XenRefConverter<USB_group>))]
|
||||
public virtual XenRef<USB_group> USB_group
|
||||
{
|
||||
get { return _USB_group; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _USB_group))
|
||||
{
|
||||
_USB_group = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("USB_group");
|
||||
}
|
||||
}
|
||||
}
|
||||
private XenRef<USB_group> _USB_group = new XenRef<USB_group>(Helper.NullOpaqueRef);
|
||||
|
||||
/// <summary>
|
||||
/// Additional configuration
|
||||
/// </summary>
|
||||
public virtual Dictionary<string, string> other_config
|
||||
{
|
||||
get { return _other_config; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _other_config))
|
||||
{
|
||||
_other_config = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("other_config");
|
||||
}
|
||||
}
|
||||
}
|
||||
private Dictionary<string, string> _other_config = new Dictionary<string, string>() {};
|
||||
|
||||
/// <summary>
|
||||
/// is the device currently attached
|
||||
/// </summary>
|
||||
public virtual bool currently_attached
|
||||
{
|
||||
get { return _currently_attached; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _currently_attached))
|
||||
{
|
||||
_currently_attached = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("currently_attached");
|
||||
}
|
||||
}
|
||||
}
|
||||
private bool _currently_attached = false;
|
||||
}
|
||||
}
|
241
XenModel/XenAPI/Vdi_nbd_server_info.cs
Normal file
241
XenModel/XenAPI/Vdi_nbd_server_info.cs
Normal file
@ -0,0 +1,241 @@
|
||||
/*
|
||||
* 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;
|
||||
using System.ComponentModel;
|
||||
using System.Globalization;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Converters;
|
||||
|
||||
|
||||
namespace XenAPI
|
||||
{
|
||||
/// <summary>
|
||||
/// Details for connecting to a VDI using the Network Block Device protocol
|
||||
/// First published in Unreleased.
|
||||
/// </summary>
|
||||
public partial class Vdi_nbd_server_info : XenObject<Vdi_nbd_server_info>
|
||||
{
|
||||
public Vdi_nbd_server_info()
|
||||
{
|
||||
}
|
||||
|
||||
public Vdi_nbd_server_info(string exportname,
|
||||
string address,
|
||||
long port,
|
||||
string cert,
|
||||
string subject)
|
||||
{
|
||||
this.exportname = exportname;
|
||||
this.address = address;
|
||||
this.port = port;
|
||||
this.cert = cert;
|
||||
this.subject = subject;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Creates a new Vdi_nbd_server_info from a Proxy_Vdi_nbd_server_info.
|
||||
/// </summary>
|
||||
/// <param name="proxy"></param>
|
||||
public Vdi_nbd_server_info(Proxy_Vdi_nbd_server_info proxy)
|
||||
{
|
||||
this.UpdateFromProxy(proxy);
|
||||
}
|
||||
|
||||
public override void UpdateFrom(Vdi_nbd_server_info update)
|
||||
{
|
||||
exportname = update.exportname;
|
||||
address = update.address;
|
||||
port = update.port;
|
||||
cert = update.cert;
|
||||
subject = update.subject;
|
||||
}
|
||||
|
||||
internal void UpdateFromProxy(Proxy_Vdi_nbd_server_info proxy)
|
||||
{
|
||||
exportname = proxy.exportname == null ? null : (string)proxy.exportname;
|
||||
address = proxy.address == null ? null : (string)proxy.address;
|
||||
port = proxy.port == null ? 0 : long.Parse((string)proxy.port);
|
||||
cert = proxy.cert == null ? null : (string)proxy.cert;
|
||||
subject = proxy.subject == null ? null : (string)proxy.subject;
|
||||
}
|
||||
|
||||
public Proxy_Vdi_nbd_server_info ToProxy()
|
||||
{
|
||||
Proxy_Vdi_nbd_server_info result_ = new Proxy_Vdi_nbd_server_info();
|
||||
result_.exportname = exportname ?? "";
|
||||
result_.address = address ?? "";
|
||||
result_.port = port.ToString();
|
||||
result_.cert = cert ?? "";
|
||||
result_.subject = subject ?? "";
|
||||
return result_;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Creates a new Vdi_nbd_server_info from a Hashtable.
|
||||
/// </summary>
|
||||
/// <param name="table"></param>
|
||||
public Vdi_nbd_server_info(Hashtable table)
|
||||
{
|
||||
exportname = Marshalling.ParseString(table, "exportname");
|
||||
address = Marshalling.ParseString(table, "address");
|
||||
port = Marshalling.ParseLong(table, "port");
|
||||
cert = Marshalling.ParseString(table, "cert");
|
||||
subject = Marshalling.ParseString(table, "subject");
|
||||
}
|
||||
|
||||
public bool DeepEquals(Vdi_nbd_server_info other)
|
||||
{
|
||||
if (ReferenceEquals(null, other))
|
||||
return false;
|
||||
if (ReferenceEquals(this, other))
|
||||
return true;
|
||||
|
||||
return Helper.AreEqual2(this._exportname, other._exportname) &&
|
||||
Helper.AreEqual2(this._address, other._address) &&
|
||||
Helper.AreEqual2(this._port, other._port) &&
|
||||
Helper.AreEqual2(this._cert, other._cert) &&
|
||||
Helper.AreEqual2(this._subject, other._subject);
|
||||
}
|
||||
|
||||
internal static List<Vdi_nbd_server_info> ProxyArrayToObjectList(Proxy_Vdi_nbd_server_info[] input)
|
||||
{
|
||||
var result = new List<Vdi_nbd_server_info>();
|
||||
foreach (var item in input)
|
||||
result.Add(new Vdi_nbd_server_info(item));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override string SaveChanges(Session session, string opaqueRef, Vdi_nbd_server_info server)
|
||||
{
|
||||
if (opaqueRef == null)
|
||||
{ System.Diagnostics.Debug.Assert(false, "Cannot create instances of this type on the server");
|
||||
return "";
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new InvalidOperationException("This type has no read/write properties");
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// The exportname to request over NBD. This holds details including an authentication token, so it must be protected appropriately. Clients should regard the exportname as an opaque string or token.
|
||||
/// </summary>
|
||||
public virtual string exportname
|
||||
{
|
||||
get { return _exportname; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _exportname))
|
||||
{
|
||||
_exportname = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("exportname");
|
||||
}
|
||||
}
|
||||
}
|
||||
private string _exportname = "";
|
||||
|
||||
/// <summary>
|
||||
/// An address on which the server can be reached; this can be IPv4, IPv6, or a DNS name.
|
||||
/// </summary>
|
||||
public virtual string address
|
||||
{
|
||||
get { return _address; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _address))
|
||||
{
|
||||
_address = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("address");
|
||||
}
|
||||
}
|
||||
}
|
||||
private string _address = "";
|
||||
|
||||
/// <summary>
|
||||
/// The TCP port
|
||||
/// </summary>
|
||||
public virtual long port
|
||||
{
|
||||
get { return _port; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _port))
|
||||
{
|
||||
_port = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("port");
|
||||
}
|
||||
}
|
||||
}
|
||||
private long _port;
|
||||
|
||||
/// <summary>
|
||||
/// The TLS certificate of the server
|
||||
/// </summary>
|
||||
public virtual string cert
|
||||
{
|
||||
get { return _cert; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _cert))
|
||||
{
|
||||
_cert = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("cert");
|
||||
}
|
||||
}
|
||||
}
|
||||
private string _cert = "";
|
||||
|
||||
/// <summary>
|
||||
/// For convenience, this redundant field holds a DNS (hostname) subject of the certificate. This can be a wildcard, but only for a certificate that has a wildcard subject and no concrete hostname subjects.
|
||||
/// </summary>
|
||||
public virtual string subject
|
||||
{
|
||||
get { return _subject; }
|
||||
set
|
||||
{
|
||||
if (!Helper.AreEqual(value, _subject))
|
||||
{
|
||||
_subject = value;
|
||||
Changed = true;
|
||||
NotifyPropertyChanged("subject");
|
||||
}
|
||||
}
|
||||
}
|
||||
private string _subject = "";
|
||||
}
|
||||
}
|
@ -37,7 +37,7 @@ namespace XenAPI
|
||||
[JsonConverter(typeof(clsConverter))]
|
||||
public enum cls
|
||||
{
|
||||
VM, Host, SR, Pool, VMPP, VMSS, PVS_proxy, unknown
|
||||
VM, Host, SR, Pool, VMPP, VMSS, PVS_proxy, VDI, unknown
|
||||
}
|
||||
|
||||
public static class cls_helper
|
||||
@ -68,6 +68,8 @@ namespace XenAPI
|
||||
return "VMSS";
|
||||
case cls.PVS_proxy:
|
||||
return "PVS_proxy";
|
||||
case cls.VDI:
|
||||
return "VDI";
|
||||
default:
|
||||
return "unknown";
|
||||
}
|
||||
|
74
XenModel/XenAPI/network_purpose.cs
Normal file
74
XenModel/XenAPI/network_purpose.cs
Normal file
@ -0,0 +1,74 @@
|
||||
/*
|
||||
* 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 Newtonsoft.Json;
|
||||
|
||||
|
||||
namespace XenAPI
|
||||
{
|
||||
[JsonConverter(typeof(network_purposeConverter))]
|
||||
public enum network_purpose
|
||||
{
|
||||
nbd, insecure_nbd, unknown
|
||||
}
|
||||
|
||||
public static class network_purpose_helper
|
||||
{
|
||||
public static string ToString(network_purpose x)
|
||||
{
|
||||
return x.StringOf();
|
||||
}
|
||||
}
|
||||
|
||||
public static partial class EnumExt
|
||||
{
|
||||
public static string StringOf(this network_purpose x)
|
||||
{
|
||||
switch (x)
|
||||
{
|
||||
case network_purpose.nbd:
|
||||
return "nbd";
|
||||
case network_purpose.insecure_nbd:
|
||||
return "insecure_nbd";
|
||||
default:
|
||||
return "unknown";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
internal class network_purposeConverter : XenEnumConverter
|
||||
{
|
||||
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
|
||||
{
|
||||
writer.WriteValue(((network_purpose)value).StringOf());
|
||||
}
|
||||
}
|
||||
}
|
76
XenModel/XenAPI/pif_igmp_status.cs
Normal file
76
XenModel/XenAPI/pif_igmp_status.cs
Normal file
@ -0,0 +1,76 @@
|
||||
/*
|
||||
* 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 Newtonsoft.Json;
|
||||
|
||||
|
||||
namespace XenAPI
|
||||
{
|
||||
[JsonConverter(typeof(pif_igmp_statusConverter))]
|
||||
public enum pif_igmp_status
|
||||
{
|
||||
enabled, disabled, unknown
|
||||
}
|
||||
|
||||
public static class pif_igmp_status_helper
|
||||
{
|
||||
public static string ToString(pif_igmp_status x)
|
||||
{
|
||||
return x.StringOf();
|
||||
}
|
||||
}
|
||||
|
||||
public static partial class EnumExt
|
||||
{
|
||||
public static string StringOf(this pif_igmp_status x)
|
||||
{
|
||||
switch (x)
|
||||
{
|
||||
case pif_igmp_status.enabled:
|
||||
return "enabled";
|
||||
case pif_igmp_status.disabled:
|
||||
return "disabled";
|
||||
case pif_igmp_status.unknown:
|
||||
return "unknown";
|
||||
default:
|
||||
return "unknown";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
internal class pif_igmp_statusConverter : XenEnumConverter
|
||||
{
|
||||
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
|
||||
{
|
||||
writer.WriteValue(((pif_igmp_status)value).StringOf());
|
||||
}
|
||||
}
|
||||
}
|
@ -37,7 +37,7 @@ namespace XenAPI
|
||||
[JsonConverter(typeof(storage_operationsConverter))]
|
||||
public enum storage_operations
|
||||
{
|
||||
scan, destroy, forget, plug, unplug, update, vdi_create, vdi_introduce, vdi_destroy, vdi_resize, vdi_clone, vdi_snapshot, vdi_mirror, vdi_enable_cbt, vdi_disable_cbt, vdi_data_destroy, vdi_export_changed_blocks, vdi_set_on_boot, pbd_create, pbd_destroy, unknown
|
||||
scan, destroy, forget, plug, unplug, update, vdi_create, vdi_introduce, vdi_destroy, vdi_resize, vdi_clone, vdi_snapshot, vdi_mirror, vdi_enable_cbt, vdi_disable_cbt, vdi_data_destroy, vdi_list_changed_blocks, vdi_set_on_boot, pbd_create, pbd_destroy, unknown
|
||||
}
|
||||
|
||||
public static class storage_operations_helper
|
||||
@ -86,8 +86,8 @@ namespace XenAPI
|
||||
return "vdi_disable_cbt";
|
||||
case storage_operations.vdi_data_destroy:
|
||||
return "vdi_data_destroy";
|
||||
case storage_operations.vdi_export_changed_blocks:
|
||||
return "vdi_export_changed_blocks";
|
||||
case storage_operations.vdi_list_changed_blocks:
|
||||
return "vdi_list_changed_blocks";
|
||||
case storage_operations.vdi_set_on_boot:
|
||||
return "vdi_set_on_boot";
|
||||
case storage_operations.pbd_create:
|
||||
|
@ -37,7 +37,7 @@ namespace XenAPI
|
||||
[JsonConverter(typeof(vdi_operationsConverter))]
|
||||
public enum vdi_operations
|
||||
{
|
||||
clone, copy, resize, resize_online, snapshot, mirror, destroy, forget, update, force_unlock, generate_config, enable_cbt, disable_cbt, data_destroy, export_changed_blocks, set_on_boot, blocked, unknown
|
||||
clone, copy, resize, resize_online, snapshot, mirror, destroy, forget, update, force_unlock, generate_config, enable_cbt, disable_cbt, data_destroy, list_changed_blocks, set_on_boot, blocked, unknown
|
||||
}
|
||||
|
||||
public static class vdi_operations_helper
|
||||
@ -82,8 +82,8 @@ namespace XenAPI
|
||||
return "disable_cbt";
|
||||
case vdi_operations.data_destroy:
|
||||
return "data_destroy";
|
||||
case vdi_operations.export_changed_blocks:
|
||||
return "export_changed_blocks";
|
||||
case vdi_operations.list_changed_blocks:
|
||||
return "list_changed_blocks";
|
||||
case vdi_operations.set_on_boot:
|
||||
return "set_on_boot";
|
||||
case vdi_operations.blocked:
|
||||
|
76
XenModel/XenAPI/vusb_operations.cs
Normal file
76
XenModel/XenAPI/vusb_operations.cs
Normal file
@ -0,0 +1,76 @@
|
||||
/*
|
||||
* 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 Newtonsoft.Json;
|
||||
|
||||
|
||||
namespace XenAPI
|
||||
{
|
||||
[JsonConverter(typeof(vusb_operationsConverter))]
|
||||
public enum vusb_operations
|
||||
{
|
||||
attach, plug, unplug, unknown
|
||||
}
|
||||
|
||||
public static class vusb_operations_helper
|
||||
{
|
||||
public static string ToString(vusb_operations x)
|
||||
{
|
||||
return x.StringOf();
|
||||
}
|
||||
}
|
||||
|
||||
public static partial class EnumExt
|
||||
{
|
||||
public static string StringOf(this vusb_operations x)
|
||||
{
|
||||
switch (x)
|
||||
{
|
||||
case vusb_operations.attach:
|
||||
return "attach";
|
||||
case vusb_operations.plug:
|
||||
return "plug";
|
||||
case vusb_operations.unplug:
|
||||
return "unplug";
|
||||
default:
|
||||
return "unknown";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
internal class vusb_operationsConverter : XenEnumConverter
|
||||
{
|
||||
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
|
||||
{
|
||||
writer.WriteValue(((vusb_operations)value).StringOf());
|
||||
}
|
||||
}
|
||||
}
|
@ -369,12 +369,15 @@
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="XenAPI\network_default_locking_mode.cs" />
|
||||
<Compile Include="XenAPI\network_purpose.cs" />
|
||||
<Compile Include="XenAPI\PCI.cs" />
|
||||
<Compile Include="XenAPI\PGPU.cs" />
|
||||
<Compile Include="XenAPI\pgpu_dom0_access.cs" />
|
||||
<Compile Include="XenAPI\pif_igmp_status.cs" />
|
||||
<Compile Include="XenAPI\pool_allowed_operations.cs" />
|
||||
<Compile Include="XenAPI\Pool_update.cs" />
|
||||
<Compile Include="XenAPI\primary_address_type.cs" />
|
||||
<Compile Include="XenAPI\PUSB.cs" />
|
||||
<Compile Include="XenAPI\PVS_cache_storage.cs" />
|
||||
<Compile Include="XenAPI\PVS_proxy.cs" />
|
||||
<Compile Include="XenAPI\pvs_proxy_status.cs" />
|
||||
@ -384,6 +387,8 @@
|
||||
<Compile Include="XenAPI\sdn_controller_protocol.cs" />
|
||||
<Compile Include="XenAPI\tristate_type.cs" />
|
||||
<Compile Include="XenAPI\update_after_apply_guidance.cs" />
|
||||
<Compile Include="XenAPI\USB_group.cs" />
|
||||
<Compile Include="XenAPI\Vdi_nbd_server_info.cs" />
|
||||
<Compile Include="XenAPI\VGPU.cs" />
|
||||
<Compile Include="XenAPI\VGPU_type.cs" />
|
||||
<Compile Include="XenAPI\vgpu_type_implementation.cs" />
|
||||
@ -395,6 +400,8 @@
|
||||
<Compile Include="XenAPI\vmss_type.cs" />
|
||||
<Compile Include="XenAPI\VM_appliance.cs" />
|
||||
<Compile Include="XenAPI\vm_appliance_operation.cs" />
|
||||
<Compile Include="XenAPI\VUSB.cs" />
|
||||
<Compile Include="XenAPI\vusb_operations.cs" />
|
||||
<Compile Include="XenSearch\Common.cs" />
|
||||
<Compile Include="XenSearch\GroupAlg.cs" />
|
||||
<Compile Include="XenSearch\GroupingTypes.cs" />
|
||||
|
Loading…
Reference in New Issue
Block a user