Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

2741 lines
99 KiB

//**************************************************************************
//*
//* Copyright (c) 2000 - 2002 Microsoft Corporation
//*
//* File: ClusWMI.mof
//*
//**************************************************************************
#pragma namespace("\\\\.\\ROOT")
instance of __NameSpace
{
Name = "MSCluster" ;
};
#pragma namespace ("\\\\.\\Root\\MSCluster")
instance of __Win32Provider as $InstanceProv
{
Name = "MS_CLUSTER_PROVIDER" ;
CLSID = "{598065EA-EDC9-4b2c-913B-5104D04D098A}" ;
ImpersonationLevel = 1 ;
PerUserInitialization = TRUE ; // This insures that we get the most accurate information.
Hostingmodel="NetworkServicehost";
};
instance of __Win32Provider as $EventProv
{
Name = "Cluster Event Provider" ;
CLSID = "{92863246-4EDE-4eff-B606-79C1971DB230}" ;
ImpersonationLevel = 1 ;
PerUserInitialization = TRUE ; // This insures that we get the most accurate information.
Hostingmodel="NetworkServicehost";
};
instance of __Win32Provider as $ClassProv
{
Name = "MS_CLUSTER_CLASS_PROVIDER" ;
CLSID = "{6A52C339-DCB0-4682-8B1B-02DE2C436A6D}" ;
ImpersonationLevel = 1 ;
PerUserInitialization = TRUE ; // This insures that we get the most accurate information.
Hostingmodel="NetworkServicehost";
};
// ==================================================================
// CIM_ManagedSystemElement
// ==================================================================
[Abstract ,
Locale (0x409) : ToInstance ,
Description (
"CIM_ManagedSystemElement is the base class for the System Element "
"hierarchy. Membership Criteria: Any distinguishable component of a "
"System is a candidate for inclusion in this class. Examples: software "
"components, such as files; and devices, such as disk drives and "
"controllers, and physical components such as chips and cards."
),
UUID ("{C9D86C80-ED46-4377-8360-FC9B8A9F0C64}")
]
class CIM_ManagedSystemElement
{
[MaxLen (64) ,
Description (
"The Caption property is a short textual description (one-line string) "
"of the object."
) ]
string Caption ;
[Description (
"The Description property provides a textual description of the object."
) ]
string Description ;
[Description (
"A datetime value indicating when the object was installed. A lack of a "
"value does not indicate that the object is not installed."
) ,
MappingStrings { "MIF.DMTF|ComponentID|001.5" }
]
datetime InstallDate ;
[MaxLen (256) ,
Description (
"The Name property defines the label by which the object is known. When "
"subclassed, the Name property can be overridden to be a Key property."
) ]
string Name ;
[MaxLen (10) ,
Description (
"A string indicating the current status of the object. Various "
"operational and non-operational statuses are defined. Operational "
"statuses are \"OK\", \"Degraded\", \"Stressed\" and \"Pred Fail\". "
"\"Stressed\" indicates that the Element is functioning, but needs "
"attention. Examples of \"Stressed\" states are overload, overheated, "
"etc. The condition \"Pred Fail\" (failure predicted) indicates that an "
"Element is functioning properly but predicting a failure in the near "
"future. An example is a SMART-enabled hard drive. Non-operational "
"statuses can also be specified. These are \"Error\", \"NonRecover\", "
"\"Starting\", \"Stopping\" and \"Service\". \"NonRecover\" indicates "
"that a non-recoverable error has occurred. \"Service\" describes an "
"Element being configured, maintained or cleaned, or otherwise "
"administered. This status could apply during mirror-resilvering of a "
"disk, reload of a user permissions list, or other administrative task. "
"Not all such work is on-line, yet the Element is neither \"OK\" nor in "
"one of the other states."
) ,
ValueMap {
"OK", "Error", "Degraded", "Unknown", "Pred Fail", "Starting",
"Stopping", "Service", "Stressed", "NonRecover"
} ]
string Status ;
}; //*** class CIM_ManagedSystemElement
// ==================================================================
// CIM_LogicalElement
// ==================================================================
[Abstract ,
Locale (0x409) : ToInstance ,
Description (
"CIM_LogicalElement is a base class for all the components of a System "
"that represent abstract system components, such as Files, Processes, or "
"system capabilities in the form of Logical Devices."
),
UUID ("{F6D42C79-DC86-4847-80A7-36CA4A5E36C8}")
]
class CIM_LogicalElement : CIM_ManagedSystemElement
{
}; //*** class CIM_LogicalElement
// ==================================================================
// CIM_System
// ==================================================================
[Abstract ,
Locale (0x409) : ToInstance ,
Description (
"A CIM_System is a LogicalElement that aggregates an enumerable set of "
"Managed System Elements. The aggregation operates as a functional whole."
" Within any particular subclass of System, there is a well-defined list "
"of Managed System Element classes whose instances must be aggregated."
),
UUID ("{A4D42690-0286-4369-B95C-7169809CC3EC}")
]
class CIM_System : CIM_LogicalElement
{
[CIM_KEY ,
MaxLen (256) ,
Description (
"CreationClassName indicates the name of the class or the subclass used "
"in the creation of an instance. When used with the other key properties "
"of this class, this property allows all instances of this class and its "
"subclasses to be uniquely identified."
) ]
string CreationClassName ;
[Key ,
MaxLen (256) ,
Override ("Name") ,
Description (
"The inherited Name serves as key of a System instance in an enterprise "
"environment."
) ]
string Name ;
[MaxLen (64) ,
Description (
"The System object and its derivatives are Top Level Objects of CIM. "
"They provide the scope for numerous components. Having unique System "
"keys is required. A heuristic can be defined in individual System "
"subclasses to attempt to always generate the same System Name Key. The "
"NameFormat property identifies how the System name was generated, using "
"the subclass' heuristic."
) ]
string NameFormat ;
[MaxLen (256) ,
Description (
"A string that provides information on how the primary system owner can "
"be reached (e.g. phone number, email address, ...)."
) ,
MappingStrings { "MIF.DMTF|General Information|001.3" }
]
string PrimaryOwnerContact ;
[MaxLen (64) ,
Description ("The name of the primary system owner.") ,
MappingStrings { "MIF.DMTF|General Information|001.4" }
]
string PrimaryOwnerName ;
[Description (
"An array (bag) of strings that specify the roles this System plays in "
"the IT-environment. Subclasses of System may override this property to "
"define explicit Roles values. Alternately, a Working Group may describe "
"the heuristics, conventions and guidelines for specifying Roles. For "
"example, for an instance of a networking system, the Roles property "
"might contain the string, 'Switch' or 'Bridge'."
) ]
string Roles[] ;
}; //*** class CIM_System
// ===================================================================
// CIM_ComputerSystem
// ===================================================================
[Abstract ,
Locale (0x409) : ToInstance ,
Description (
"A class derived from System that is a special collection of "
"ManagedSystemElements. This collection provides compute capabilities "
"and serves as aggregation point to associate one or more of the "
"following elements: FileSystem, OperatingSystem, Processor and Memory ("
"Volatile and/or NonVolatile Storage)."
),
UUID ("{DB2EBD10-5113-44a1-96E6-52A4FB4210E1}")
]
class CIM_ComputerSystem : CIM_System
{
[Override ("NameFormat") ,
Description (
"The ComputerSystem object and its derivatives are Top Level Objects of "
"CIM. They provide the scope for numerous components. Having unique "
"System keys is required. A heuristic is defined to create the "
"ComputerSystem Name to attempt to always generate the same Name, "
"independent of discovery protocol. This prevents inventory and "
"management problems where the same asset or entity is discovered "
"multiple times, but can not be resolved to a single object. Use of the "
"heuristic is optional, but recommended.\n\nThe NameFormat property "
"identifies how the ComputerSystem Name is generated, using a heuristic. "
"The heuristic is outlined, in detail, in the CIM V2 System Model spec. "
"It assumes that the documented rules are traversed in order, to "
"determine and assign a Name. The NameFormat Values list defines the "
"precedence order for assigning the ComputerSystem Name. Several rules "
"do map to the same Value.\n\nNote that the ComputerSystem Name "
"calculated using the heuristic is the System's key value. Other names "
"can be assigned and used for the ComputerSystem, that better suit a "
"business, using Aliases."
) ,
ValueMap {
"Other", "IP", "Dial", "HID", "NWA", "HWA", "X25", "ISDN", "IPX",
"DCC", "ICD", "E.164", "SNA", "OID/OSI"
} ]
string NameFormat ;
[MaxLen (256) ,
ArrayType ("Indexed") ,
Description (
"OtherIdentifyingInfo captures additional data, beyond System Name "
"information, that could be used to identify a ComputerSystem. One "
"example would be to hold the Fibre Channel World-Wide Name (WWN) of a "
"node. Note that if only the Fibre Channel name is available and is "
"unique (able to be used as the System key), then this property would be "
"NULL and the WWN would become the System key, its data placed in the "
"Name property."
) ,
ModelCorrespondence { "CIM_ComputerSystem.IdentifyingDescriptions" }
]
string OtherIdentifyingInfo[] ;
[ArrayType ("Indexed") ,
Description (
"An array of free-form strings providing explanations and details behind "
"the entries in the OtherIdentifyingInfo array. Note, each entry of this "
"array is related to the entry in OtherIdentifyingInfo that is located "
"at the same index."
) ,
ModelCorrespondence { "CIM_ComputerSystem.OtherIdentifyingInfo" }
]
string IdentifyingDescriptions[] ;
[Description (
"Enumeration indicating whether the ComputerSystem is a special-purpose "
"System (ie, dedicated to a particular use), versus being 'general "
"purpose'. For example, one could specify that the System is dedicated "
"to \"Print\" (value=11) or acts as a \"Hub\" (value=8)."
) ,
Values {
"Not Dedicated", "Unknown", "Other", "Storage", "Router", "Switch",
"Layer 3 Switch", "Central Office Switch", "Hub", "Access Server",
"Firewall", "Print", "I/O", "Web Caching"
} ]
uint16 Dedicated[] ;
}; //*** class CIM_ComputerSystem
// =============================================================================
// CIM_UnitaryComputerSystem
// =============================================================================
[Abstract ,
Locale (0x409) : ToInstance ,
Description (
"A class derived from ComputerSystem that represents a Desktop, "
"Mobile, NetPC, Server or other type of a single node Computer "
"System."
),
UUID ("{903487A9-1E55-4489-9389-4CEE0AE6B236}")
]
class CIM_UnitaryComputerSystem : CIM_ComputerSystem
{
[Description (
"This object contains the data needed to find either the "
"initial load device (its key) or the boot service to "
"request the operating system to start up. In addition, "
"the load parameters (ie, a pathname and parameters) "
"may also be specified."
) ]
string InitialLoadInfo[];
[Description (
"This object contains the data identifying either the "
"initial load device (its key) or the boot service that "
"requested the last operating system load. In addition, "
"the load parameters (ie, a pathname and parameters) "
"may also be specified."
) ,
MappingStrings {
"MIB.IETF|HOST-RESOURCES-MIB.hrSystemInitialLoadDevice",
"MIB.IETF|HOST-RESOURCES-MIB.hrSystemInitialLoadParameters"
} ]
string LastLoadInfo;
[Description (
"If enabled (value = 4), the UnitaryComputerSystem can be "
"reset via hardware (e.g. the power and reset buttons). If "
"disabled (value = 3), hardware reset is not allowed. In "
"addition to Enabled and Disabled, other Values for the "
"property are also defined - \"Not Implemented\" (5), "
"\"Other\" (1) and \"Unknown\" (2)."
) ,
ValueMap { "1", "2", "3", "4", "5" } ,
Values {
"Other", "Unknown", "Disabled", "Enabled", "Not Implemented"
} ,
MappingStrings { "MIF.DMTF|System Hardware Security|001.4" }
]
uint16 ResetCapability;
[Description (
"Boolean indicating that the ComputerSystem, with its "
"running OperatingSystem, supports power management. This "
"boolean does not indicate that power management features are "
"currently enabled, or if enabled, what features are "
"supported. Refer to the PowerManagementCapabilities array "
"for this information. If this boolean is false, the integer "
"value 1 for the string, \"Not Supported\", should be the "
"only entry in the PowerManagementCapabilities array."
) ]
boolean PowerManagementSupported;
[Description (
"Indicates the specific power-related capabilities of a "
"ComputerSystem and its associated running OperatingSystem. "
"The values, 0=\"Unknown\", 1=\"Not Supported\", and "
"2=\"Disabled\" are self-explanatory. "
"The value, 3=\"Enabled\" indicates that the power management "
"features are currently enabled but the exact feature set "
"is unknown or the information is unavailable. "
"\"Power Saving Modes Entered Automatically\" (4) describes "
"that a system can change its power state based on usage or "
"other criteria. \"Power State Settable\" (5) indicates that "
"the SetPowerState method is supported. \"Power Cycling "
"Supported\" (6) indicates that the SetPowerState method "
"can be invoked with the PowerState input variable set to 5 ("
"\"Power Cycle\"). \"Timed Power On Supported\" (7) indicates "
"that the SetPowerState method can be invoked with the Power"
"State input variable set to 5 (\"Power Cycle\") and the Time "
"parameter set to a specific date and time, or interval, "
"for power-on."
) ,
Values {
"Unknown", "Not Supported", "Disabled", "Enabled",
"Power Saving Modes Entered Automatically",
"Power State Settable", "Power Cycling Supported",
"Timed Power On Supported"
} ,
MappingStrings { "MIF.DMTF|System Power Controls|001.2" }
]
uint16 PowerManagementCapabilities[];
[Description (
"Indicates the current power state of the ComputerSystem and "
"its associated OperatingSystem. Regarding the Power Save "
"states, these are defined as follows: Value 4 (\"Power Save "
"- Unknown\") indicates that the System is known to be in a "
"power save mode, but its exact status in this mode is "
"unknown; 2 (\"Power Save - Low Power Mode\") indicates that "
"the System is in a power save state but still functioning, "
"and may exhibit degraded performance; 3 (\"Power Save - "
"Standby\") describes that the System is not functioning but "
"could be brought to full power 'quickly'; and value 7 "
"(\"Power Save - Warning\") indicates that the Computer"
"System is in a warning state, though also in a power save "
"mode."
) ,
Values {
"Unknown", "Full Power", "Power Save - Low Power Mode",
"Power Save - Standby", "Power Save - Unknown", "Power Cycle",
"Power Off", "Power Save - Warning"
} ]
uint16 PowerState ;
//***********
//* Methods *
//***********
[Description (
"SetPowerState defines the desired power state of a "
"ComputerSystem and its running OperatingSystem, and when "
"the system should be put into that state. The PowerState "
"parameter is specified as one of the valid integer values "
"defined for the property, PowerState. The Time "
"parameter (for all state changes but 5, \"Power Cycle\") "
"indicates when the power state should be set, either as "
"a regular date-time value or as an interval value (where "
"the interval begins when the method invocation is received). "
"When the PowerState parameter is equal to 5, \"Power Cycle\", "
"the Time parameter indicates when the system should power on "
"again. Power off is immediate. SetPowerState should "
"return 0 if successful, 1 if the specified State and Time "
"request is not supported, and some other value if any "
"other error occurred."
) ]
uint32 SetPowerState(
[IN] uint16 PowerState,
[IN] datetime Time
);
}; //*** class CIM_UnitaryComputerSystem
// ===================================================================
// CIM_LogicalDevice
// ===================================================================
[Abstract ,
Locale (0x409) : ToInstance ,
Description (
"An abstraction or emulation of a hardware entity, that may or may not "
"be Realized in physical hardware. Any characteristics of a "
"LogicalDevice that are used to manage its operation or configuration "
"are contained in, or associated with, the LogicalDevice object. "
"Examples of the operational properties of a Printer would be paper "
"sizes supported, or detected errors. Examples of the configuration "
"properties of a Sensor Device would be threshold settings. Various "
"configurations could exist for a LogicalDevice. These configurations "
"could be contained in Setting objects and associated with the "
"LogicalDevice."
),
UUID ("{79995733-3548-4102-98F0-8A2D65CCE350}")
]
class CIM_LogicalDevice : CIM_LogicalElement
{
[Propagated ("CIM_System.CreationClassName") ,
CIM_KEY,
MaxLen (256) ,
Description ("The scoping System's CreationClassName.")
]
string SystemCreationClassName ;
[Propagated ("CIM_System.Name") ,
Key,
MaxLen (256) ,
Description ("The scoping System's Name.")
]
string SystemName ;
[CIM_KEY,
MaxLen (256) ,
Description (
"CreationClassName indicates the name of the class or the subclass used "
"in the creation of an instance. When used with the other key properties "
"of this class, this property allows all instances of this class and its "
"subclasses to be uniquely identified."
) ]
string CreationClassName ;
[Key,
MaxLen (64) ,
Description (
"An address or other identifying information to uniquely name the "
"LogicalDevice."
) ]
string DeviceID ;
[Description (
"Boolean indicating that the Device can be power managed - ie, put into "
"a power save state. This boolean does not indicate that power "
"management features are currently enabled, or if enabled, what features "
"are supported. Refer to the PowerManagementCapabilities array for this "
"information. If this boolean is false, the integer value 1, for the "
"string, \"Not Supported\", should be the only entry in the "
"PowerManagementCapabilities array."
) ]
boolean PowerManagementSupported ;
[Description (
"Indicates the specific power-related capabilities of a LogicalDevice. "
"The array values, 0=\"Unknown\", 1=\"Not Supported\" and 2=\"Disabled\" "
"are self-explanatory. The value, 3=\"Enabled\" indicates that the power "
"management features are currently enabled but the exact feature set is "
"unknown or the information is unavailable. \"Power Saving Modes Entered "
"Automatically\" (4) describes that a Device can change its power state "
"based on usage or other criteria. \"Power State Settable\" (5) "
"indicates that the SetPowerState method is supported. \"Power Cycling "
"Supported\" (6) indicates that the SetPowerState method can be invoked "
"with the PowerState input variable set to 5 (\"Power Cycle\"). \"Timed "
"Power On Supported\" (7) indicates that the SetPowerState method can be "
"invoked with the PowerState input variable set to 5 (\"Power Cycle\") "
"and the Time parameter set to a specific date and time, or interval, "
"for power-on."
) ,
Values {
"Unknown", "Not Supported", "Disabled", "Enabled",
"Power Saving Modes Entered Automatically", "Power State Settable",
"Power Cycling Supported", "Timed Power On Supported"
} ]
uint16 PowerManagementCapabilities[] ;
[Description (
"The availability and status of the Device. For example, the "
"Availability property indicates that the Device is running and has full "
"power (value=3), or is in a warning (4), test (5), degraded (10) or "
"power save state (values 13-15 and 17). Regarding the Power Save states,"
" these are defined as follows: Value 13 (\"Power Save - Unknown\") "
"indicates that the Device is known to be in a power save mode, but its "
"exact status in this mode is unknown; 14 (\"Power Save - Low Power "
"Mode\") indicates that the Device is in a power save state but still "
"functioning, and may exhibit degraded performance; 15 (\"Power Save - "
"Standby\") describes that the Device is not functioning but could be "
"brought to full power 'quickly'; and value 17 (\"Power Save - Warning\")"
" indicates that the Device is in a warning state, though also in a "
"power save mode."
) ,
ValueMap {
"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12",
"13", "14", "15", "16", "17", "18", "19"
} ,
Values {
"Other", "Unknown", "Running/Full Power", "Warning", "In Test",
"Not Applicable", "Power Off", "Off Line", "Off Duty", "Degraded",
"Not Installed", "Install Error", "Power Save - Unknown",
"Power Save - Low Power Mode", "Power Save - Standby", "Power Cycle",
"Power Save - Warning", "Paused", "Not Ready"
} ,
MappingStrings {
"MIF.DMTF|Operational State|004.5",
"MIB.IETF|HOST-RESOURCES-MIB.hrDeviceStatus",
"MIF.DMTF|Host Device|001.5"
} ]
uint16 Availability ;
[Description (
"StatusInfo is a string indicating whether the LogicalDevice is in an "
"enabled (value = 3), disabled (value = 4) or some other (1) or unknown ("
"2) state. If this property does not apply to the LogicalDevice, the "
"value, 5 (\"Not Applicable\"), should be used."
) ,
ValueMap { "1", "2", "3", "4", "5" } ,
Values {
"Other", "Unknown", "Enabled", "Disabled", "Not Applicable"
} ,
MappingStrings { "MIF.DMTF|Operational State|004.3" }
]
uint16 StatusInfo ;
[Description (
"LastErrorCode captures the last error code reported by the "
"LogicalDevice."
) ]
uint32 LastErrorCode ;
[Description (
"ErrorDescription is a free-form string supplying more information about "
"the error recorded in LastErrorCode, and information on any corrective "
"actions that may be taken."
) ]
string ErrorDescription ;
[Description (
"ErrorCleared is a boolean property indicating that the error reported "
"in LastErrorCode is now cleared."
) ]
boolean ErrorCleared ;
[MaxLen (256) ,
ArrayType ("Indexed") ,
Description (
"OtherIdentifyingInfo captures additional data, beyond DeviceID "
"information, that could be used to identify a LogicalDevice. One "
"example would be to hold the OperatingSystem's user friendly name for "
"the Device in this property."
) ,
ModelCorrespondence { "CIM_LogicalDevice.IdentifyingDescriptions" }
]
string OtherIdentifyingInfo[] ;
[Description (
"The number of consecutive hours that this Device has been powered, "
"since its last power cycle."
) ,
Units ("Hours") ,
Counter
]
uint64 PowerOnHours ;
[Description (
"The total number of hours that this Device has been powered."
) ,
Units ("Hours") ,
Counter
]
uint64 TotalPowerOnHours ;
[ArrayType ("Indexed") ,
Description (
"An array of free-form strings providing explanations and details behind "
"the entries in the OtherIdentifyingInfo array. Note, each entry of this "
"array is related to the entry in OtherIdentifyingInfo that is located "
"at the same index."
) ,
ModelCorrespondence { "CIM_LogicalDevice.OtherIdentifyingInfo" }
]
string IdentifyingDescriptions[] ;
//***********
//* Methods *
//***********
[Description (
"SetPowerState defines the desired power state for a LogicalDevice and "
"when a Device should be put into that state. The desired power state is "
"specified by setting the PowerState parameter to one of the following "
"integer values: 1=\"Full Power\", 2=\"Power Save - Low Power Mode\", "
"3=\"Power Save - Standby\", 4=\"Power Save - Other\", 5=\"Power Cycle\" "
"or 6=\"Power Off\". The Time parameter (for all state changes but 5, "
"\"Power Cycle\") indicates when the power state should be set, either "
"as a regular date-time value or as an interval value (where the "
"interval begins when the method invocation is received). When the "
"PowerState parameter is equal to 5, \"Power Cycle\", the Time parameter "
"indicates when the Device should power on again. Power off is immediate."
" SetPowerState should return 0 if successful, 1 if the specified "
"PowerState and Time request is not supported, and some other value if "
"any other error occurred. In a subclass, the set of possible return "
"codes could be specified, using a ValueMap qualifier on the method. The "
"strings to which the ValueMap contents are 'translated' may also be "
"specified in the subclass as a Values array qualifier."
) ]
uint32 SetPowerState(
[IN,
ValueMap {"1", "2", "3", "4", "5", "6"},
Values {
"Full Power", "Power Save - Low Power Mode",
"Power Save - Standby", "Power Save - Other", "Power Cycle",
"Power Off"
} ]
uint16 PowerState,
[IN]
datetime Time
) ;
[Description (
"Requests a reset of the LogicalDevice. The return value should be 0 if "
"the request was successfully executed, 1 if the request is not "
"supported and some other value if an error occurred. In a subclass, the "
"set of possible return codes could be specified, using a ValueMap "
"qualifier on the method. The strings to which the ValueMap contents are "
"'translated' may also be specified in the subclass as a Values array "
"qualifier."
) ]
uint32 Reset() ;
[Description (
"Requests that the LogicalDevice be enabled (\"Enabled\" input parameter "
"= TRUE) or disabled (= FALSE). If successful, the Device's StatusInfo "
"property should also reflect the desired state (enabled/disabled). The "
"return code should be 0 if the request was successfully executed, 1 if "
"the request is not supported and some other value if an error occurred. "
"In a subclass, the set of possible return codes could be specified, "
"using a ValueMap qualifier on the method. The strings to which the "
"ValueMap contents are 'translated' may also be specified in the "
"subclass as a Values array qualifier."
) ]
uint32 EnableDevice( [IN] boolean Enabled ) ;
}; //*** class CIM_LogicalDevice
// ==================================================================
// CIM_Service
// ==================================================================
[Abstract ,
Locale (0x409) : ToInstance ,
Description (
"A CIM_Service is a Logical Element that contains the information "
"necessary to represent and manage the functionality provided by a "
"Device and/or SoftwareFeature. A Service is a general-purpose object "
"to configure and manage the implementation of functionality. It is "
"not the functionality itself."
),
UUID ("{FCFE8148-E035-4bf9-88ED-494793B152BC}")
]
class CIM_Service : CIM_LogicalElement
{
[CIM_KEY,
MaxLen (256) ,
Description (
"CreationClassName indicates the name of the class or the subclass used "
"in the creation of an instance. When used with the other key properties "
"of this class, this property allows all instances of this class and its "
"subclasses to be uniquely identified."
) ]
string CreationClassName ;
[Override ("Name") ,
Key,
MaxLen (256) ,
Description (
"The Name property uniquely identifies the Service and provides an "
"indication of the functionality that is managed. This functionality is "
"described in more detail in the object's Description property."
) ]
string Name ;
[MaxLen (10) ,
Description (
"StartMode is a string value indicating whether the Service is "
"automatically started by a System, Operating System, etc. or only "
"started upon request."
) ,
ValueMap { "Automatic", "Manual" }
]
string StartMode ;
[Description (
"Started is a boolean indicating whether the Service has been started ("
"TRUE), or stopped (FALSE)."
) ]
boolean Started ;
[Propagated ("CIM_System.CreationClassName") ,
CIM_KEY,
MaxLen (256) ,
Description ("The scoping System's CreationClassName.")
]
string SystemCreationClassName ;
[Propagated ("CIM_System.Name") ,
Key,
MaxLen (256) ,
Description ("The scoping System's Name.")
]
string SystemName ;
//***********
//* Methods *
//***********
[Description (
"The StartService method places the Service in the started state. It "
"returns an integer value of 0 if the Service was successfully started, "
"1 if the request is not supported and any other number to indicate an "
"error. In a subclass, the set of possible return codes could be "
"specified, using a ValueMap qualifier on the method. The strings to "
"which the ValueMap contents are 'translated' may also be specified in "
"the subclass as a Values array qualifier."
) ]
uint32 StartService() ;
[Description (
"The StopService method places the Service in the stopped state. It "
"returns an integer value of 0 if the Service was successfully stopped, "
"1 if the request is not supported and any other number to indicate an "
"error. In a subclass, the set of possible return codes could be "
"specified, using a ValueMap qualifier on the method. The strings to "
"which the ValueMap contents are 'translated' may also be specified in "
"the subclass as a Values array qualifier."
) ]
uint32 StopService() ;
}; //*** class CIM_Service
// ===================================================================
// CIM_ClusteringService
// ===================================================================
[Abstract ,
Locale (0x409) : ToInstance ,
UUID ("{CA0A869F-8876-4be7-AADF-A427F7733415}") : ToInstance
]
class CIM_ClusteringService : CIM_Service
{
//***********
//* Methods *
//***********
uint32 AddNode( [IN] CIM_ComputerSystem Ref CS ) ;
uint32 EvictNode( [IN] CIM_ComputerSystem Ref CS ) ;
}; //*** class CIM_ClusteringService
// ==================================================================
// CIM_Dependency
// ==================================================================
[Association ,
Abstract ,
Locale (0x409) : ToInstance ,
Description (
"CIM_Dependency is a generic association used to establish dependency "
"relationships between objects."
),
UUID ("{26BB4D6A-0473-494e-A864-5CAEEB9AB330}")
]
class CIM_Dependency
{
[Key ,
Description (
"Antecedent represents the independent object in this association."
) ]
CIM_ManagedSystemElement REF Antecedent ;
[Key ,
Description (
"Dependent represents the object dependent on the Antecedent."
) ]
CIM_ManagedSystemElement REF Dependent ;
}; //*** class CIM_Dependency
// ==================================================================
// CIM_HostedService
// ==================================================================
[Abstract ,
Association ,
Locale (0x409) : ToInstance ,
Description (
"CIM_HostedService is an association between a Service and the System on "
"which the functionality resides. The cardinality of this association "
"is 1-to-many. A System may host many Services. Services are weak with "
"respect to their hosting System. Heuristic: A Service is hosted on the "
"System where the LogicalDevices or SoftwareFeatures that implement the "
"Service are located. The model does not represent Services hosted "
"across multiple systems. This is modeled as an ApplicationSystem that "
"acts as an aggregation point for Services, that are each located on a "
"single host."
),
UUID ("{F59C2609-0CCC-487a-B583-184FE6FC2F53}")
]
class CIM_HostedService : CIM_Dependency
{
[Override ("Antecedent") ,
Max (1) ,
Min (1) ,
Description ("The hosting System.")
]
CIM_System REF Antecedent ;
[Override ("Dependent") ,
Weak,
Description ("The Service hosted on the System.")
]
CIM_Service REF Dependent ;
}; //*** class CIM_HostedService
// ==================================================================
// CIM_Component
// ==================================================================
[Association ,
Abstract ,
Locale (0x409) : ToInstance ,
Aggregation ,
Description (
"CIM_Component is a generic association used to establish 'part of' "
"relationships between Managed System Elements. For example, the "
"SystemComponent association defines parts of a System."
),
UUID ("{7C6B02AF-B639-4ca5-9A92-E5710AB090AC}")
]
class CIM_Component
{
[Aggregate ,
Key ,
Description ("The parent element in the association.")
]
CIM_ManagedSystemElement REF GroupComponent ;
[Key ,
Description ("The child element in the association.")
]
CIM_ManagedSystemElement REF PartComponent ;
}; //*** class CIM_Component
// ==================================================================
// CIM_SystemComponent
// ==================================================================
[Abstract ,
Locale (0x409) : ToInstance ,
Association ,
Aggregation ,
Description (
"CIM_SystemComponent is a specialization of the CIM_Component "
"association that establishes 'part of' relationships between a System "
"and the Managed System Elements of which it is composed."
),
UUID ("{D4DF8D45-2057-4f5f-AAF0-BC4452F48F1F}")
]
class CIM_SystemComponent : CIM_Component
{
[Override ("GroupComponent") ,
Aggregate ,
Description ("The parent System in the Association.")
]
CIM_System REF GroupComponent ;
[Override ("PartComponent") ,
Description ("The child element that is a component of a System.")
]
CIM_ManagedSystemElement REF PartComponent ;
}; //*** class CIM_SystemComponent
// ==================================================================
// CIM_SystemDevice
// ==================================================================
[Abstract ,
Locale (0x409) : ToInstance ,
Association ,
Aggregation ,
Description (
"LogicalDevices may be aggregated by a System. This relationship is "
"made explicit by the SystemDevice association."
),
UUID ("{D6CB4144-71F3-46b3-AE99-C0AD9A930CD1}")
]
class CIM_SystemDevice : CIM_SystemComponent
{
[Override ("GroupComponent") ,
Aggregate,
Max (1) ,
Min (1) ,
Description ("The parent system in the Association.")
]
CIM_System REF GroupComponent ;
[Override ("PartComponent") ,
Weak,
Description ("The LogicalDevice that is a component of a System.")
]
CIM_LogicalDevice REF PartComponent ;
}; //*** class CIM_SystemDevice
// ===================================================================
// CIM_ComponentCS
// ===================================================================
[Association ,
Aggregation ,
Locale (0x409) ,
Description (
"A ComputerSystem can aggregate another ComputerSystem. This association "
"can be used to model MPP Systems with workstation frontends, an I2O "
"subsystem embedded in a UnitaryComputerSystem, or a System that splits "
"functionality between two processors, potentially running different "
"OperatingSystems. For example, if a CISC Processor and its associated "
"OperatingSystem, are used for user interface and file support, and a "
"RISC Processor and its OS are used for complex mathematical operations, "
"this could be modeled as two ComputerSystems where one aggregates the "
"other. In some cases, this could be modeled as a Cluster. The "
"difference is the focus of the relationship. ComponentCS represents "
"that unique and distinct ComputerSystems are aggregated by a higher "
"level CS object. However, each of the component CSs are still "
"distinguishable entities and are only viewed as such. Alternately, with "
"a Cluster, the ComputerSystems that participate in it are "
"inconsequential, when viewed through the 'Cluster System'.\n\nWhen "
"instantiating or subclassing the ComponentCS relationship, care should "
"be taken that the component ComputerSystem meets the definitional "
"requirements of a ComputerSystem - ie, a functional whole that provides "
"compute capabilities and aggregates System Devices, an OperatingSystem, "
"etc."
),
UUID ("{AB653DD2-EA29-4dcc-9F10-8C809A50A646}")
]
class CIM_ComponentCS : CIM_SystemComponent
{
[Override ("GroupComponent") ,
Aggregate ,
Description (
"The ComputerSystem that contains and/or aggregates other Systems."
) ]
CIM_ComputerSystem REF GroupComponent ;
[Override ("PartComponent") ,
Description ("The contained (Sub)ComputerSystem.")
]
CIM_ComputerSystem REF PartComponent ;
}; //*** class CIM_ComponentCS
// ===================================================================
// CIM_Cluster
// ===================================================================
[Abstract ,
Locale (0x409) : ToInstance ,
Description (
"A class derived from ComputerSystem that 'is made up of' two or more "
"ComputerSystems which operate together as an atomic, functional whole "
"to increase the performance, resources and/or RAS (Reliability, "
"Availability and Serviceability) of the component ComputerSystems, "
"related to some aspects of these ComputerSystems."
),
UUID ("{35239F78-E086-44a2-B506-140D0D1F7DBA}")
]
class CIM_Cluster : CIM_ComputerSystem
{
[Description (
"Indicates the maximum number of nodes that may participate in the "
"Cluster. If unlimited, enter 0."
) ]
uint32 MaxNumberOfNodes ;
}; //*** class CIM_Cluster
// ===================================================================
// CIM_ParticipatingCS
// ===================================================================
[Abstract ,
Association ,
Locale (0x409) : ToInstance ,
Description (
"A Cluster is composed of two or more ComputerSystems, operating "
"together. A ComputerSystem may participate in multiple Clusters. "
"\n\nWhen first establishing or bringing up a Cluster, only one "
"ComputerSystem may be defined as participating in it. Therfore, the "
"cardinality of the association for the ComputerSystem reference is "
"Min(1)."
),
UUID ("{8A5CD126-FD8B-4eb2-AEDF-5DC22B6DE989}")
]
class CIM_ParticipatingCS : CIM_Dependency
{
[Override ("Antecedent") ,
Description (
"The ComputerSystem which participates in the Cluster."
) ,
Min (1)
]
CIM_ComputerSystem REF Antecedent ;
[Override ("Dependent") ,
Description ("The Cluster.")
]
CIM_Cluster REF Dependent ;
[Description (
"StateOfNode indicates the condition of the participating ComputerSystem "
"in the Cluster. For example, one value is \"Joining\" (2)."
) ,
Values {
"Unknown", "Other", "Joining", "Paused", "Available",
"Unavailable", "Degraded"
} ]
uint16 StateOfNode ;
[Description (
"RoleOfNode indicates whether the Cluster nodes are peers (value = 2), "
"connected in a master-slave/primary-secondary relationship (values = 3 "
"for primary, 4 for secondary), available in a standby configuration (5) "
"or of some other (1) or unknown (0) relationship. In a System/390 "
"environment, the nodes are identified as \"Base Plex\" (value=6) or "
"\"Enhanced Plex\" (value=7)."
) ,
Values {
"Unknown", "Other", "Peer", "Primary", "Secondary", "Standby",
"Base Plex", "Enhanced Plex"
} ]
uint16 RoleOfNode ;
}; //*** class CIM_ParticipatingCS
//************************************************************************
//* Microsoft Cluster Service Schema
//************************************************************************
// ===================================================================
// MSCluster_Property
// ===================================================================
[Abstract : ToSubClass,
Locale (0x409) : ToInstance ,
Description(
"Superclass for properties of cluster objects."
),
UUID ("{4D5365E3-A8F2-4167-8565-7A588D1F4FA5}")
]
class MSCluster_Property
{
}; //*** class MSCluster_Property
// ===================================================================
// MSCluster_LogicalElement
// ===================================================================
[Abstract ,
Locale (0x409) : ToInstance ,
Description (
"Superclass for cluster objects that provide "
"the FLAGS and CHARACTERISTICS attributes"
),
UUID ("{9EB9A2F9-0751-4dcf-AB59-F8341D0F60B2}")
]
class MSCluster_LogicalElement : CIM_LogicalElement
{
[Read : ToSubClass ,
Write : ToSubClass
]
uint32 Flags ;
[Read : ToSubClass ,
Write : ToSubClass
]
uint32 Characteristics ;
}; //*** class MSCluster_LogicalElement
// ===================================================================
// MSCluster_Cluster
// ===================================================================
[Dynamic ,
Locale (0x409) ,
Provider ("MS_CLUSTER_PROVIDER"),
UUID ("{9EB9A2F9-0751-4dcf-AB59-F8341D0F60B2}")
]
class MSCluster_Cluster : CIM_Cluster
{
[Read : ToSubClass ,
Description (
"The Name property specifies the name of the cluster."
) ]
string Name ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The Description property stores administrative comments "
"about the cluster."
) ]
string Description ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description ("The location of maintenance file.")
]
string MaintenanceFile ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The AdminExtensions property provides the class identifiers "
"(CLSIDs) for the Cluster Administrator extension DLLs that are "
"associated with the cluster."
) ]
string AdminExtensions[] ;
[Read : ToSubClass ,
Write : ToSubClass
]
string GroupAdminExtensions[] ;
[Read : ToSubClass ,
Write : ToSubClass
]
string NodeAdminExtensions[] ;
[Read : ToSubClass ,
Write : ToSubClass
]
string ResourceAdminExtensions[] ;
[Read : ToSubClass ,
Write : ToSubClass
]
string ResourceTypeAdminExtensions[] ;
[Read : ToSubClass ,
Write : ToSubClass
]
string NetworkAdminExtensions[] ;
[Read : ToSubClass ,
Write : ToSubClass
]
string NetworkInterfaceAdminExtensions[] ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The SecurityDescriptor property stores Windows 2000-compatible "
"security descriptor information."
) ]
uint8 Security[] ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description ("The size of quorum log file.")
]
uint32 QuorumLogFileSize ;
[Read : ToSubClass ,
Write:ToSubClass ,
Arraytype ("Ordered") ,
Description (
"Prioritized array of networks. "
"The first in the array has the highest priority"
) ]
string NetworkPriorities[] ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description ("Specifies the role that the cluster automatically assigns to any newly discovered or created network.")
]
uint32 DefaultNetworkRole ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description ("Controls whether a node's system, application, and security event log entries are replicated in the event logs of all other cluster nodes.")
]
uint32 EnableEventLogReplication ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description ("Stores the Windows 2000 security descriptor of a cluster.")
]
uint8 Security_Descriptor[] ;
//***********
//* Methods *
//***********
[Implemented]
void Rename(
[IN, Description ("New name of the cluster.") ]
string NewName
) ;
[Implemented]
void SetQuorumResource(
[IN, Description ("Name of the quorum resource.") ]
string Resource
) ;
[Implemented ,
Static ,
Description ("Determines if the Cluster service is installed and running on a node.") : ToSubClass
]
void GetNodeClusterState(
[OUT, Description ("State of the Cluster service on the node.") ]
uint32 ClusterState
) ;
}; //*** class MSCluster_Cluster
// ===================================================================
// MSCluster_ResourceGroup
// ===================================================================
[Dynamic ,
Locale (0x409) ,
Provider ("MS_CLUSTER_PROVIDER"),
UUID ("{DDE3A30E-55F7-4c31-B6CF-E360D12C5253}")
]
class MSCluster_ResourceGroup : MSCluster_LogicalElement
{
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The Description property provides comments about the group."
) ]
string Description;
[Key ,
Read : ToSubClass ,
Description ("The Name property specifies the name of the group.")
]
string Name = NULL ;
[Read : ToSubClass ,
Description ("The current state of the resource group.")
]
uint32 State ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The AutoFailbackType property specifies whether the group "
"should automatically be failed back to the node identified "
"as its preferred owner when that node comes back online "
"following a failover."
),
Values {
"ClusterGroupPreventFailback", "ClusterGroupAllowFailback"
} ]
uint32 AutoFailbackType ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The FailbackWindowEnd property provides the latest time that "
"the group can be moved back to the node identified as its "
"preferred node."
) ,
Min (-1) ,
Max (23) ,
Units ("hours")
]
sint32 FailbackWindowEnd ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The FailbackWindowStart property provides the earliest time "
"(that is, local time as kept by the cluster) that the group "
"can be moved back to the node identified as its preferred node."
),
Min (-1) ,
Max (23) ,
Units ("hours")
]
sint32 FailbackWindowStart ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The FailoverPeriod property specifies a number of hours during "
"which a maximum number of failover attempts, specified by "
"FailoverThreshold, can occur."
) ,
Min (1) ,
Max (1193),
Units ("hours")
]
uint32 FailoverPeriod ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The FailoverThreshold property specifies the maximum number of "
"failover attempts that can be made on a group within a time "
"interval defined by FailoverPeriod."
) ]
uint32 FailoverThreshold ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The PersistentState property specifies whether a group should "
"be left offline or brought online when the Cluster Service "
"starts."
) ]
boolean PersistentState ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The LoadBalState property is reserved for future use "
"and is not used by Windows Clustering at this time."
) ]
uint32 LoadBalState;
//***********
//* Methods *
//***********
[Implemented]
void BringOnline(
[IN, Description ("How long (in seconds) the method should wait for the resource group to come online.") ]
uint32 TimeOut
) ;
[Implemented]
void TakeOffline(
[IN, Description ("How long (in seconds) the method should wait for the resource group to come offline.") ]
uint32 TimeOut
);
[Implemented ,
Description ("To move the group to different node.")
]
void MoveToNewNode(
[IN, Description ("Name of the node to move to. ") ]
string NodeName ,
[IN, Description ("How long (in seconds) the method should wait for the resource group to move to another node.") ]
uint32 TimeOut
) ;
[Implemented ,
Description ("Rename the resource group.")
]
void Rename(
[IN, Description ("New name of the resource group. ") ]
string NewName
) ;
[Implemented ,
Static ,
Description ("Create a new resource group.")
]
void CreateGroup(
[IN, Description ("Name of the resource group.") ]
string GroupName
) ;
[Implemented ,
Static ,
Description ("Delete the resource group.")
]
void DeleteGroup(
) ;
}; //*** class MSCluster_ResourceGroup
// ===================================================================
// MSCluster_Network
// ===================================================================
[Dynamic ,
Locale (0x409) ,
Provider ("MS_CLUSTER_PROVIDER"),
UUID ("{F541DA2A-174C-4000-9066-B755095C7E7A}")
]
class MSCluster_Network : MSCluster_LogicalElement
{
[Key ,
Read : ToSubClass ,
Description ("The Name property provides the name of the network.")
]
string Name ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The Description property provides comments about the network."
) ]
string Description ;
[Read : ToSubClass ,
Description (
"The Address property provides the address for the entire network "
"or subnet."
) ]
string Address ;
[Read : ToSubClass ,
Description (
"The AddressMask property provides the mask that distinguishes the "
"network and host portions of an address."
) ]
string AddressMask ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The Role property provides the role of the network in the cluster."
),
Values {
"ClusterNetworkRoleNone", "ClusterNetworkRoleClientAccess",
"ClusterNetworkRoleInternalUse", "ClusterNetworkRoleInternalAndClient"
} ]
uint32 Role ;
[Read : ToSubClass ,
Description (
"Current state of a network."
) ]
uint32 State ;
//***********
//* Methods *
//***********
[Description ("To rename the network."),
Implemented
]
void Rename( [IN] string newName );
}; //*** class MSCluster_Network
// ===================================================================
// MSCluster_Node
// ===================================================================
[Dynamic ,
Locale (0x409) ,
Provider ("MS_CLUSTER_PROVIDER"),
UUID ("{C306EBED-0654-4360-AA70-DE912C5FC364}")
]
class MSCluster_Node : CIM_UnitaryComputerSystem
{
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The Description property provides comments about the node."
) ]
string Description ;
[Read : ToSubClass ,
Description (
"The NodeHighestVersion property specifies the highest possible "
"version of Clustering Service with which the node can join or "
"communicate."
) ]
uint32 NodeHighestVersion ;
[Read : ToSubClass ,
Description (
"The NodeLowestVersion property specifies the lowest possible "
"version of Clustering Service with which the node can join or "
"communicate."
) ]
uint32 NodeLowestVersion ;
[Read : ToSubClass ,
Description (
"The MajorVersion property specifies the integer component of "
"the Windows NT/Window 2000 version installed on the node."
) ]
uint32 MajorVersion ;
[Read : ToSubClass,
Description (
"The MinorVersion property specifies the decimal component of "
"the Windows NT/Window 2000 version installed on the node."
) ]
uint32 MinorVersion ;
[Read : ToSubClass ,
Description (
"The BuildNumber property specifies the build number of "
"Microsoft® Windows NT®/Windows® 2000 installed on a node."
) ]
uint32 BuildNumber ;
[Read : ToSubClass ,
Description (
"The CSDVersion property specifies the number of the most recent "
"service pack installed on the node (if any)."
) ]
uint32 CSDVersion ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The EnableEventLogReplication property controls whether the "
"Windows NT/Windows 2000 Event Log is replicated."
) ]
uint32 EnableEventLogReplication ;
[Read : ToSubClass ,
Description ("The current state of a node.")
]
uint32 State ;
[Read : ToSubClass ,
Write : ToSubClass
]
uint32 Flags ;
[Read : ToSubClass ,
Write : ToSubClass
]
uint32 Characteristics ;
}; //*** class MSCluster_Node
// ===================================================================
// MSCluster_Service
// ===================================================================
[Dynamic ,
Locale (0x409) ,
Provider ("MS_CLUSTER_PROVIDER"),
UUID ("{8F9030D0-9149-4113-9ADD-6F2101285E5D}")
]
class MSCluster_Service : CIM_ClusteringService
{
[Read : ToSubClass ,
Description (
"The NodeHighestVersion property specifies the highest possible "
"version of Clustering Service with which the node hosting this "
"service can join or communicate."
) ]
uint32 NodeHighestVersion ;
[Read : ToSubClass ,
Description (
"The NodeLowestVersion property specifies the lowest possible "
"version of Clustering Service with which the node hosting this "
"service can join or communicate."
) ]
uint32 NodeLowestVersion ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The EnableEventLogReplication property controls whether the "
"Windows NT/Windows 2000 Event Log is replicated."
) ]
uint32 EnableEventLogReplication ;
[Read : ToSubClass ,
Description ("The current state of the node hosting this service.")
]
uint32 State ;
//***********
//* Methods *
//***********
[Implemented]
void Pause() ;
[Implemented]
void Resume() ;
}; //*** class MSCluster_Service
// ===================================================================
// MSCluster_Resource
// ===================================================================
[Dynamic ,
Locale (0x409) ,
Provider ("MS_CLUSTER_PROVIDER"),
UUID ("{C2862F9C-34DE-4b16-9EE3-099D078E9F59}")
]
class MSCluster_Resource : MSCluster_LogicalElement
{
[Key ,
Read : ToSubClass ,
Description (
"The Name property provides the name of the Resource."
) ]
string Name ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The Description property provides comments about the Resource."
) ]
string Description ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The DebugPrefix property specifies the path to the debugger "
"used to debug the resource."
) ]
string DebugPrefix ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The IsAlivePollInterval property provides the recommended "
"interval in milliseconds at which the Cluster Service should "
"poll the resource to determine if it is operational. If it "
"sets it to 0xFFFFFFFF, the Cluster Service uses the "
"IsAlivePollInterval property for the resource type associated "
"with the resource."
),
Units ("Milliseconds")
]
uint32 IsAlivePollInterval ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The LooksAlivePollInterval property provides the recommended "
"interval in milliseconds at which the Cluster Service should "
"poll the resource to determine if it appears operational. If it "
"sets it to 0xFFFFFFFF, the Cluster Service uses the "
"LooksAlivePollInterval property for the resource type "
"associated with the resource."
),
Units ("Milliseconds")
]
uint32 LooksAlivePollInterval ;
[Description ("Reserved for future use.") ]
uint32 LoadBalAnalysisInterval ;
[Description ("Reserved for future use.") ]
uint32 LoadBalMinMemoryUnits;
[Description ("Reserved for future use.") ]
uint32 LoadBalMinProcessorUnits;
[Description ("Reserved for future use.") ]
uint32 LoadBalSampleInterval ;
[Description ("Reserved for future use.") ]
uint32 LoadBalStartupInterval;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"If a resource cannot be brought online or taken offline in "
"the number of milliseconds specified by the PendingTimeout "
"property, the resource is forcibly terminated."
) ]
uint32 PendingTimeout ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The PersistentState property specifies whether the resource "
"should be brought online or left offline when the Cluster "
"Service is started."
) ]
boolean PersistentState ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The RestartAction property describes the action to be taken "
"by the Cluster Service if the resource fails."
),
Values {
"ClusterResourceDontRestart", "ClusterResourceRestartNoNotify",
"ClusterResourceRestartNotify"
} ]
uint32 RestartAction ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The RestartPeriod property defines an interval of time, in "
"milliseconds, during which a specified number of restart "
"attempts can be made on a nonresponsive resource."
) ]
uint32 RestartPeriod ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The RestartThreshold property specifies the maximum number "
"of restart attempts that can be made on a resource within an "
"interval defined by the RestartPeriod property before the "
"Cluster Service initiates the action specified by the "
"RestartAction property."
) ]
uint32 RestartThreshold ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The RetryPeriodOnFailure property specifies the interval of "
"time (in milliseconds) that a resource should remain in a "
"failed state before the Cluster service attempts to restart it."
) ]
uint32 RetryPeriodOnFailure ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The SeparateMonitor property indicates whether the resource "
"requires its own Resource Monitor."
) ]
boolean SeparateMonitor ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The Type property specifies the display name for the resource's "
"type."
) ]
string Type ;
[Read : ToSubClass ,
Description ("The current state of the resource.")
]
uint32 State ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description ("The resource class.")
]
uint32 ResourceClass ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description ("The resource sub class.")
]
uint32 Subclass ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description ("Private properties of the resource.")
]
MSCluster_Property PrivateProperties;
[Read : ToSubClass ,
Description (
"List of crypto checkpoints for this resource."
) ]
string CryptoCheckpoints[] ;
[Read : ToSubClass ,
Description (
"List of registry checkpoints for this resource."
) ]
string RegistryCheckpoints[] ;
[Read : ToSubClass,
Description("The resource can be selected as the quorum resource for the cluster") ]
boolean QuorumCapable;
[Read : ToSubClass,
Description("The resource can be selected as the quorum resource "
"in clusters configured using the -localquorum switch.") ]
boolean LocalQuorumCapable;
[Read : ToSubClass,
Description("The resource cannot be deleted unless all nodes are active.") ]
boolean DeleteRequiresAllNodes;
[Read : ToSubClass,
Description("Indicates that the resource is essential to the cluster and cannot be deleted.") ]
boolean CoreResource;
//***********
//* Methods *
//***********
[Implemented ,
Static ,
Description ("Create a new resource.") : ToSubClass
]
void CreateResource(
[IN, Description ("The group name to receive the resource.") ]
string Group ,
[IN, Description ("The name to assign to the resource.") ]
string ResourceName ,
[IN, Description ("The type of resource to create.") ]
string ResourceType ,
[IN,
Description (
"TRUE if the resource needs a separate resource monitor."
) ]
boolean SeparateMonitor = FALSE
) ;
[Implemented ,
Static ,
Description ("Delete the resource.") : ToSubClass
]
void DeleteResource(
) ;
[Implemented : ToSubClass ,
Description (
"Move the resource to a different group."
) : ToSubClass ]
void MoveToNewGroup(
[IN, Description ("The group name to receive the resource.") ]
string Group
) ;
[Implemented : ToSubClass ,
Description (
"Create a dependency relationship between two resources.") : ToSubClass
]
void AddDependency(
[IN, Description ("The resource that this resource should depend on.") ]
string Resource
) ;
[Implemented : ToSubClass ,
Description (
"Remove a dependency relationship between two resources."
) ]
void RemoveDependency(
[IN,
Description (
"The resource that this resource should no longer depend on."
) ]
string Resource
) ;
[Description ("Take the resource online") : ToSubClass ,
Implemented : ToSubClass
]
void BringOnline(
[IN, Description ("How long (in seconds) the method should wait for the resource to come online.") ]
uint32 TimeOut
) ;
[Description ("Take the resource offline") : ToSubClass ,
Implemented : ToSubClass
]
void TakeOffline(
[IN, Description ("How long (in seconds) the method should wait for the resource to come offline.") ]
uint32 TimeOut
) ;
[Description ("Rename the resource.") : ToSubClass ,
Implemented : ToSubClass
]
void Rename( [IN] string newName ) ;
[Description (
"Force this resource to become unavailable to simulate failure. "
"Used by applications to test their failover configurations."
) : ToSubClass ,
Implemented : ToSubClass
]
void FailResource() ;
[Description ("Add a registry checkpoint to this resource."
) : ToSubClass ,
Implemented : ToSubClass
]
void AddRegistryCheckpoint( [IN] string CheckpointName ) ;
[Description ("Add a registry checkpoint to this resource."
) : ToSubClass ,
Implemented : ToSubClass
]
void RemoveRegistryCheckpoint( [IN] string CheckpointName ) ;
[Description ("Add an encrypted checkpoint to this resource."
) : ToSubClass ,
Implemented : ToSubClass
]
void AddCryptoCheckpoint( [IN] string CheckpointName ) ;
[Description ("Add an encrypted checkpoint to this resource."
) : ToSubClass ,
Implemented : ToSubClass
]
void RemoveCryptoCheckpoint( [IN] string CheckpointName ) ;
}; //*** class MSCluster_Resource
// ===================================================================
// MSCluster_ResourceType
// ===================================================================
[Dynamic ,
Locale (0x409) ,
Provider ("MS_CLUSTER_PROVIDER"),
UUID ("{2F2EF49D-37DD-47c2-8328-6586142B8C99}")
]
class MSCluster_ResourceType : MSCluster_LogicalElement
{
[Key ,
Read : ToSubClass ,
Description (
"The Name property provides the name of the ResourceType."
) ]
string Name ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The DisplayName property is a friendly name for the ResourceType"
"presented in the UI."
) ]
string DisplayName ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The Description property provides comments about the ResourceType."
) ]
string Description ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The AdminExtensions property provides the class identifiers (CLSIDs) "
"for the Cluster Administrator extension DLLs that are associated with "
"the resource type."
) ]
string AdminExtensions[] ;
[Read : ToSubClass ,
Description (
"The DllName property provides the name of the dynamic-link library (DLL)"
" for the resource type."
) ]
string DllName ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The IsAlivePollInterval property provides the recommended interval in "
"milliseconds at which the Cluster Service should poll the resource to "
"determine if it is operational."
) ]
uint32 IsAlivePollInterval ;
[Read : ToSubClass ,
Write : ToSubClass ,
Description (
"The LooksAlivePollInterval property provides the recommended interval "
"in milliseconds at which the Cluster Service should poll the resource "
"to determine if it appears operational."
) ]
uint32 LooksAlivePollInterval ;
[Read : ToSubClass,
Description("The resource can be selected as the quorum resource for the cluster") ]
boolean QuorumCapable;
[Read : ToSubClass,
Description("The resource can be selected as the quorum resource "
"in clusters configured using the -localquorum switch.") ]
boolean LocalQuorumCapable;
[Read : ToSubClass,
Description("The resource cannot be deleted unless all nodes are active.") ]
boolean DeleteRequiresAllNodes;
//***********
//* Methods *
//***********
[Implemented ,
Static ,
Description ("Create a new resource type.")
]
void CreateResourceType(
[IN, Description ("Name of the resource type.") ]
string Name ,
[IN, Description ("Display name of the resource type.") ]
string DisplayName ,
[IN, Description ("Fully qualified name of the resource DLL for the resource type.") ]
string DLLName ,
[IN, Description ("Default millisecond value to be used as the poll interval needed by the new resource type's LooksAlive function.") ]
uint32 LooksAlivePollInterval ,
[IN, Description ("Default millisecond value to be used as the poll interval needed by the new resource type's IsAlive function.") ]
uint32 IsAlivePollInterval
) ;
[Implemented ,
Static ,
Description ("Delete a resource type.")
]
void DeleteResourceType(
) ;
}; //*** class MSCluster_ResourceType
// ===================================================================
// MSCluster_NetworkInterface
// ===================================================================
[Dynamic ,
Locale (0x409) ,
Provider ("MS_CLUSTER_PROVIDER"),
UUID ("{3DE393F8-8FD5-4426-901D-8EE017003A61}")
]
class MSCluster_NetworkInterface : CIM_LogicalDevice
{
[Read : ToSubClass ,
Description (
"The Name property provides the Clustering Service-generated "
"name for the network interface."
) ]
string Name ;
[Read : ToSubClass , Write: ToSubClass, Description (
"The Description property provides comments about the network "
"interface."
) ]
string Description ;
[Read : ToSubClass ,
Description (
"The Adapter property provides the name that is used to uniquely "
"identify the network interface in the cluster."
) ]
string Adapter ;
[Read : ToSubClass ,
Description (
"The Address property provides the primary network address that "
"the node uses for the network interface."
) ]
string Address ;
[Read : ToSubClass ,
Description (
"The Network property provides the name of the network to which "
"the networkinterface is connected."
) ]
string Network ;
[Read : ToSubClass ,
Description ("The current state of the network interface")
]
uint32 State ;
[Read : ToSubClass ,
Write : ToSubClass
]
uint32 Flags ;
[Read : ToSubClass ,
Write : ToSubClass
]
uint32 Characteristics ;
}; //*** class MSCluster_NetworkInterface
// ===================================================================
// MSCluster_ClusterToResourceGroup
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER"),
Locale (0x409) ,
UUID ("{191A06A0-4B96-4914-ABD6-6F7E5F73A191}")
]
class MSCluster_ClusterToResourceGroup : CIM_Component
{
[Override ("GroupComponent") : ToSubClass ,
Read : ToSubClass ,
Min (1) : ToSubClass ,
Max (1) : ToSubClass ,
Description ("The cluster.") : ToSubClass
]
MSCluster_Cluster REF GroupComponent ;
[Override ("PartComponent") : ToSubClass ,
Read : ToSubClass ,
Description ("The group managed by cluster.") : ToSubClass
]
MSCluster_ResourceGroup REF PartComponent ;
}; //*** class MSCluster_ClusterToResourceGroup
// ===================================================================
// MSCluster_ClusterToResource
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER") ,
Description ("Cluster consists of resources." ) : ToSubClass ,
Locale (0x409) ,
UUID ("{89AC25D0-9706-481e-98E0-7DCD7AD8BDD4}")
]
class MSCluster_ClusterToResource : CIM_Component
{
[Override ("GroupComponent") : ToSubClass ,
Read : ToSubClass,
Min (1) : ToSubClass ,
Max (1) : ToSubClass ,
Description ("The cluster." ) : ToSubClass
]
MSCluster_Cluster REF GroupComponent ;
[Override ("PartComponent") : ToSubClass ,
Read : ToSubClass ,
Description ("The resource managed by the cluster.") : ToSubClass
]
MSCluster_Resource REF PartComponent ;
}; //*** class MSCluster_ClusterToResource
// ===================================================================
// MSCluster_ClusterToResourceType
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER") ,
Description (
"Type of resource that supported by the cluster."
) : ToSubClass ,
Locale (0x409) ,
UUID ("{1059D8CA-76CF-46dc-A14B-B7BB546270AD}")
]
class MSCluster_ClusterToResourceType : CIM_Component
{
[Override ("GroupComponent") : ToSubClass ,
Read : ToSubClass ,
Min (1) : ToSubClass ,
Max (1) : ToSubClass ,
Description ("The cluster." ) : ToSubClass
]
MSCluster_Cluster REF GroupComponent ;
[Override ("PartComponent") : ToSubClass ,
Read : ToSubClass ,
Description ("The resourceType supported by cluster.") : ToSubClass
]
MSCluster_ResourceType REF PartComponent ;
}; //*** class MSCluster_ClusterToResourceType
// ===================================================================
// MSCluster_ResourceToPossibleOwner
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER") ,
Description ("A resource can have possible owner nodes. "
"List of the resources and their possible owner nodes."
) : ToSubClass ,
Locale (0x409) ,
UUID ("{f57d5a56-c22a-45c5-a335-c790ee0b7122}")
]
class MSCluster_ResourceToPossibleOwner : CIM_Component
{
[Override ("GroupComponent") : ToSubClass ,
Read : ToSubClass ,
Min (1) : ToSubClass ,
Max (1) : ToSubClass ,
Description ("The resource." ) : ToSubClass
]
MSCluster_Resource REF GroupComponent ;
[Override ("PartComponent") : ToSubClass ,
Read : ToSubClass ,
Description ("The possible owner of this resource.") : ToSubClass
]
MSCluster_Node REF PartComponent ;
}; //*** class MSCluster_ResourceToPossibleOwner
// ===================================================================
// MSCluster_ResourceGroupToPreferredNode
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER") ,
Description ("A resource group can have a preferred nodes list. "
"List of the resource groups and their preferred nodes list."
) : ToSubClass ,
Locale (0x409) ,
UUID ("{3e1e37d2-ad0d-47b8-a802-b94b7e25aa21}")
]
class MSCluster_ResourceGroupToPreferredNode : CIM_Component
{
[Override ("GroupComponent") : ToSubClass ,
Read : ToSubClass ,
Min (1) : ToSubClass ,
Max (1) : ToSubClass ,
Description ("The resource group." ) : ToSubClass
]
MSCluster_ResourceGroup REF GroupComponent ;
[Override ("PartComponent") : ToSubClass ,
Read : ToSubClass ,
Description ("The preferred node for the resource group.") : ToSubClass
]
MSCluster_Node REF PartComponent ;
}; //*** class MSCluster_ResourceGroupToPreferredNode
// ===================================================================
// MSCluster_ClusterToNetwork
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER") ,
Description ("Cluster uses network for communication." ) : ToSubClass ,
Locale (0x409) ,
UUID ("{F3CAB1DD-2F7D-484b-AD54-54187C0A8351}")
]
class MSCluster_ClusterToNetwork : CIM_Component
{
[Override ("GroupComponent") : ToSubClass ,
Read : ToSubClass ,
Min (1) : ToSubClass ,
Max (1) : ToSubClass ,
Description ("The cluster." ) : ToSubClass
]
MSCluster_Cluster REF GroupComponent ;
[Override ("PartComponent"): ToSubClass ,
Read : ToSubClass ,
Description ("The network used cluster for communication.") : ToSubClass
]
MSCluster_Network REF PartComponent ;
}; //*** class MSCluster_ClusterToNetwork
// ===================================================================
// MSCluster_ClusterToNetworkInterface
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER") ,
Description (
"Cluster has many network interfaces installed on nodes it manages."
) : ToSubClass ,
Locale (0x409) ,
UUID ("{CB737284-A6D8-4d46-92F0-20992869A84E}")
]
class MSCluster_ClusterToNetworkInterface : CIM_Component
{
[Override ("GroupComponent") : ToSubClass ,
Read : ToSubClass ,
Min (1) : ToSubClass ,
Max (1) : ToSubClass ,
Description ("The cluster.") : ToSubClass
]
MSCluster_Cluster REF GroupComponent ;
[Override ("PartComponent") : ToSubClass ,
Read : ToSubClass ,
Description ("The network interfaces.") : ToSubClass
]
MSCluster_NetworkInterface REF PartComponent ;
}; //*** class MSCluster_ClusterToNetworkInterface
// ===================================================================
// MSCluster_NetworkToNetworkInterface
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER") ,
Description (
"Network interfaces connected to a network."
) : ToSubClass ,
Locale (0x409) ,
UUID ("{099B1BE4-D4BD-4b56-9815-AA90234B03C6}")
]
class MSCluster_NetworkToNetworkInterface : CIM_Component
{
[Override ("GroupComponent") : ToSubClass ,
Read : ToSubClass ,
Min (1) : ToSubClass ,
Max (1) : ToSubClass ,
Description ("The network.") : ToSubClass
]
MSCluster_Network REF GroupComponent ;
[Override ("PartComponent") : ToSubClass ,
Read : ToSubClass ,
Description ("The network interfaces.") : ToSubClass
]
MSCluster_NetworkInterface REF PartComponent ;
}; //*** class MSCluster_NetworkToNetworkInterface
// ===================================================================
// MSCluster_NodeToActiveGroup
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER") ,
Description ("Groups active on a node.") : ToSubClass ,
Locale (0x409) ,
UUID ("{AE76778B-B9C4-4765-9E61-7A3DC17F919C}")
]
class MSCluster_NodeToActiveGroup : CIM_Component
{
[Override ("GroupComponent") : ToSubClass ,
Read : ToSubClass ,
Min (1) : ToSubClass ,
Description ("The node.") : ToSubClass
]
MSCluster_Node REF GroupComponent ;
[Override ("PartComponent") : ToSubClass ,
Read : ToSubClass ,
Description ("The group that is active on the node.") : ToSubClass
]
MSCluster_ResourceGroup REF PartComponent ;
}; //*** class MSCluster_NodeToActiveGroup
// ===================================================================
// MSCluster_NodeToActiveResource
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER") ,
Description ("Resources active on a node.") : ToSubClass ,
Locale (0x409) ,
UUID ("{4D440386-1CC3-4dca-AFB2-DB74A60A3891}")
]
class MSCluster_NodeToActiveResource : CIM_Component
{
[Override ("GroupComponent") : ToSubClass ,
Read : ToSubClass ,
Min (1) : ToSubClass ,
Max (1) : ToSubClass ,
Description ("The node.") : ToSubClass
]
MSCluster_Node REF GroupComponent ;
[Override ("PartComponent") : ToSubClass ,
Read : ToSubClass ,
Description ("The resource that is active on the node.") : ToSubClass
]
MSCluster_Resource REF PartComponent ;
}; //*** class MSCluster_NodeToActiveResource
// ===================================================================
// MSCluster_NodeToNetworkInterface
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER") ,
Description ("Network interfaces connected to a node.") : ToSubClass ,
Locale (0x409) ,
UUID ("{82459303-B1E9-4ddf-970F-25B17AD2A01B}")
]
class MSCluster_NodeToNetworkInterface : CIM_SystemDevice
{
[Override ("GroupComponent") : ToSubClass ,
Read : ToSubClass ,
Min (1) : ToSubClass ,
Max (1) : ToSubClass ,
Description ("The node.") : ToSubClass
]
MSCluster_Node REF GroupComponent ;
[Override ("PartComponent") : ToSubClass ,
Read : ToSubClass ,
Description ("The group that is active on the node.") : ToSubClass
]
MSCluster_NetworkInterface REF PartComponent ;
}; //*** class MSCluster_NodeToNetworkInterface
// ===================================================================
// MSCluster_ResourceGroupToResource
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER") ,
Description ("Resources in a group.") : ToSubClass ,
Locale (0x409) ,
UUID ("{38DD5882-2610-4ba1-B24E-1CD955B7A6BF}")
]
class MSCluster_ResourceGroupToResource : CIM_Component
{
[Override ("GroupComponent") : ToSubClass ,
Read : ToSubClass ,
Min (1) : ToSubClass ,
Max (1) : ToSubClass ,
Description ("The group.") : ToSubClass
]
MSCluster_ResourceGroup REF GroupComponent ;
[Override ("PartComponent") : ToSubClass ,
Read : ToSubClass ,
Description ("The resources within the group.") : ToSubClass
]
MSCluster_Resource REF PartComponent ;
}; //*** class MSCluster_ResourceGroupToResource
// ===================================================================
// MSCluster_ResourceTypeToResource
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER") ,
Description ("Resources of a particular type.") : ToSubClass ,
Locale (0x409) ,
UUID ("{94F4F3DB-C193-42f1-B6AE-1C74817CD894}")
]
class MSCluster_ResourceTypeToResource : CIM_Component
{
[Override ("GroupComponent") : ToSubClass ,
Read : ToSubClass ,
Description ("The resource type.") : ToSubClass
]
MSCluster_ResourceType REF GroupComponent ;
[Override ("PartComponent") : ToSubClass ,
Read : ToSubClass ,
Min (1) : ToSubClass ,
Max (1) : ToSubClass ,
Description ("The resource.") : ToSubClass
]
MSCluster_Resource REF PartComponent ;
}; //*** class MSCluster_ResourceTypeToResource
// ===================================================================
// MSCluster_ClusterToQuorumResource
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER") ,
Description ("A cluster has a quorum resource.") : ToSubClass ,
Locale (0x409) ,
UUID ("{FF92D220-3079-44d9-A32B-BEB000E05F77}")
]
class MSCluster_ClusterToQuorumResource : CIM_Component
{
[Override ("GroupComponent") : ToSubClass ,
Read : ToSubClass ,
Min (1) : ToSubClass ,
Max (1) : ToSubClass ,
Description ("The cluster.") : ToSubClass
]
MSCluster_Cluster REF GroupComponent ;
[Override ("PartComponent") : ToSubClass,
Read : ToSubClass ,
Min (1) : ToSubClass ,
Max (1) : ToSubClass ,
Description ("The quorum resource.") : ToSubClass
]
MSCluster_Resource REF PartComponent ;
}; //*** class MSCluster_ClusterToQuorumResource
// ===================================================================
// MSCluster_ResourceToDependentResource
// ===================================================================
[Dynamic , Provider ("MS_CLUSTER_PROVIDER") ,
Description ("Dependencies of a resource.") : ToSubClass ,
Locale (0x409) ,
UUID ("{C09C3AB9-E97C-46d8-921F-4B3EA2A7C457}")
]
class MSCluster_ResourceToDependentResource : CIM_Dependency
{
[Override ("Antecedent") : ToSubClass ,
Read : ToSubClass ,
Description ("The Resouce.") : ToSubClass
]
MSCluster_Resource REF Antecedent ;
[Override ("Dependent") : ToSubClass ,
Read : ToSubClass ,
Description ("The resource to be depended on.") : ToSubClass
]
MSCluster_Resource REF Dependent ;
}; //*** class MSCluster_ResourceToDependentResource
// ===================================================================
// MSCluster_ClusterToNode
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER"),
Locale (0x409) ,
UUID ("{1DA51F43-8562-4093-9C3A-D9CBB35CF6D2}")
]
class MSCluster_ClusterToNode : CIM_ParticipatingCS
{
[Override ("Antecedent") : ToSubClass ,
Read : ToSubClass ,
Min (1) : ToSubClass ,
Max (1) : ToSubClass ,
Description ("The cluster." ) : ToSubClass
]
MSCluster_Cluster REF Antecedent ;
[Override ("Dependent"): ToSubClass ,
Read : ToSubClass ,
Description ("Node managed by cluster.") : ToSubClass
]
MSCluster_Node REF Dependent ;
}; //*** class MSCluster_ClusterToNode
// ===================================================================
// MSCluster_NodeToHostedService
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER"),
Locale (0x409) ,
UUID ("{B3C77CEF-67E7-4112-A757-CB072D44EBA3}")
]
class MSCluster_NodeToHostedService : CIM_HostedService
{
[Override ("Antecedent") : ToSubClass ,
Read : ToSubClass ,
Description ("The node hosting the service.") : ToSubClass
]
MSCluster_Node REF Antecedent ;
[Override ("Dependent") : ToSubClass ,
Read : ToSubClass ,
Description ("The hosted service.") : ToSubClass
]
MSCluster_Service REF Dependent ;
}; //*** class MSCluster_NodeToHostedService
// ===================================================================
// MSCluster_Event
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER"),
Locale (0x409) ,
UUID ("{01D7A9DE-B876-4bb6-ABDB-26B67C52D221}")
]
class MSCluster_Event : __ExtrinsicEvent
{
[Description (
"Major event category. Reserved for future use."
) : ToInstance ToSubClass
]
uint32 EventTypeMajor ;
[Description ("Subtype within major category. For EventTypeMajor=0, "
"This contains the Cluster Event mask value as returned by "
"GetClusterNotify."
) : ToInstance ToSubClass
]
uint32 EventTypeMinor ;
[Description (
"Name of object to which this event applies."
) : ToInstance ToSubClass
]
string EventObjectName ;
[Description (
"Type of object to which this event applies."
) : ToInstance ToSubClass
]
uint32 EventObjectType ;
[Description(
"WMI Path of object to which this event applies."
) : ToInstance ToSubClass
]
string EventObjectPath ;
}; //*** class MSCluster_Event
// ===================================================================
// MSCluster_EventObjectAdd
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER"),
Locale (0x409) ,
UUID ("{EDECEF0B-A3C7-4edd-BD75-1CF37F5547B8}")
]
class MSCluster_EventObjectAdd : MSCluster_Event
{
[Description (
"RESERVED FOR FUTURE USE: XML-encoded property names and values "
"for added or changed properties"
) : ToInstance ToSubClass
]
string EventProperty ;
}; //*** class MSCluster_EventObjectAdd
// ===================================================================
// MSCluster_EventObjectRemove
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER"),
Locale (0x409) ,
UUID ("{F12EA54A-75FE-43c9-ACE4-5745D1CA0552}")
]
class MSCluster_EventObjectRemove : MSCluster_Event
{
}; //*** class MSCluster_EventObjectRemove
// ===================================================================
// MSCluster_EventPropertyChange
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER"),
Locale (0x409) ,
UUID ("{4CB6135C-E55D-46fe-8AE4-51E24AF901BD}")
]
class MSCluster_EventPropertyChange : MSCluster_Event
{
[Description (
"RESERVED FOR FUTURE USE: XML-encoded property names and values "
"for added or changed properties"
) : ToInstance ToSubClass
]
string EventProperty ;
}; //*** class MSCluster_EventPropertyChange
// ===================================================================
// MSCluster_EventStateChange
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER"),
Locale (0x409) ,
UUID ("{F68489E2-0301-4594-B25D-613637ECBA1A}")
]
class MSCluster_EventStateChange : MSCluster_Event
{
[Description (
"Current state of object reporting this state change. "
"The value returned is one of the state constants for the "
"cluster object identified by EventObjectType, found in "
"clusapi.h as returned by the relevant GetClusterXXXState "
"APIs."
) ]
uint32 EventNewState ;
}; //*** class MSCluster_EventStateChange
// ===================================================================
// MSCluster_EventGroupStateChange
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER"),
Locale (0x409) ,
UUID ("{D264369A-3133-45eb-AE1D-65B1B641AEAF}")
]
class MSCluster_EventGroupStateChange : MSCluster_EventStateChange
{
[Description ("Current node hosting this group") ]
string EventNode ;
}; //*** class MSCluster_EventGroupStateChange
// ===================================================================
// MSCluster_EventResourceStateChange
// ===================================================================
[Dynamic ,
Provider ("MS_CLUSTER_PROVIDER"),
Locale (0x409) ,
UUID ("{F1163D38-0E12-49ed-B0AF-09C683F89243}")
]
class MSCluster_EventResourceStateChange : MSCluster_EventStateChange
{
[Description ("Current node hosting this resource") ]
string EventNode ;
[Description ("Current group containing this resource") ]
string EventGroup ;
}; //*** class MSCluster_EventResourceStateChange
instance of __InstanceProviderRegistration
{
Provider = $InstanceProv ;
SupportsGet = "TRUE" ;
SupportsPut = "TRUE" ;
SupportsDelete = "TRUE" ;
SupportsEnumeration = "TRUE" ;
QuerySupportLevels = NULL ;
};
instance of __MethodProviderRegistration
{
Provider = $InstanceProv ;
};
instance of __EventProviderRegistration
{
Provider = $EventProv ;
EventQueryList = { "select * from MSCluster_Event" } ;
};
instance of __ClassProviderRegistration
{
Provider = $ClassProv ;
InteractionType = 1 ; // Provider is a push provider
SupportsGet = "TRUE" ;
SupportsEnumeration = "TRUE" ;
ResultSetQueries = { "select * from MSCluster_Resource" } ;
};