263 lines
8.3 KiB
C#

//----------------------------------------------------------------------------
//
// Copyright (c) Intel Corporation, 2003 - 2012 All Rights Reserved.
//
// File: CIM_SoftwareFeature.cs
//
// Contents: The CIM_SoftwareFeature class defines a particular function or capability of a product or application system. This class captures a level of granularity describing a unit of installation, rather than the units that reflect how the product is built or packaged. The latter detail is captured using a CIM_SoftwareElement class. When a SoftwareFeature can exist on multiple platforms or operating systems (for example, a client component of a three tiered client/server application that runs on Solaris, Windows NT, and Windows 95), the Feature is a collection of all the SoftwareElements for these different platforms. In this case, the users of the model must be aware of this situation since typically they will be interested in a sub-collection of the SoftwareElements required for a particular platform.
// SoftwareFeatures are always defined in the context of a CIM_Product, using the CIM_ProductSoftwareFeature association. Features are delivered through Products. Optionally, SoftwareFeatures from one or more Products can be organized into ApplicationSystems using the CIM_ApplicationSystemSoftwareFeature association.
// This file was automatically generated from CIM_SoftwareFeature.mof
//
//----------------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Text;
using System.Globalization;
using System.Xml.Serialization;
using System.IO;
using Intel.Manageability.WSManagement;
using Intel.Manageability.Cim.Untyped;
namespace Intel.Manageability.Cim.Typed
{
/// <summary>
///The CIM_SoftwareFeature class defines a particular function or capability of a product or application system. This class captures a level of granularity describing a unit of installation, rather than the units that reflect how the product is built or packaged. The latter detail is captured using a CIM_SoftwareElement class. When a SoftwareFeature can exist on multiple platforms or operating systems (for example, a client component of a three tiered client/server application that runs on Solaris, Windows NT, and Windows 95), the Feature is a collection of all the SoftwareElements for these different platforms. In this case, the users of the model must be aware of this situation since typically they will be interested in a sub-collection of the SoftwareElements required for a particular platform.
///SoftwareFeatures are always defined in the context of a CIM_Product, using the CIM_ProductSoftwareFeature association. Features are delivered through Products. Optionally, SoftwareFeatures from one or more Products can be organized into ApplicationSystems using the CIM_ApplicationSystemSoftwareFeature association.
/// </summary>
[System.SerializableAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_SoftwareFeature")]
[System.Xml.Serialization.XmlRootAttribute("CIM_SoftwareFeature", Namespace="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_SoftwareFeature", IsNullable=false)]
public class CIM_SoftwareFeature : CIM_LogicalElement
{
/// <summary>
/// Default constructor.
/// </summary>
public CIM_SoftwareFeature() :base()
{
}
/// <summary>
/// Constructor that recieves an xml string for deserialization.
/// </summary>
/// <param name="xml">xml string to deserialize</param>
public CIM_SoftwareFeature(string xml): base((IWSManClient)null)
{
this.Deserialize(xml);
}
/// <summary>
/// Constructor which recieves a Ws-Management client object.
/// </summary>
/// <param name="client">Ws-Management client</param>
public CIM_SoftwareFeature(IWSManClient client): base(client)
{
}
/// <summary>
/// Key, Required, The scoping Product's identification.
/// </summary>
[CimField(true, true)]
public virtual string IdentifyingNumber
{
get
{
return this.GetField("IdentifyingNumber")[0];
}
set
{
this.SetOrAddField("IdentifyingNumber",value);
}
}
/// <summary>
/// Key, Required, The Name property defines the unique label by which the SoftwareFeature is identified. This label should be a human-readable name that uniquely identifies the element in the context of the element's namespace.
/// </summary>
[CimField(true, true)]
public override string Name
{
get
{
return this.GetField("Name")[0];
}
set
{
this.SetOrAddField("Name",value);
}
}
/// <summary>
/// Key, Required, The scoping Product's commonly used name.
/// </summary>
[CimField(true, true)]
public virtual string ProductName
{
get
{
return this.GetField("ProductName")[0];
}
set
{
this.SetOrAddField("ProductName",value);
}
}
/// <summary>
/// Key, Required, The scoping Product's supplier.
/// </summary>
[CimField(true, true)]
public virtual string Vendor
{
get
{
return this.GetField("Vendor")[0];
}
set
{
this.SetOrAddField("Vendor",value);
}
}
/// <summary>
/// Key, Required, The scoping Product's version.
/// </summary>
[CimField(true, true)]
public virtual string Version
{
get
{
return this.GetField("Version")[0];
}
set
{
this.SetOrAddField("Version",value);
}
}
/// <summary>
/// Enumerate instances of CIM_SoftwareFeature class at an endpoint.
/// </summary>
/// <param name="client">WS-Management client</param>
/// <param name="cimKeys">Keys for selecting the instances</param>
/// <returns>Collection of CIM_SoftwareFeature objects</returns>
public static new Collection<CIM_SoftwareFeature> Enumerate(IWSManClient client, CimBase.CimKeys cimKeys)
{
List<CIM_SoftwareFeature> ret = CimBase.Enumerate<CIM_SoftwareFeature>(client, cimKeys);
return new Collection<CIM_SoftwareFeature>(ret);
}
/// <summary>
/// Enumerate instances of CIM_SoftwareFeature class at an endpoint.
/// </summary>
/// <param name="client">WS-Management client</param>
/// <returns>Collection of CIM_SoftwareFeature objects</returns>
public static new Collection<CIM_SoftwareFeature> Enumerate(IWSManClient client)
{
List<CIM_SoftwareFeature> ret = CimBase.Enumerate<CIM_SoftwareFeature>(client);
return new Collection<CIM_SoftwareFeature>(ret);
}
/// <summary>
/// Delete the instance of CIM_SoftwareFeature if it is singular.
/// Note: This method will succeed only if a single instance of the class exists.
/// </summary>
/// <param name="client">WS-Management client</param>
public static new void Delete(IWSManClient client)
{
CimBase.Delete<CIM_SoftwareFeature>(client);
}
/// <summary>
/// Represents the keys of the CIM_SoftwareFeature class.
/// </summary>
public new class CimKeys : CIM_LogicalElement.CimKeys
{
/// <summary>
/// Key, Required, The scoping Product's identification.
/// </summary>
public virtual string IdentifyingNumber
{
get
{
return GetKey("IdentifyingNumber");
}
set
{
SetOrAddKey("IdentifyingNumber", value);
}
}
/// <summary>
/// Key, Required, The Name property defines the unique label by which the SoftwareFeature is identified. This label should be a human-readable name that uniquely identifies the element in the context of the element's namespace.
/// </summary>
public virtual string Name
{
get
{
return GetKey("Name");
}
set
{
SetOrAddKey("Name", value);
}
}
/// <summary>
/// Key, Required, The scoping Product's commonly used name.
/// </summary>
public virtual string ProductName
{
get
{
return GetKey("ProductName");
}
set
{
SetOrAddKey("ProductName", value);
}
}
/// <summary>
/// Key, Required, The scoping Product's supplier.
/// </summary>
public virtual string Vendor
{
get
{
return GetKey("Vendor");
}
set
{
SetOrAddKey("Vendor", value);
}
}
/// <summary>
/// Key, Required, The scoping Product's version.
/// </summary>
public virtual string Version
{
get
{
return GetKey("Version");
}
set
{
SetOrAddKey("Version", value);
}
}
}
}
}