Return-Path: X-Original-To: apmail-cloudstack-commits-archive@www.apache.org Delivered-To: apmail-cloudstack-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 677BD10B95 for ; Mon, 4 Nov 2013 13:56:49 +0000 (UTC) Received: (qmail 71735 invoked by uid 500); 4 Nov 2013 13:51:23 -0000 Delivered-To: apmail-cloudstack-commits-archive@cloudstack.apache.org Received: (qmail 70128 invoked by uid 500); 4 Nov 2013 13:49:45 -0000 Mailing-List: contact commits-help@cloudstack.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cloudstack.apache.org Delivered-To: mailing list commits@cloudstack.apache.org Received: (qmail 69141 invoked by uid 99); 4 Nov 2013 13:48:35 -0000 Received: from tyr.zones.apache.org (HELO tyr.zones.apache.org) (140.211.11.114) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 04 Nov 2013 13:48:35 +0000 Received: by tyr.zones.apache.org (Postfix, from userid 65534) id B94503A63A; Mon, 4 Nov 2013 13:48:32 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: devdeep@apache.org To: commits@cloudstack.apache.org Date: Mon, 04 Nov 2013 13:49:24 -0000 Message-Id: In-Reply-To: References: X-Mailer: ASF-Git Admin Mailer Subject: [55/85] [abbrv] Changes for switching all wmi calls to V2 namespace. V1 namespace is deprecated so it is better to be on v2 namespace. http://git-wip-us.apache.org/repos/asf/cloudstack/blob/1601498b/plugins/hypervisors/hyperv/DotNet/ServerResource/WmiWrappers/ROOT.virtualization.Msvm_VirtualSystemManagementServiceSettingData.cs ---------------------------------------------------------------------- diff --git a/plugins/hypervisors/hyperv/DotNet/ServerResource/WmiWrappers/ROOT.virtualization.Msvm_VirtualSystemManagementServiceSettingData.cs b/plugins/hypervisors/hyperv/DotNet/ServerResource/WmiWrappers/ROOT.virtualization.Msvm_VirtualSystemManagementServiceSettingData.cs deleted file mode 100644 index fde04ac..0000000 --- a/plugins/hypervisors/hyperv/DotNet/ServerResource/WmiWrappers/ROOT.virtualization.Msvm_VirtualSystemManagementServiceSettingData.cs +++ /dev/null @@ -1,731 +0,0 @@ -namespace CloudStack.Plugin.WmiWrappers.ROOT.VIRTUALIZATION { - using System; - using System.ComponentModel; - using System.Management; - using System.Collections; - using System.Globalization; - using System.ComponentModel.Design.Serialization; - using System.Reflection; - - - // Functions ShouldSerialize are functions used by VS property browser to check if a particular property has to be serialized. These functions are added for all ValueType properties ( properties of type Int32, BOOL etc.. which cannot be set to null). These functions use IsNull function. These functions are also used in the TypeConverter implementation for the properties to check for NULL value of property so that an empty value can be shown in Property browser in case of Drag and Drop in Visual studio. - // Functions IsNull() are used to check if a property is NULL. - // Functions Reset are added for Nullable Read/Write properties. These functions are used by VS designer in property browser to set a property to NULL. - // Every property added to the class for WMI property has attributes set to define its behavior in Visual Studio designer and also to define a TypeConverter to be used. - // An Early Bound class generated for the WMI class.Msvm_VirtualSystemManagementServiceSettingData - public class VirtualSystemManagementServiceSettingData : System.ComponentModel.Component { - - // Private property to hold the WMI namespace in which the class resides. - private static string CreatedWmiNamespace = "ROOT\\virtualization"; - - // Private property to hold the name of WMI class which created this class. - private static string CreatedClassName = "Msvm_VirtualSystemManagementServiceSettingData"; - - // Private member variable to hold the ManagementScope which is used by the various methods. - private static System.Management.ManagementScope statMgmtScope = null; - - private ManagementSystemProperties PrivateSystemProperties; - - // Underlying lateBound WMI object. - private System.Management.ManagementObject PrivateLateBoundObject; - - // Member variable to store the 'automatic commit' behavior for the class. - private bool AutoCommitProp; - - // Private variable to hold the embedded property representing the instance. - private System.Management.ManagementBaseObject embeddedObj; - - // The current WMI object used - private System.Management.ManagementBaseObject curObj; - - // Flag to indicate if the instance is an embedded object. - private bool isEmbedded; - - // Below are different overloads of constructors to initialize an instance of the class with a WMI object. - public VirtualSystemManagementServiceSettingData() { - this.InitializeObject(null, null, null); - } - - public VirtualSystemManagementServiceSettingData(string keyInstanceID) { - this.InitializeObject(null, new System.Management.ManagementPath(VirtualSystemManagementServiceSettingData.ConstructPath(keyInstanceID)), null); - } - - public VirtualSystemManagementServiceSettingData(System.Management.ManagementScope mgmtScope, string keyInstanceID) { - this.InitializeObject(((System.Management.ManagementScope)(mgmtScope)), new System.Management.ManagementPath(VirtualSystemManagementServiceSettingData.ConstructPath(keyInstanceID)), null); - } - - public VirtualSystemManagementServiceSettingData(System.Management.ManagementPath path, System.Management.ObjectGetOptions getOptions) { - this.InitializeObject(null, path, getOptions); - } - - public VirtualSystemManagementServiceSettingData(System.Management.ManagementScope mgmtScope, System.Management.ManagementPath path) { - this.InitializeObject(mgmtScope, path, null); - } - - public VirtualSystemManagementServiceSettingData(System.Management.ManagementPath path) { - this.InitializeObject(null, path, null); - } - - public VirtualSystemManagementServiceSettingData(System.Management.ManagementScope mgmtScope, System.Management.ManagementPath path, System.Management.ObjectGetOptions getOptions) { - this.InitializeObject(mgmtScope, path, getOptions); - } - - public VirtualSystemManagementServiceSettingData(System.Management.ManagementObject theObject) { - Initialize(); - if ((CheckIfProperClass(theObject) == true)) { - PrivateLateBoundObject = theObject; - PrivateSystemProperties = new ManagementSystemProperties(PrivateLateBoundObject); - curObj = PrivateLateBoundObject; - } - else { - throw new System.ArgumentException("Class name does not match."); - } - } - - public VirtualSystemManagementServiceSettingData(System.Management.ManagementBaseObject theObject) { - Initialize(); - if ((CheckIfProperClass(theObject) == true)) { - embeddedObj = theObject; - PrivateSystemProperties = new ManagementSystemProperties(theObject); - curObj = embeddedObj; - isEmbedded = true; - } - else { - throw new System.ArgumentException("Class name does not match."); - } - } - - // Property returns the namespace of the WMI class. - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public string OriginatingNamespace { - get { - return "ROOT\\virtualization"; - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public string ManagementClassName { - get { - string strRet = CreatedClassName; - if ((curObj != null)) { - if ((curObj.ClassPath != null)) { - strRet = ((string)(curObj["__CLASS"])); - if (((strRet == null) - || (strRet == string.Empty))) { - strRet = CreatedClassName; - } - } - } - return strRet; - } - } - - // Property pointing to an embedded object to get System properties of the WMI object. - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public ManagementSystemProperties SystemProperties { - get { - return PrivateSystemProperties; - } - } - - // Property returning the underlying lateBound object. - [Browsable(false)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public System.Management.ManagementBaseObject LateBoundObject { - get { - return curObj; - } - } - - // ManagementScope of the object. - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public System.Management.ManagementScope Scope { - get { - if ((isEmbedded == false)) { - return PrivateLateBoundObject.Scope; - } - else { - return null; - } - } - set { - if ((isEmbedded == false)) { - PrivateLateBoundObject.Scope = value; - } - } - } - - // Property to show the commit behavior for the WMI object. If true, WMI object will be automatically saved after each property modification.(ie. Put() is called after modification of a property). - [Browsable(false)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public bool AutoCommit { - get { - return AutoCommitProp; - } - set { - AutoCommitProp = value; - } - } - - // The ManagementPath of the underlying WMI object. - [Browsable(true)] - public System.Management.ManagementPath Path { - get { - if ((isEmbedded == false)) { - return PrivateLateBoundObject.Path; - } - else { - return null; - } - } - set { - if ((isEmbedded == false)) { - if ((CheckIfProperClass(null, value, null) != true)) { - throw new System.ArgumentException("Class name does not match."); - } - PrivateLateBoundObject.Path = value; - } - } - } - - // Public static scope property which is used by the various methods. - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public static System.Management.ManagementScope StaticScope { - get { - return statMgmtScope; - } - set { - statMgmtScope = value; - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description(@"Used by OEMs to allow BIOS-locked Windows operating systems to run in the virtual machine. This string must be exactly 32 characters in length. -This is a read-only property, but it can be changed using the ModifyServiceSettings method of the Msvm_VirtualSystemManagementService class.")] - public string BiosLockString { - get { - return ((string)(curObj["BiosLockString"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public string Caption { - get { - return ((string)(curObj["Caption"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description("The default external data root. By default, \"root\\ProgramData\\Microsoft\\Windows\\V" + - "irtualization\".\nThis is a read-only property, but it can be changed using the Mo" + - "difyServiceSettings method of the Msvm_VirtualSystemManagementService class.")] - public string DefaultExternalDataRoot { - get { - return ((string)(curObj["DefaultExternalDataRoot"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description("The default virtual hard disk path. By default, \"root\\Users\\Public\\Documents\\Virt" + - "ual Hard Disks\".\nThis is a read-only property, but it can be changed using the M" + - "odifyServiceSettings method of the Msvm_VirtualSystemManagementService class.")] - public string DefaultVirtualHardDiskPath { - get { - return ((string)(curObj["DefaultVirtualHardDiskPath"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public string Description { - get { - return ((string)(curObj["Description"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public string ElementName { - get { - return ((string)(curObj["ElementName"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public string InstanceID { - get { - return ((string)(curObj["InstanceID"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description("The maximum MAC address for dynamically generated MAC addresses.\nThis is a read-o" + - "nly property, but it can be changed using the ModifyServiceSettings method of th" + - "e Msvm_VirtualSystemManagementService class.")] - public string MaximumMacAddress { - get { - return ((string)(curObj["MaximumMacAddress"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description("The minimum MAC address for dynamically generated MAC addresses.\nThis is a read-o" + - "nly property, but it can be changed using the ModifyServiceSettings method of th" + - "e Msvm_VirtualSystemManagementService class.")] - public string MinimumMacAddress { - get { - return ((string)(curObj["MinimumMacAddress"])); - } - } - - [Browsable(false)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public bool IsNumaSpanningEnabledNull { - get { - if ((curObj["NumaSpanningEnabled"] == null)) { - return true; - } - else { - return false; - } - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description("Reserved for future use.")] - [TypeConverter(typeof(WMIValueTypeConverter))] - public bool NumaSpanningEnabled { - get { - if ((curObj["NumaSpanningEnabled"] == null)) { - return System.Convert.ToBoolean(0); - } - return ((bool)(curObj["NumaSpanningEnabled"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description("Controls memory allocation for the VMs on non-uniform memory access (NUMA) system" + - "s.\nThis is a read-only property, but it can be changed using the ModifyServiceSe" + - "ttings method of the Msvm_VirtualSystemManagementService class.")] - public string PrimaryOwnerContact { - get { - return ((string)(curObj["PrimaryOwnerContact"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description(@"Describes how the primary system owner can be reached (for example, phone number or e-mail address). By default, empty. This name may not exceed 256 characters in length. -This is a read-only property, but it can be changed using the ModifyServiceSettings method of the Msvm_VirtualSystemManagementService class.")] - public string PrimaryOwnerName { - get { - return ((string)(curObj["PrimaryOwnerName"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description("This is a read-only property, but it can be changed using the ModifyServiceSettin" + - "gs method of the Msvm_VirtualSystemManagementService class.")] - public string ScopeOfResidence { - get { - return ((string)(curObj["ScopeOfResidence"])); - } - } - - private bool CheckIfProperClass(System.Management.ManagementScope mgmtScope, System.Management.ManagementPath path, System.Management.ObjectGetOptions OptionsParam) { - if (((path != null) - && (string.Compare(path.ClassName, this.ManagementClassName, true, System.Globalization.CultureInfo.InvariantCulture) == 0))) { - return true; - } - else { - return CheckIfProperClass(new System.Management.ManagementObject(mgmtScope, path, OptionsParam)); - } - } - - private bool CheckIfProperClass(System.Management.ManagementBaseObject theObj) { - if (((theObj != null) - && (string.Compare(((string)(theObj["__CLASS"])), this.ManagementClassName, true, System.Globalization.CultureInfo.InvariantCulture) == 0))) { - return true; - } - else { - System.Array parentClasses = ((System.Array)(theObj["__DERIVATION"])); - if ((parentClasses != null)) { - int count = 0; - for (count = 0; (count < parentClasses.Length); count = (count + 1)) { - if ((string.Compare(((string)(parentClasses.GetValue(count))), this.ManagementClassName, true, System.Globalization.CultureInfo.InvariantCulture) == 0)) { - return true; - } - } - } - } - return false; - } - - private bool ShouldSerializeNumaSpanningEnabled() { - if ((this.IsNumaSpanningEnabledNull == false)) { - return true; - } - return false; - } - - [Browsable(true)] - public void CommitObject() { - if ((isEmbedded == false)) { - PrivateLateBoundObject.Put(); - } - } - - [Browsable(true)] - public void CommitObject(System.Management.PutOptions putOptions) { - if ((isEmbedded == false)) { - PrivateLateBoundObject.Put(putOptions); - } - } - - private void Initialize() { - AutoCommitProp = true; - isEmbedded = false; - } - - private static string ConstructPath(string keyInstanceID) { - string strPath = "ROOT\\virtualization:Msvm_VirtualSystemManagementServiceSettingData"; - strPath = string.Concat(strPath, string.Concat(".InstanceID=", string.Concat("\"", string.Concat(keyInstanceID, "\"")))); - return strPath; - } - - private void InitializeObject(System.Management.ManagementScope mgmtScope, System.Management.ManagementPath path, System.Management.ObjectGetOptions getOptions) { - Initialize(); - if ((path != null)) { - if ((CheckIfProperClass(mgmtScope, path, getOptions) != true)) { - throw new System.ArgumentException("Class name does not match."); - } - } - PrivateLateBoundObject = new System.Management.ManagementObject(mgmtScope, path, getOptions); - PrivateSystemProperties = new ManagementSystemProperties(PrivateLateBoundObject); - curObj = PrivateLateBoundObject; - } - - // Different overloads of GetInstances() help in enumerating instances of the WMI class. - public static VirtualSystemManagementServiceSettingDataCollection GetInstances() { - return GetInstances(null, null, null); - } - - public static VirtualSystemManagementServiceSettingDataCollection GetInstances(string condition) { - return GetInstances(null, condition, null); - } - - public static VirtualSystemManagementServiceSettingDataCollection GetInstances(string[] selectedProperties) { - return GetInstances(null, null, selectedProperties); - } - - public static VirtualSystemManagementServiceSettingDataCollection GetInstances(string condition, string[] selectedProperties) { - return GetInstances(null, condition, selectedProperties); - } - - public static VirtualSystemManagementServiceSettingDataCollection GetInstances(System.Management.ManagementScope mgmtScope, System.Management.EnumerationOptions enumOptions) { - if ((mgmtScope == null)) { - if ((statMgmtScope == null)) { - mgmtScope = new System.Management.ManagementScope(); - mgmtScope.Path.NamespacePath = "root\\virtualization"; - } - else { - mgmtScope = statMgmtScope; - } - } - System.Management.ManagementPath pathObj = new System.Management.ManagementPath(); - pathObj.ClassName = "Msvm_VirtualSystemManagementServiceSettingData"; - pathObj.NamespacePath = "root\\virtualization"; - System.Management.ManagementClass clsObject = new System.Management.ManagementClass(mgmtScope, pathObj, null); - if ((enumOptions == null)) { - enumOptions = new System.Management.EnumerationOptions(); - enumOptions.EnsureLocatable = true; - } - return new VirtualSystemManagementServiceSettingDataCollection(clsObject.GetInstances(enumOptions)); - } - - public static VirtualSystemManagementServiceSettingDataCollection GetInstances(System.Management.ManagementScope mgmtScope, string condition) { - return GetInstances(mgmtScope, condition, null); - } - - public static VirtualSystemManagementServiceSettingDataCollection GetInstances(System.Management.ManagementScope mgmtScope, string[] selectedProperties) { - return GetInstances(mgmtScope, null, selectedProperties); - } - - public static VirtualSystemManagementServiceSettingDataCollection GetInstances(System.Management.ManagementScope mgmtScope, string condition, string[] selectedProperties) { - if ((mgmtScope == null)) { - if ((statMgmtScope == null)) { - mgmtScope = new System.Management.ManagementScope(); - mgmtScope.Path.NamespacePath = "root\\virtualization"; - } - else { - mgmtScope = statMgmtScope; - } - } - System.Management.ManagementObjectSearcher ObjectSearcher = new System.Management.ManagementObjectSearcher(mgmtScope, new SelectQuery("Msvm_VirtualSystemManagementServiceSettingData", condition, selectedProperties)); - System.Management.EnumerationOptions enumOptions = new System.Management.EnumerationOptions(); - enumOptions.EnsureLocatable = true; - ObjectSearcher.Options = enumOptions; - return new VirtualSystemManagementServiceSettingDataCollection(ObjectSearcher.Get()); - } - - [Browsable(true)] - public static VirtualSystemManagementServiceSettingData CreateInstance() { - System.Management.ManagementScope mgmtScope = null; - if ((statMgmtScope == null)) { - mgmtScope = new System.Management.ManagementScope(); - mgmtScope.Path.NamespacePath = CreatedWmiNamespace; - } - else { - mgmtScope = statMgmtScope; - } - System.Management.ManagementPath mgmtPath = new System.Management.ManagementPath(CreatedClassName); - System.Management.ManagementClass tmpMgmtClass = new System.Management.ManagementClass(mgmtScope, mgmtPath, null); - return new VirtualSystemManagementServiceSettingData(tmpMgmtClass.CreateInstance()); - } - - [Browsable(true)] - public void Delete() { - PrivateLateBoundObject.Delete(); - } - - // Enumerator implementation for enumerating instances of the class. - public class VirtualSystemManagementServiceSettingDataCollection : object, ICollection { - - private ManagementObjectCollection privColObj; - - public VirtualSystemManagementServiceSettingDataCollection(ManagementObjectCollection objCollection) { - privColObj = objCollection; - } - - public virtual int Count { - get { - return privColObj.Count; - } - } - - public virtual bool IsSynchronized { - get { - return privColObj.IsSynchronized; - } - } - - public virtual object SyncRoot { - get { - return this; - } - } - - public virtual void CopyTo(System.Array array, int index) { - privColObj.CopyTo(array, index); - int nCtr; - for (nCtr = 0; (nCtr < array.Length); nCtr = (nCtr + 1)) { - array.SetValue(new VirtualSystemManagementServiceSettingData(((System.Management.ManagementObject)(array.GetValue(nCtr)))), nCtr); - } - } - - public virtual System.Collections.IEnumerator GetEnumerator() { - return new VirtualSystemManagementServiceSettingDataEnumerator(privColObj.GetEnumerator()); - } - - public class VirtualSystemManagementServiceSettingDataEnumerator : object, System.Collections.IEnumerator { - - private ManagementObjectCollection.ManagementObjectEnumerator privObjEnum; - - public VirtualSystemManagementServiceSettingDataEnumerator(ManagementObjectCollection.ManagementObjectEnumerator objEnum) { - privObjEnum = objEnum; - } - - public virtual object Current { - get { - return new VirtualSystemManagementServiceSettingData(((System.Management.ManagementObject)(privObjEnum.Current))); - } - } - - public virtual bool MoveNext() { - return privObjEnum.MoveNext(); - } - - public virtual void Reset() { - privObjEnum.Reset(); - } - } - } - - // TypeConverter to handle null values for ValueType properties - public class WMIValueTypeConverter : TypeConverter { - - private TypeConverter baseConverter; - - private System.Type baseType; - - public WMIValueTypeConverter(System.Type inBaseType) { - baseConverter = TypeDescriptor.GetConverter(inBaseType); - baseType = inBaseType; - } - - public override bool CanConvertFrom(System.ComponentModel.ITypeDescriptorContext context, System.Type srcType) { - return baseConverter.CanConvertFrom(context, srcType); - } - - public override bool CanConvertTo(System.ComponentModel.ITypeDescriptorContext context, System.Type destinationType) { - return baseConverter.CanConvertTo(context, destinationType); - } - - public override object ConvertFrom(System.ComponentModel.ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value) { - return baseConverter.ConvertFrom(context, culture, value); - } - - public override object CreateInstance(System.ComponentModel.ITypeDescriptorContext context, System.Collections.IDictionary dictionary) { - return baseConverter.CreateInstance(context, dictionary); - } - - public override bool GetCreateInstanceSupported(System.ComponentModel.ITypeDescriptorContext context) { - return baseConverter.GetCreateInstanceSupported(context); - } - - public override PropertyDescriptorCollection GetProperties(System.ComponentModel.ITypeDescriptorContext context, object value, System.Attribute[] attributeVar) { - return baseConverter.GetProperties(context, value, attributeVar); - } - - public override bool GetPropertiesSupported(System.ComponentModel.ITypeDescriptorContext context) { - return baseConverter.GetPropertiesSupported(context); - } - - public override System.ComponentModel.TypeConverter.StandardValuesCollection GetStandardValues(System.ComponentModel.ITypeDescriptorContext context) { - return baseConverter.GetStandardValues(context); - } - - public override bool GetStandardValuesExclusive(System.ComponentModel.ITypeDescriptorContext context) { - return baseConverter.GetStandardValuesExclusive(context); - } - - public override bool GetStandardValuesSupported(System.ComponentModel.ITypeDescriptorContext context) { - return baseConverter.GetStandardValuesSupported(context); - } - - public override object ConvertTo(System.ComponentModel.ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value, System.Type destinationType) { - if ((baseType.BaseType == typeof(System.Enum))) { - if ((value.GetType() == destinationType)) { - return value; - } - if ((((value == null) - && (context != null)) - && (context.PropertyDescriptor.ShouldSerializeValue(context.Instance) == false))) { - return "NULL_ENUM_VALUE" ; - } - return baseConverter.ConvertTo(context, culture, value, destinationType); - } - if (((baseType == typeof(bool)) - && (baseType.BaseType == typeof(System.ValueType)))) { - if ((((value == null) - && (context != null)) - && (context.PropertyDescriptor.ShouldSerializeValue(context.Instance) == false))) { - return ""; - } - return baseConverter.ConvertTo(context, culture, value, destinationType); - } - if (((context != null) - && (context.PropertyDescriptor.ShouldSerializeValue(context.Instance) == false))) { - return ""; - } - return baseConverter.ConvertTo(context, culture, value, destinationType); - } - } - - // Embedded class to represent WMI system Properties. - [TypeConverter(typeof(System.ComponentModel.ExpandableObjectConverter))] - public class ManagementSystemProperties { - - private System.Management.ManagementBaseObject PrivateLateBoundObject; - - public ManagementSystemProperties(System.Management.ManagementBaseObject ManagedObject) { - PrivateLateBoundObject = ManagedObject; - } - - [Browsable(true)] - public int GENUS { - get { - return ((int)(PrivateLateBoundObject["__GENUS"])); - } - } - - [Browsable(true)] - public string CLASS { - get { - return ((string)(PrivateLateBoundObject["__CLASS"])); - } - } - - [Browsable(true)] - public string SUPERCLASS { - get { - return ((string)(PrivateLateBoundObject["__SUPERCLASS"])); - } - } - - [Browsable(true)] - public string DYNASTY { - get { - return ((string)(PrivateLateBoundObject["__DYNASTY"])); - } - } - - [Browsable(true)] - public string RELPATH { - get { - return ((string)(PrivateLateBoundObject["__RELPATH"])); - } - } - - [Browsable(true)] - public int PROPERTY_COUNT { - get { - return ((int)(PrivateLateBoundObject["__PROPERTY_COUNT"])); - } - } - - [Browsable(true)] - public string[] DERIVATION { - get { - return ((string[])(PrivateLateBoundObject["__DERIVATION"])); - } - } - - [Browsable(true)] - public string SERVER { - get { - return ((string)(PrivateLateBoundObject["__SERVER"])); - } - } - - [Browsable(true)] - public string NAMESPACE { - get { - return ((string)(PrivateLateBoundObject["__NAMESPACE"])); - } - } - - [Browsable(true)] - public string PATH { - get { - return ((string)(PrivateLateBoundObject["__PATH"])); - } - } - } - } -} http://git-wip-us.apache.org/repos/asf/cloudstack/blob/1601498b/plugins/hypervisors/hyperv/DotNet/ServerResource/WmiWrappers/ROOT.virtualization.Msvm_VirtualSystemSettingData.cs ---------------------------------------------------------------------- diff --git a/plugins/hypervisors/hyperv/DotNet/ServerResource/WmiWrappers/ROOT.virtualization.Msvm_VirtualSystemSettingData.cs b/plugins/hypervisors/hyperv/DotNet/ServerResource/WmiWrappers/ROOT.virtualization.Msvm_VirtualSystemSettingData.cs deleted file mode 100644 index ae2b7f8..0000000 --- a/plugins/hypervisors/hyperv/DotNet/ServerResource/WmiWrappers/ROOT.virtualization.Msvm_VirtualSystemSettingData.cs +++ /dev/null @@ -1,1206 +0,0 @@ -namespace CloudStack.Plugin.WmiWrappers.ROOT.VIRTUALIZATION { - using System; - using System.ComponentModel; - using System.Management; - using System.Collections; - using System.Globalization; - using System.ComponentModel.Design.Serialization; - using System.Reflection; - - - // Functions ShouldSerialize are functions used by VS property browser to check if a particular property has to be serialized. These functions are added for all ValueType properties ( properties of type Int32, BOOL etc.. which cannot be set to null). These functions use IsNull function. These functions are also used in the TypeConverter implementation for the properties to check for NULL value of property so that an empty value can be shown in Property browser in case of Drag and Drop in Visual studio. - // Functions IsNull() are used to check if a property is NULL. - // Functions Reset are added for Nullable Read/Write properties. These functions are used by VS designer in property browser to set a property to NULL. - // Every property added to the class for WMI property has attributes set to define its behavior in Visual Studio designer and also to define a TypeConverter to be used. - // Datetime conversion functions ToDateTime and ToDmtfDateTime are added to the class to convert DMTF datetime to System.DateTime and vice-versa. - // An Early Bound class generated for the WMI class.Msvm_VirtualSystemSettingData - public class VirtualSystemSettingData : System.ComponentModel.Component { - - // Private property to hold the WMI namespace in which the class resides. - private static string CreatedWmiNamespace = "ROOT\\virtualization"; - - // property to hold the name of WMI class which created this class. - public static string CreatedClassName = "Msvm_VirtualSystemSettingData"; - - // Private member variable to hold the ManagementScope which is used by the various methods. - private static System.Management.ManagementScope statMgmtScope = null; - - private ManagementSystemProperties PrivateSystemProperties; - - // Underlying lateBound WMI object. - private System.Management.ManagementObject PrivateLateBoundObject; - - // Member variable to store the 'automatic commit' behavior for the class. - private bool AutoCommitProp; - - // Private variable to hold the embedded property representing the instance. - private System.Management.ManagementBaseObject embeddedObj; - - // The current WMI object used - private System.Management.ManagementBaseObject curObj; - - // Flag to indicate if the instance is an embedded object. - private bool isEmbedded; - - // Below are different overloads of constructors to initialize an instance of the class with a WMI object. - public VirtualSystemSettingData() { - this.InitializeObject(null, null, null); - } - - public VirtualSystemSettingData(string keyInstanceID) { - this.InitializeObject(null, new System.Management.ManagementPath(VirtualSystemSettingData.ConstructPath(keyInstanceID)), null); - } - - public VirtualSystemSettingData(System.Management.ManagementScope mgmtScope, string keyInstanceID) { - this.InitializeObject(((System.Management.ManagementScope)(mgmtScope)), new System.Management.ManagementPath(VirtualSystemSettingData.ConstructPath(keyInstanceID)), null); - } - - public VirtualSystemSettingData(System.Management.ManagementPath path, System.Management.ObjectGetOptions getOptions) { - this.InitializeObject(null, path, getOptions); - } - - public VirtualSystemSettingData(System.Management.ManagementScope mgmtScope, System.Management.ManagementPath path) { - this.InitializeObject(mgmtScope, path, null); - } - - public VirtualSystemSettingData(System.Management.ManagementPath path) { - this.InitializeObject(null, path, null); - } - - public VirtualSystemSettingData(System.Management.ManagementScope mgmtScope, System.Management.ManagementPath path, System.Management.ObjectGetOptions getOptions) { - this.InitializeObject(mgmtScope, path, getOptions); - } - - public VirtualSystemSettingData(System.Management.ManagementObject theObject) { - Initialize(); - if ((CheckIfProperClass(theObject) == true)) { - PrivateLateBoundObject = theObject; - PrivateSystemProperties = new ManagementSystemProperties(PrivateLateBoundObject); - curObj = PrivateLateBoundObject; - } - else { - throw new System.ArgumentException("Class name does not match."); - } - } - - public VirtualSystemSettingData(System.Management.ManagementBaseObject theObject) { - Initialize(); - if ((CheckIfProperClass(theObject) == true)) { - embeddedObj = theObject; - PrivateSystemProperties = new ManagementSystemProperties(theObject); - curObj = embeddedObj; - isEmbedded = true; - } - else { - throw new System.ArgumentException("Class name does not match."); - } - } - - // Property returns the namespace of the WMI class. - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public string OriginatingNamespace { - get { - return "ROOT\\virtualization"; - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public string ManagementClassName { - get { - string strRet = CreatedClassName; - if ((curObj != null)) { - if ((curObj.ClassPath != null)) { - strRet = ((string)(curObj["__CLASS"])); - if (((strRet == null) - || (strRet == string.Empty))) { - strRet = CreatedClassName; - } - } - } - return strRet; - } - } - - // Property pointing to an embedded object to get System properties of the WMI object. - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public ManagementSystemProperties SystemProperties { - get { - return PrivateSystemProperties; - } - } - - // Property returning the underlying lateBound object. - [Browsable(false)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public System.Management.ManagementBaseObject LateBoundObject { - get { - return curObj; - } - } - - // ManagementScope of the object. - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public System.Management.ManagementScope Scope { - get { - if ((isEmbedded == false)) { - return PrivateLateBoundObject.Scope; - } - else { - return null; - } - } - set { - if ((isEmbedded == false)) { - PrivateLateBoundObject.Scope = value; - } - } - } - - // Property to show the commit behavior for the WMI object. If true, WMI object will be automatically saved after each property modification.(ie. Put() is called after modification of a property). - [Browsable(false)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public bool AutoCommit { - get { - return AutoCommitProp; - } - set { - AutoCommitProp = value; - } - } - - // The ManagementPath of the underlying WMI object. - [Browsable(true)] - public System.Management.ManagementPath Path { - get { - if ((isEmbedded == false)) { - return PrivateLateBoundObject.Path; - } - else { - return null; - } - } - set { - if ((isEmbedded == false)) { - if ((CheckIfProperClass(null, value, null) != true)) { - throw new System.ArgumentException("Class name does not match."); - } - PrivateLateBoundObject.Path = value; - } - } - } - - // Public static scope property which is used by the various methods. - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public static System.Management.ManagementScope StaticScope { - get { - return statMgmtScope; - } - set { - statMgmtScope = value; - } - } - - [Browsable(false)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public bool IsAutoActivateNull { - get { - if ((curObj["AutoActivate"] == null)) { - return true; - } - else { - return false; - } - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [TypeConverter(typeof(WMIValueTypeConverter))] - public bool AutoActivate { - get { - if ((curObj["AutoActivate"] == null)) { - return System.Convert.ToBoolean(0); - } - return ((bool)(curObj["AutoActivate"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description("The serial number of the base board for the virtual computer system.\nThis is a re" + - "ad-only property, but it can be changed using the ModifyVirtualSystem method of " + - "the Msvm_VirtualSystemManagementService class.")] - public string BaseBoardSerialNumber { - get { - return ((string)(curObj["BaseBoardSerialNumber"])); - } - set { - curObj["BaseBoardSerialNumber"] = value; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description("The globally-unique identifier for the BIOS of the virtual computer system.\nThis " + - "is a read-only property, but it can be changed using the ModifyVirtualSystem met" + - "hod of the Msvm_VirtualSystemManagementService class.")] - public string BIOSGUID { - get { - return ((string)(curObj["BIOSGUID"])); - } - set { - curObj["BIOSGUID"] = value; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - } - - [Browsable(false)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public bool IsBIOSNumLockNull { - get { - if ((curObj["BIOSNumLock"] == null)) { - return true; - } - else { - return false; - } - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description(@"This property is set to TRUE if the num lock key is set to on by the BIOS, FALSE if the num lock key is set to off by the BIOS. -This is a read-only property, but it can be changed using the ModifyVirtualSystem method of the Msvm_VirtualSystemManagementService class.")] - [TypeConverter(typeof(WMIValueTypeConverter))] - public bool BIOSNumLock { - get { - if ((curObj["BIOSNumLock"] == null)) { - return System.Convert.ToBoolean(0); - } - return ((bool)(curObj["BIOSNumLock"])); - } - set { - curObj["BIOSNumLock"] = value; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description("The serial number of the BIOS for the virtual computer system.\nThis is a read-onl" + - "y property, but it can be changed using the ModifyVirtualSystem method of the Ms" + - "vm_VirtualSystemManagementService class.")] - public string BIOSSerialNumber { - get { - return ((string)(curObj["BIOSSerialNumber"])); - } - set { - curObj["BIOSSerialNumber"] = value; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description(@"The boot order set within the BIOS of the virtual computer system. This property is an array of values, max length 4, where each value indicates a device to boot from. The virtual computer system will first attempt to boot from the device indicated by the first value within the array. If that device does not contain a boot sector, the virtual computer system will attempt to boot from the next device specified by the BootOrder property and so on. If no device specified within the BootOrder contains a boot sector the virtual computer system will fail to boot. The default value for a virtual computer system is [0, 1, 2, 3, 4]. -Value definitions: -0 (Floppy): The virtual computer system will attempt to boot from the floppy disk within the floppy drive. -1 (CD-ROM): The virtual computer system will attempt to boot from the first CD or DVD disk found with a boot sector. -2 (IDE Hard Drive): The virtual computer system will attempt to boot from the first hard drive found attached to an IDE controller with a boot sector. -3 (PXE Boot): The virtual computer system will attempt to PXE boot from the network. -4 (SCSI Hard Drive): The virtual computer system will attempt to boot from the first hard drive found attached to a SCSI controller with a boot sector. -5-65535: Reserved -This is a read-only property, but it can be changed using the ModifyVirtualSystem method of the Msvm_VirtualSystemManagementService class.")] - public ushort[] BootOrder { - get { - return ((ushort[])(curObj["BootOrder"])); - } - set { - curObj["BootOrder"] = value; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public string Caption { - get { - return ((string)(curObj["Caption"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description("The asset tag of the chassis for the virtual computer system.\nThis is a read-only" + - " property, but it can be changed using the ModifyVirtualSystem method of the Msv" + - "m_VirtualSystemManagementService class.")] - public string ChassisAssetTag { - get { - return ((string)(curObj["ChassisAssetTag"])); - } - set { - curObj["ChassisAssetTag"] = value; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description("The serial number of the chassis for the virtual computer system.\nThis is a read-" + - "only property, but it can be changed using the ModifyVirtualSystem method of the" + - " Msvm_VirtualSystemManagementService class.")] - public string ChassisSerialNumber { - get { - return ((string)(curObj["ChassisSerialNumber"])); - } - set { - curObj["ChassisSerialNumber"] = value; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - } - - [Browsable(false)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public bool IsCreationTimeNull { - get { - if ((curObj["CreationTime"] == null)) { - return true; - } - else { - return false; - } - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [TypeConverter(typeof(WMIValueTypeConverter))] - public System.DateTime CreationTime { - get { - if ((curObj["CreationTime"] != null)) { - return ToDateTime(((string)(curObj["CreationTime"]))); - } - else { - return System.DateTime.MinValue; - } - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public string Description { - get { - return ((string)(curObj["Description"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public string ElementName { - get { - return ((string)(curObj["ElementName"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public string InstanceID { - get { - return ((string)(curObj["InstanceID"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description("A free-form string containing notes for the system.\nThis is a read-only property," + - " but it can be changed using the ModifyVirtualSystem method of the Msvm_VirtualS" + - "ystemManagementService class.")] - public string Notes { - get { - return ((string)(curObj["Notes"])); - } - set { - curObj["Notes"] = value; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description(@"For non-uniform memory access (NUMA)-capable systems, this is the list of NUMA nodes on which the virtual machine is to be run. -This is a read-only property, but it can be changed using the ModifyVirtualSystem method of the Msvm_VirtualSystemManagementService class.")] - public ushort[] NumaNodeList { - get { - return ((ushort[])(curObj["NumaNodeList"])); - } - set { - curObj["NumaNodeList"] = value; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - } - - [Browsable(false)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public bool IsNumaNodesAreRequiredNull { - get { - if ((curObj["NumaNodesAreRequired"] == null)) { - return true; - } - else { - return false; - } - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description(@"For non-uniform memory access (NUMA)-capable systems, this value indicates whether the nodes specified in NumaNodeList are required or preferred. If this value is TRUE (the nodes are required), the virtual machine will fail to start if there are not enough resources available on the specified NUMA nodes. -This is a read-only property, but it can be changed using the ModifyVirtualSystem method of the Msvm_VirtualSystemManagementService class.")] - [TypeConverter(typeof(WMIValueTypeConverter))] - public bool NumaNodesAreRequired { - get { - if ((curObj["NumaNodesAreRequired"] == null)) { - return System.Convert.ToBoolean(0); - } - return ((bool)(curObj["NumaNodesAreRequired"])); - } - set { - curObj["NumaNodesAreRequired"] = value; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public string OtherVirtualSystemType { - get { - return ((string)(curObj["OtherVirtualSystemType"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [Description("The object path for the snapshot Msvm_VirtualSystemSettingData from which this ob" + - "ject is based. This property will be NULL if this object is not based off a snap" + - "shot.")] - public string Parent { - get { - return ((string)(curObj["Parent"])); - } - } - - [Browsable(false)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public bool IsSettingTypeNull { - get { - if ((curObj["SettingType"] == null)) { - return true; - } - else { - return false; - } - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [TypeConverter(typeof(WMIValueTypeConverter))] - public ushort SettingType { - get { - if ((curObj["SettingType"] == null)) { - return System.Convert.ToUInt16(0); - } - return ((ushort)(curObj["SettingType"])); - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public string SystemName { - get { - return ((string)(curObj["SystemName"])); - } - } - - [Browsable(false)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public bool IsVirtualSystemTypeNull { - get { - if ((curObj["VirtualSystemType"] == null)) { - return true; - } - else { - return false; - } - } - } - - [Browsable(true)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - [TypeConverter(typeof(WMIValueTypeConverter))] - public ushort VirtualSystemType { - get { - if ((curObj["VirtualSystemType"] == null)) { - return System.Convert.ToUInt16(0); - } - return ((ushort)(curObj["VirtualSystemType"])); - } - } - - private bool CheckIfProperClass(System.Management.ManagementScope mgmtScope, System.Management.ManagementPath path, System.Management.ObjectGetOptions OptionsParam) { - if (((path != null) - && (string.Compare(path.ClassName, this.ManagementClassName, true, System.Globalization.CultureInfo.InvariantCulture) == 0))) { - return true; - } - else { - return CheckIfProperClass(new System.Management.ManagementObject(mgmtScope, path, OptionsParam)); - } - } - - private bool CheckIfProperClass(System.Management.ManagementBaseObject theObj) { - if (((theObj != null) - && (string.Compare(((string)(theObj["__CLASS"])), this.ManagementClassName, true, System.Globalization.CultureInfo.InvariantCulture) == 0))) { - return true; - } - else { - System.Array parentClasses = ((System.Array)(theObj["__DERIVATION"])); - if ((parentClasses != null)) { - int count = 0; - for (count = 0; (count < parentClasses.Length); count = (count + 1)) { - if ((string.Compare(((string)(parentClasses.GetValue(count))), this.ManagementClassName, true, System.Globalization.CultureInfo.InvariantCulture) == 0)) { - return true; - } - } - } - } - return false; - } - - private bool ShouldSerializeAutoActivate() { - if ((this.IsAutoActivateNull == false)) { - return true; - } - return false; - } - - private void ResetBaseBoardSerialNumber() { - curObj["BaseBoardSerialNumber"] = null; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - - private void ResetBIOSGUID() { - curObj["BIOSGUID"] = null; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - - private bool ShouldSerializeBIOSNumLock() { - if ((this.IsBIOSNumLockNull == false)) { - return true; - } - return false; - } - - private void ResetBIOSNumLock() { - curObj["BIOSNumLock"] = null; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - - private void ResetBIOSSerialNumber() { - curObj["BIOSSerialNumber"] = null; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - - private void ResetBootOrder() { - curObj["BootOrder"] = null; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - - private void ResetChassisAssetTag() { - curObj["ChassisAssetTag"] = null; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - - private void ResetChassisSerialNumber() { - curObj["ChassisSerialNumber"] = null; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - - // Converts a given datetime in DMTF format to System.DateTime object. - static System.DateTime ToDateTime(string dmtfDate) { - System.DateTime initializer = System.DateTime.MinValue; - int year = initializer.Year; - int month = initializer.Month; - int day = initializer.Day; - int hour = initializer.Hour; - int minute = initializer.Minute; - int second = initializer.Second; - long ticks = 0; - string dmtf = dmtfDate; - System.DateTime datetime = System.DateTime.MinValue; - string tempString = string.Empty; - if ((dmtf == null)) { - throw new System.ArgumentOutOfRangeException(); - } - if ((dmtf.Length == 0)) { - throw new System.ArgumentOutOfRangeException(); - } - if ((dmtf.Length != 25)) { - throw new System.ArgumentOutOfRangeException(); - } - try { - tempString = dmtf.Substring(0, 4); - if (("****" != tempString)) { - year = int.Parse(tempString); - } - tempString = dmtf.Substring(4, 2); - if (("**" != tempString)) { - month = int.Parse(tempString); - } - tempString = dmtf.Substring(6, 2); - if (("**" != tempString)) { - day = int.Parse(tempString); - } - tempString = dmtf.Substring(8, 2); - if (("**" != tempString)) { - hour = int.Parse(tempString); - } - tempString = dmtf.Substring(10, 2); - if (("**" != tempString)) { - minute = int.Parse(tempString); - } - tempString = dmtf.Substring(12, 2); - if (("**" != tempString)) { - second = int.Parse(tempString); - } - tempString = dmtf.Substring(15, 6); - if (("******" != tempString)) { - ticks = (long.Parse(tempString) * ((long)((System.TimeSpan.TicksPerMillisecond / 1000)))); - } - if (((((((((year < 0) - || (month < 0)) - || (day < 0)) - || (hour < 0)) - || (minute < 0)) - || (minute < 0)) - || (second < 0)) - || (ticks < 0))) { - throw new System.ArgumentOutOfRangeException(); - } - } - catch (System.Exception e) { - throw new System.ArgumentOutOfRangeException(null, e.Message); - } - datetime = new System.DateTime(year, month, day, hour, minute, second, 0); - datetime = datetime.AddTicks(ticks); - System.TimeSpan tickOffset = System.TimeZone.CurrentTimeZone.GetUtcOffset(datetime); - int UTCOffset = 0; - int OffsetToBeAdjusted = 0; - long OffsetMins = ((long)((tickOffset.Ticks / System.TimeSpan.TicksPerMinute))); - tempString = dmtf.Substring(22, 3); - if ((tempString != "******")) { - tempString = dmtf.Substring(21, 4); - try { - UTCOffset = int.Parse(tempString); - } - catch (System.Exception e) { - throw new System.ArgumentOutOfRangeException(null, e.Message); - } - OffsetToBeAdjusted = ((int)((OffsetMins - UTCOffset))); - datetime = datetime.AddMinutes(((double)(OffsetToBeAdjusted))); - } - return datetime; - } - - // Converts a given System.DateTime object to DMTF datetime format. - static string ToDmtfDateTime(System.DateTime date) { - string utcString = string.Empty; - System.TimeSpan tickOffset = System.TimeZone.CurrentTimeZone.GetUtcOffset(date); - long OffsetMins = ((long)((tickOffset.Ticks / System.TimeSpan.TicksPerMinute))); - if ((System.Math.Abs(OffsetMins) > 999)) { - date = date.ToUniversalTime(); - utcString = "+000"; - } - else { - if ((tickOffset.Ticks >= 0)) { - utcString = string.Concat("+", ((long)((tickOffset.Ticks / System.TimeSpan.TicksPerMinute))).ToString().PadLeft(3, '0')); - } - else { - string strTemp = ((long)(OffsetMins)).ToString(); - utcString = string.Concat("-", strTemp.Substring(1, (strTemp.Length - 1)).PadLeft(3, '0')); - } - } - string dmtfDateTime = ((int)(date.Year)).ToString().PadLeft(4, '0'); - dmtfDateTime = string.Concat(dmtfDateTime, ((int)(date.Month)).ToString().PadLeft(2, '0')); - dmtfDateTime = string.Concat(dmtfDateTime, ((int)(date.Day)).ToString().PadLeft(2, '0')); - dmtfDateTime = string.Concat(dmtfDateTime, ((int)(date.Hour)).ToString().PadLeft(2, '0')); - dmtfDateTime = string.Concat(dmtfDateTime, ((int)(date.Minute)).ToString().PadLeft(2, '0')); - dmtfDateTime = string.Concat(dmtfDateTime, ((int)(date.Second)).ToString().PadLeft(2, '0')); - dmtfDateTime = string.Concat(dmtfDateTime, "."); - System.DateTime dtTemp = new System.DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, date.Second, 0); - long microsec = ((long)((((date.Ticks - dtTemp.Ticks) - * 1000) - / System.TimeSpan.TicksPerMillisecond))); - string strMicrosec = ((long)(microsec)).ToString(); - if ((strMicrosec.Length > 6)) { - strMicrosec = strMicrosec.Substring(0, 6); - } - dmtfDateTime = string.Concat(dmtfDateTime, strMicrosec.PadLeft(6, '0')); - dmtfDateTime = string.Concat(dmtfDateTime, utcString); - return dmtfDateTime; - } - - private bool ShouldSerializeCreationTime() { - if ((this.IsCreationTimeNull == false)) { - return true; - } - return false; - } - - private void ResetNotes() { - curObj["Notes"] = null; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - - private void ResetNumaNodeList() { - curObj["NumaNodeList"] = null; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - - private bool ShouldSerializeNumaNodesAreRequired() { - if ((this.IsNumaNodesAreRequiredNull == false)) { - return true; - } - return false; - } - - private void ResetNumaNodesAreRequired() { - curObj["NumaNodesAreRequired"] = null; - if (((isEmbedded == false) - && (AutoCommitProp == true))) { - PrivateLateBoundObject.Put(); - } - } - - private bool ShouldSerializeSettingType() { - if ((this.IsSettingTypeNull == false)) { - return true; - } - return false; - } - - private bool ShouldSerializeVirtualSystemType() { - if ((this.IsVirtualSystemTypeNull == false)) { - return true; - } - return false; - } - - [Browsable(true)] - public void CommitObject() { - if ((isEmbedded == false)) { - PrivateLateBoundObject.Put(); - } - } - - [Browsable(true)] - public void CommitObject(System.Management.PutOptions putOptions) { - if ((isEmbedded == false)) { - PrivateLateBoundObject.Put(putOptions); - } - } - - private void Initialize() { - AutoCommitProp = true; - isEmbedded = false; - } - - private static string ConstructPath(string keyInstanceID) { - string strPath = "ROOT\\virtualization:Msvm_VirtualSystemSettingData"; - strPath = string.Concat(strPath, string.Concat(".InstanceID=", string.Concat("\"", string.Concat(keyInstanceID, "\"")))); - return strPath; - } - - private void InitializeObject(System.Management.ManagementScope mgmtScope, System.Management.ManagementPath path, System.Management.ObjectGetOptions getOptions) { - Initialize(); - if ((path != null)) { - if ((CheckIfProperClass(mgmtScope, path, getOptions) != true)) { - throw new System.ArgumentException("Class name does not match."); - } - } - PrivateLateBoundObject = new System.Management.ManagementObject(mgmtScope, path, getOptions); - PrivateSystemProperties = new ManagementSystemProperties(PrivateLateBoundObject); - curObj = PrivateLateBoundObject; - } - - // Different overloads of GetInstances() help in enumerating instances of the WMI class. - public static VirtualSystemSettingDataCollection GetInstances() { - return GetInstances(null, null, null); - } - - public static VirtualSystemSettingDataCollection GetInstances(string condition) { - return GetInstances(null, condition, null); - } - - public static VirtualSystemSettingDataCollection GetInstances(string[] selectedProperties) { - return GetInstances(null, null, selectedProperties); - } - - public static VirtualSystemSettingDataCollection GetInstances(string condition, string[] selectedProperties) { - return GetInstances(null, condition, selectedProperties); - } - - public static VirtualSystemSettingDataCollection GetInstances(System.Management.ManagementScope mgmtScope, System.Management.EnumerationOptions enumOptions) { - if ((mgmtScope == null)) { - if ((statMgmtScope == null)) { - mgmtScope = new System.Management.ManagementScope(); - mgmtScope.Path.NamespacePath = "root\\virtualization"; - } - else { - mgmtScope = statMgmtScope; - } - } - System.Management.ManagementPath pathObj = new System.Management.ManagementPath(); - pathObj.ClassName = "Msvm_VirtualSystemSettingData"; - pathObj.NamespacePath = "root\\virtualization"; - System.Management.ManagementClass clsObject = new System.Management.ManagementClass(mgmtScope, pathObj, null); - if ((enumOptions == null)) { - enumOptions = new System.Management.EnumerationOptions(); - enumOptions.EnsureLocatable = true; - } - return new VirtualSystemSettingDataCollection(clsObject.GetInstances(enumOptions)); - } - - public static VirtualSystemSettingDataCollection GetInstances(System.Management.ManagementScope mgmtScope, string condition) { - return GetInstances(mgmtScope, condition, null); - } - - public static VirtualSystemSettingDataCollection GetInstances(System.Management.ManagementScope mgmtScope, string[] selectedProperties) { - return GetInstances(mgmtScope, null, selectedProperties); - } - - public static VirtualSystemSettingDataCollection GetInstances(System.Management.ManagementScope mgmtScope, string condition, string[] selectedProperties) { - if ((mgmtScope == null)) { - if ((statMgmtScope == null)) { - mgmtScope = new System.Management.ManagementScope(); - mgmtScope.Path.NamespacePath = "root\\virtualization"; - } - else { - mgmtScope = statMgmtScope; - } - } - System.Management.ManagementObjectSearcher ObjectSearcher = new System.Management.ManagementObjectSearcher(mgmtScope, new SelectQuery("Msvm_VirtualSystemSettingData", condition, selectedProperties)); - System.Management.EnumerationOptions enumOptions = new System.Management.EnumerationOptions(); - enumOptions.EnsureLocatable = true; - ObjectSearcher.Options = enumOptions; - return new VirtualSystemSettingDataCollection(ObjectSearcher.Get()); - } - - [Browsable(true)] - public static VirtualSystemSettingData CreateInstance() { - System.Management.ManagementScope mgmtScope = null; - if ((statMgmtScope == null)) { - mgmtScope = new System.Management.ManagementScope(); - mgmtScope.Path.NamespacePath = CreatedWmiNamespace; - } - else { - mgmtScope = statMgmtScope; - } - System.Management.ManagementPath mgmtPath = new System.Management.ManagementPath(CreatedClassName); - System.Management.ManagementClass tmpMgmtClass = new System.Management.ManagementClass(mgmtScope, mgmtPath, null); - return new VirtualSystemSettingData(tmpMgmtClass.CreateInstance()); - } - - [Browsable(true)] - public void Delete() { - PrivateLateBoundObject.Delete(); - } - - // Enumerator implementation for enumerating instances of the class. - public class VirtualSystemSettingDataCollection : object, ICollection { - - private ManagementObjectCollection privColObj; - - public VirtualSystemSettingDataCollection(ManagementObjectCollection objCollection) { - privColObj = objCollection; - } - - public virtual int Count { - get { - return privColObj.Count; - } - } - - public virtual bool IsSynchronized { - get { - return privColObj.IsSynchronized; - } - } - - public virtual object SyncRoot { - get { - return this; - } - } - - public virtual void CopyTo(System.Array array, int index) { - privColObj.CopyTo(array, index); - int nCtr; - for (nCtr = 0; (nCtr < array.Length); nCtr = (nCtr + 1)) { - array.SetValue(new VirtualSystemSettingData(((System.Management.ManagementObject)(array.GetValue(nCtr)))), nCtr); - } - } - - public virtual System.Collections.IEnumerator GetEnumerator() { - return new VirtualSystemSettingDataEnumerator(privColObj.GetEnumerator()); - } - - public class VirtualSystemSettingDataEnumerator : object, System.Collections.IEnumerator { - - private ManagementObjectCollection.ManagementObjectEnumerator privObjEnum; - - public VirtualSystemSettingDataEnumerator(ManagementObjectCollection.ManagementObjectEnumerator objEnum) { - privObjEnum = objEnum; - } - - public virtual object Current { - get { - return new VirtualSystemSettingData(((System.Management.ManagementObject)(privObjEnum.Current))); - } - } - - public virtual bool MoveNext() { - return privObjEnum.MoveNext(); - } - - public virtual void Reset() { - privObjEnum.Reset(); - } - } - } - - // TypeConverter to handle null values for ValueType properties - public class WMIValueTypeConverter : TypeConverter { - - private TypeConverter baseConverter; - - private System.Type baseType; - - public WMIValueTypeConverter(System.Type inBaseType) { - baseConverter = TypeDescriptor.GetConverter(inBaseType); - baseType = inBaseType; - } - - public override bool CanConvertFrom(System.ComponentModel.ITypeDescriptorContext context, System.Type srcType) { - return baseConverter.CanConvertFrom(context, srcType); - } - - public override bool CanConvertTo(System.ComponentModel.ITypeDescriptorContext context, System.Type destinationType) { - return baseConverter.CanConvertTo(context, destinationType); - } - - public override object ConvertFrom(System.ComponentModel.ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value) { - return baseConverter.ConvertFrom(context, culture, value); - } - - public override object CreateInstance(System.ComponentModel.ITypeDescriptorContext context, System.Collections.IDictionary dictionary) { - return baseConverter.CreateInstance(context, dictionary); - } - - public override bool GetCreateInstanceSupported(System.ComponentModel.ITypeDescriptorContext context) { - return baseConverter.GetCreateInstanceSupported(context); - } - - public override PropertyDescriptorCollection GetProperties(System.ComponentModel.ITypeDescriptorContext context, object value, System.Attribute[] attributeVar) { - return baseConverter.GetProperties(context, value, attributeVar); - } - - public override bool GetPropertiesSupported(System.ComponentModel.ITypeDescriptorContext context) { - return baseConverter.GetPropertiesSupported(context); - } - - public override System.ComponentModel.TypeConverter.StandardValuesCollection GetStandardValues(System.ComponentModel.ITypeDescriptorContext context) { - return baseConverter.GetStandardValues(context); - } - - public override bool GetStandardValuesExclusive(System.ComponentModel.ITypeDescriptorContext context) { - return baseConverter.GetStandardValuesExclusive(context); - } - - public override bool GetStandardValuesSupported(System.ComponentModel.ITypeDescriptorContext context) { - return baseConverter.GetStandardValuesSupported(context); - } - - public override object ConvertTo(System.ComponentModel.ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value, System.Type destinationType) { - if ((baseType.BaseType == typeof(System.Enum))) { - if ((value.GetType() == destinationType)) { - return value; - } - if ((((value == null) - && (context != null)) - && (context.PropertyDescriptor.ShouldSerializeValue(context.Instance) == false))) { - return "NULL_ENUM_VALUE" ; - } - return baseConverter.ConvertTo(context, culture, value, destinationType); - } - if (((baseType == typeof(bool)) - && (baseType.BaseType == typeof(System.ValueType)))) { - if ((((value == null) - && (context != null)) - && (context.PropertyDescriptor.ShouldSerializeValue(context.Instance) == false))) { - return ""; - } - return baseConverter.ConvertTo(context, culture, value, destinationType); - } - if (((context != null) - && (context.PropertyDescriptor.ShouldSerializeValue(context.Instance) == false))) { - return ""; - } - return baseConverter.ConvertTo(context, culture, value, destinationType); - } - } - - // Embedded class to represent WMI system Properties. - [TypeConverter(typeof(System.ComponentModel.ExpandableObjectConverter))] - public class ManagementSystemProperties { - - private System.Management.ManagementBaseObject PrivateLateBoundObject; - - public ManagementSystemProperties(System.Management.ManagementBaseObject ManagedObject) { - PrivateLateBoundObject = ManagedObject; - } - - [Browsable(true)] - public int GENUS { - get { - return ((int)(PrivateLateBoundObject["__GENUS"])); - } - } - - [Browsable(true)] - public string CLASS { - get { - return ((string)(PrivateLateBoundObject["__CLASS"])); - } - } - - [Browsable(true)] - public string SUPERCLASS { - get { - return ((string)(PrivateLateBoundObject["__SUPERCLASS"])); - } - } - - [Browsable(true)] - public string DYNASTY { - get { - return ((string)(PrivateLateBoundObject["__DYNASTY"])); - } - } - - [Browsable(true)] - public string RELPATH { - get { - return ((string)(PrivateLateBoundObject["__RELPATH"])); - } - } - - [Browsable(true)] - public int PROPERTY_COUNT { - get { - return ((int)(PrivateLateBoundObject["__PROPERTY_COUNT"])); - } - } - - [Browsable(true)] - public string[] DERIVATION { - get { - return ((string[])(PrivateLateBoundObject["__DERIVATION"])); - } - } - - [Browsable(true)] - public string SERVER { - get { - return ((string)(PrivateLateBoundObject["__SERVER"])); - } - } - - [Browsable(true)] - public string NAMESPACE { - get { - return ((string)(PrivateLateBoundObject["__NAMESPACE"])); - } - } - - [Browsable(true)] - public string PATH { - get { - return ((string)(PrivateLateBoundObject["__PATH"])); - } - } - } - } -}