//----------------------------------------------------------------------------
//
// Copyright (c) Intel Corporation, 2003 - 2012 All Rights Reserved.
//
// File: CIM_SystemComponent.cs
//
// Contents: CIM_SystemComponent is a specialization of the CIM_Component association that establishes 'part of' relationships between a System and any ManagedSystemElements of which it is composed.
// Use this association with caution when using it instead of a subclass such as SystemDevice or a peer association such as HostedService. This class is very broadly defined, which can lead to erroneous use. For example, Access Points that are dependent on (and hosted on) a System are NOT Components of the System. The System is not made up of any AccessPoint 'parts', which is why a Dependency association, HostedAccessPoint, was defined. Similarly, a PhysicalPackage is not a 'part' of a System, because the physical element exists independently of any internal components, software, and so on. In fact, again, a Dependency relationship is true where a ComputerSystem is Dependent on its packaging, as described by the ComputerSystemPackage association.
// This file was automatically generated from CIM_SystemComponent.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
{
///
///CIM_SystemComponent is a specialization of the CIM_Component association that establishes 'part of' relationships between a System and any ManagedSystemElements of which it is composed.
///Use this association with caution when using it instead of a subclass such as SystemDevice or a peer association such as HostedService. This class is very broadly defined, which can lead to erroneous use. For example, Access Points that are dependent on (and hosted on) a System are NOT Components of the System. The System is not made up of any AccessPoint 'parts', which is why a Dependency association, HostedAccessPoint, was defined. Similarly, a PhysicalPackage is not a 'part' of a System, because the physical element exists independently of any internal components, software, and so on. In fact, again, a Dependency relationship is true where a ComputerSystem is Dependent on its packaging, as described by the ComputerSystemPackage association.
///
[System.SerializableAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_SystemComponent")]
[System.Xml.Serialization.XmlRootAttribute("CIM_SystemComponent", Namespace="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_SystemComponent", IsNullable=false)]
public class CIM_SystemComponent : CIM_Component
{
///
/// Default constructor.
///
public CIM_SystemComponent() :base()
{
}
///
/// Constructor that recieves an xml string for deserialization.
///
/// xml string to deserialize
public CIM_SystemComponent(string xml): base((IWSManClient)null)
{
this.Deserialize(xml);
}
///
/// Constructor which recieves a Ws-Management client object.
///
/// Ws-Management client
public CIM_SystemComponent(IWSManClient client): base(client)
{
}
///
/// Required, The parent System in the Association.
///
[CimField(true, false)]
public override CimReference GroupComponent
{
get
{
string innerXML = this.GetField("GroupComponent")[0];
CimReference epr = new CimReference("GroupComponent", XmlNamespace, innerXML);
return epr;
}
set
{
this.SetOrAddField("GroupComponent",value.Serialize(false));
}
}
///
/// Required, The child element that is a component of a System.
///
[CimField(true, false)]
public override CimReference PartComponent
{
get
{
string innerXML = this.GetField("PartComponent")[0];
CimReference epr = new CimReference("PartComponent", XmlNamespace, innerXML);
return epr;
}
set
{
this.SetOrAddField("PartComponent",value.Serialize(false));
}
}
///
/// Enumerate instances of CIM_SystemComponent class at an endpoint.
///
/// WS-Management client
/// Keys for selecting the instances
/// Collection of CIM_SystemComponent objects
public static new Collection Enumerate(IWSManClient client, CimBase.CimKeys cimKeys)
{
List ret = CimBase.Enumerate(client, cimKeys);
return new Collection(ret);
}
///
/// Enumerate instances of CIM_SystemComponent class at an endpoint.
///
/// WS-Management client
/// Collection of CIM_SystemComponent objects
public static new Collection Enumerate(IWSManClient client)
{
List ret = CimBase.Enumerate(client);
return new Collection(ret);
}
///
/// Delete the instance of CIM_SystemComponent if it is singular.
/// Note: This method will succeed only if a single instance of the class exists.
///
/// WS-Management client
public static new void Delete(IWSManClient client)
{
CimBase.Delete(client);
}
///
/// Represents the keys of the CIM_SystemComponent class.
///
public new class CimKeys : CIM_Component.CimKeys
{
///
/// Required, The parent System in the Association.
///
public virtual CimReference GroupComponent
{
get
{
string innerXML = GetKey("GroupComponent");
CimReference epr = new CimReference("GroupComponent", "http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_SystemComponent", innerXML);
return epr;
}
set
{
SetOrAddKey("GroupComponent", value);
}
}
///
/// Required, The child element that is a component of a System.
///
public virtual CimReference PartComponent
{
get
{
string innerXML = GetKey("PartComponent");
CimReference epr = new CimReference("PartComponent", "http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_SystemComponent", innerXML);
return epr;
}
set
{
SetOrAddKey("PartComponent", value);
}
}
}
}
}