// Copyright © 2005, 2006 THALES, SELEX Sistemi Integrati (SI), Themis Computer // and Progeny Systems Corporation. // 06-08-31 - MS - Draft (2) updated to the AMSM Revised Submission // Version 1.8 - 21 August 2006 // 07-03-02 - MS - Draft (3) updated to the AMSM Revised Submission // Version 1.10 - 18 December 2006 & includes // the errata from the 07-01-02 document #pragma locale ("en_US") // =================================================================== // HWFilter // =================================================================== [Description (" The AMS_HWFilter class models filters on " "hardware items. Its attribute defines the filter as:" "- a string containing a regular expression on the name of" " the hardware items and " "- some hardware groups in the hardware must be found." "- some domains in which the hardware must be found." "- some networks in which network links and network " " elements must be found.")] class AMS_HWFilter { string filter; }; // =================================================================== // SWFilter // =================================================================== [Description ("The AMS_SWFilter class models filters on software" "items. Its attribute defines the filter as:" "- a string containing a regular expression on the name of" " the software items and a logical expression on " " attributes of ESE, appl or system (PSM dependant)" "- a list of wanted states.")] class AMS_SWFilter { string filter; }; // =================================================================== // HWManagement // =================================================================== [Description ("This class is the interface to access to the " "logical hardware information. Its operations allow :" "- to subscribe to receive periodically the state of some" " logical hardwares," "- to subscribe on the change of state of some logical" " hardwares," "- an access to other interfaces for a more specific view" " on elements" )] class AMS_HWManagement { [Description("This operation gets all the network links" "matching with the filter in parameter" "The method returns a collection of CIM_ProtocolEndPoint" "Since CIM/MOF spec does not support returning complex" "types, It returns a string type which will have to be" "REFLECTed into the specific return type when the class" "is instantiated")] string GetNetworkLinks( [IN] AMS_HWFilter REF filter); [Description("This operation gets all the networks matching " "with the filter in parameter" "The method returns a collection of CIM_Network" "Since CIM/MOF spec does not support returning complex" "types, It returns a string type which will have to be" "REFLECTed into the specific return type when the class" "is instantiated")] string GetNetworks( [IN] AMS_HWFilter REF filter); [Description("This operation gets all the computer systems" "matching with the filter in parameter" "The method returns a collection of AMS_ComputerSystem" "Since CIM/MOF spec does not support returning complex" "types, It returns a string type which will have to be" "REFLECTed into the specific return type when the class" "is instantiated")] string GetComputerSystems( [IN] AMS_HWFilter REF filter); [Description("This operation gets all the hardware groups" "matching with the filter in parameter" "The method returns a collection of AMS_HardwareGroup" "Since CIM/MOF spec does not support returning complex" "types, It returns a string type which will have to be" "REFLECTed into the specific return type when the class" "is instantiated")] string GetHardwareGroups( [IN] AMS_HWFilter REF filter); [Description("This operation gets all the domains matching " "with the filter in parameter" "The method returns a collection of AMS_Domain" "Since CIM/MOF spec does not support returning complex" "types, It returns a string type which will have to be" "REFLECTed into the specific return type when the class" "is instantiated")] string GetDomains( [IN] AMS_HWFilter REF filter); [Description("This operation subscribes to the modifications of the" "load of the network elements matching with HWfilter. The data" "returned are a collection of AMS_RTHWIndication. This " "operation shall return AMS_BADFILTER if the filter parameter" "is wrong.")] uint16 SubscribeNetworkLoadChange( [IN] AMS_HWFilter REF filter, [OUT] uint32 subscriptionID); [Description("This operation subscribes to receive periodically the" "load of the network elements matching with HWfilter. The data" "returned are a collection of AMS_RTHWIndication. This " "operation shall return AMS_BADFILTER if the filter parameter" "is wrong.")] uint16 SubscribeNetworkLoad ( [IN] uint16 delay, [IN] AMS_HWFilter REF filter, [OUT] uint32 subscriptionID); [Description("This operation create a hardware group from :" "- a physical location," "- subnets (parameter connectivity)," "- device types (parameter devices)." "It shall return:" "- AMS_BADCONNECTIVITY if the 'connectivity' parameter is " " wrong," "- AMS_BADDEVICES if the 'devices' parameter is wrong,")] uint16 CreateHardwareGroup ( [IN] CIM_Location REF location, [IN] string connectivity, [IN] string devices, [OUT] AMS_HardwareGroup REF group); [Description ("This operation gets all locations known by the " "AMS service" "The method returns a collection of CIM_Location" "Since CIM/MOF spec does not support returning complex" "types, It returns a string type which will have to be" "REFLECTed into the specific return type when the class" "is instantiated")] string GetAllLocations (); [Description("This operation subscribes to the modifications of the" "status of the hardware items matching with HWfilter. The data" "returned are a collection of AMS_RTHWIndication. This " "operation shall return AMS_BADFILTER if the filter parameter" "is wrong.")] uint16 SubscribeHWStatusChange( [IN] AMS_HWFilter REF filter, [OUT] uint32 subscriptionID); [Description("This operation subscribes to receive periodically the" "status of the hardware items matching with HWfilter. The data" "returned are a collection of AMS_RTHWIndication. This " "operation shall return AMS_BADFILTER if the filter parameter" "is wrong.")] uint16 SubscribeHWStatus ( [IN] uint16 delay, [IN] AMS_HWFilter REF filter, [OUT] uint32 subscriptionID); [Description ("This operation delete a previous subscription" "demand. This operation shall return AMS_BADSUBSCRIPTIONID" "if the parameter is erroneous")] uint16 Unsubscribe( [IN] uint32 subscriptionID); [ValueMap { "0", "1", "2", "3", "4", "5"}, Values { "Unknown", "AMS_OK", "AMS_BADCONNECTIVITY", "AMS_BADDEVICES", "AMS_BADFILTER", "AMS_BADSUBSCRIPTIONID"}] uint16 HWMgmt_ReturnCode; }; // =================================================================== // RTHWIndication // =================================================================== [Description ("The AMS_RTHWIndication class gather a piece of " "the information brought by callbacks on hardware status." "Its attributes gives an AMS_ComputerSystem and an " "AMS_RTHardwareUtilisation. The second is the status of the" "first")] class AMS_RTHWIndication : CIM_ProcessIndication { }; // =================================================================== // RTSWIndication // =================================================================== [Description ("The AMS_RTSWIndication class gathers a piece of " "the information brought by callbacks on software status." "Its attributes gives an AMS_ExecutableSoftwareElement or an" "AMS_Application or an AMS_SoftwareSystem or an " "AMS_LoadBalancingGroup or an AMS_RedundancyGroup, and an" "AMS_RTSoftwareStatus. The last is the status of one of the" "firsts.")] class AMS_RTSWIndication : CIM_ProcessIndication{ }; // =================================================================== // ConfManagement // =================================================================== [Description ("This class is the interface to access to the" "loading and unloading of configuration files")] class AMS_ConfManagement { [Description ("This operation loads a configuration file")] string LoadConfiguration( [IN] string file); [Description ("This operation unloads a configuration file")] string UnloadConfiguration( [IN] string file); [Description ("This Operation returns the description of the last" "errot that occured with:" "- A string message" "- An errno (the errno of POSIX systems) if available," " (-1) if not" "- An unint16 with the (Success of Failure) error codes" " per paragraph 2.3.12.1 of the spec." "- The element which caused the error")] unint16 getLastError( [OUT] string message, [OUT] uint16 errno, [OUT] unint16 errorCode, [OUT] AMS_ExecutableSoftwareElement element); }; // =================================================================== // DeploymentConfManagement // =================================================================== [Description ("This class is the interface to access to the" "deployment config information. Its operations allow:" "- an access to other interfaces for a more specific " " view on elements.")] class AMS_DeploymentConfManagement { [Description ("This operation gets all the deployment configs" "The method returns a collection of AMS_DeploymentConfiguration" "Since CIM/MOF spec does not support returning complex" "types, It returns a string type which will have to be" "REFLECTed into the specific return type when the class" "is instantiated")] string GetDeploymentConfiguration(); }; // =================================================================== // ESEManagement // =================================================================== [Description ("This class is the interface to access to the " "executable software element information. Its operations" "allow :" "- to subscribe to receive periodically the state of some" " executable software elements," "- to subscribe on the change of state of some executable" " software elements," "- an access to other interfaces for a more specific view" " on elements.")] class AMS_ESEManagement { [Description ("This operation gets all the executable software" "elements matching with the filter in parameter." "The method returns a collection of" "AMS_ExecutableSoftwareElement" "Since CIM/MOF spec does not support returning complex" "types, It returns a string type which will have to be" "REFLECTed into the specific return type when the class" "is instantiated")] string GetESE ( [IN] SWFilter REF filter); [Description ("This operation subscribes to the modifications" "of the status of the executable software elements matching" "with 'filter'. The data returned are a collection of" "AMS_RTHWIndication. This operation shall return" "AMS_BADFILTER if the filter parameter is wrong.")] uint16 SubscribeESEStatusChange( [IN] SWFilter REF filter, [OUT] uint32 subscriptionID); [Description ("This operation subscribes to receive" "periodically the status of the executable software " "elements matching with filter. The data returned" "are a collection of AMS_RTHWIndication. This operation " "shall return AMS_BADFILTER if the filter parameter is" "wrong.")] uint16 SubscribeESEStatus( [IN] uint16 delay, [IN] AMS_SWFilter REF filter, [OUT] uint32 subscriptionID); [Description ("This operation shuts down all the executable " "software elements matching with the filter given in" "parameter. This operation shall return AMS_BADFILTER if " "the filter parameter is wrong. A full explanation of the" "cause of the error shall be logged. ")] uint16 ShutdownESE( [IN] AMS_SWFilter REF filter); [Description ("This operation gets all the executable software" "elements specification." "The method returns a collection of AMS_ESESpec" "Since CIM/MOF spec does not support returning complex" "types, It returns a string type which will have to be" "REFLECTed into the specific return type when the class" "is instantiated")] string GetESESpec (); [Description ("This operation delete a previous subscription" "demand. This operation shall return AMS_BADSUBSCRIPTIONID" "if the parameter is erroneous")] uint16 Unsubscribe( [IN] uint32 subscriptionID); [ValueMap { "0", "1", "2", "3"}, Values { "Unknown", "AMS_OK", "AMS_BADFILTER", "AMS_BADSUBSCRIPTIONID"}] uint16 ESEMgmt_ReturnCode; }; // =================================================================== // ApplicationManagement // =================================================================== [Description ("This class is the interface to access to the" "application information. Its operations allow :" "- to subscribe to receive periodically the state of some" "applications," "- to subscribe on the change of state of some" " applications," "- an access to other interfaces for a more specific view" "on elements.")] class AMS_ApplicationManagement { [Description ("This operation gets all the applications matching" "with the filter in parameter." "The method returns a collection of AMS_Application" "Since CIM/MOF spec does not support returning complex" "types, It returns a string type which will have to be" "REFLECTed into the specific return type when the class" "is instantiated")] string GetApplication ( [IN] AMS_SWFilter REF filter); [Description ("This operation subscribes to the modifications of" "the status of the applications matching with filter. The" "data returned are a collection of AMS_RTSWIndication. This" "operation shall return AMS_BADFILTER if the filter" "parameter is wrong.")] uint16 SubscribeApplicationStatusChange( [IN] AMS_SWFilter REF filter, [OUT] uint32 subscriptionID); [Description ("This operation subscribes to receive periodically" "the status of the applications matching with 'filter'. The" "data returned are a collection of AMS_RTSWIndication. This" "operation shall return AMS_BADFILTER if the filter parameter" "is wrong.")] uint16 SubscribeApplicationStatus( [IN] uint16 delay, [IN] AMS_SWFilter REF filter, [OUT] uint32 subscriptionID); [Description ("This operation delete a previous subscription" "demand. This operation shall return AMS_BADSUBSCRIPTIONID" "if the parameter is erroneous")] uint16 Unsubscribe( [IN] uint32 subscriptionID); [ValueMap { "0", "1", "2", "3"}, Values { "Unknown", "AMS_OK", "AMS_BADFILTER", "AMS_BADSUBSCRIPTIONID"}] uint16 ApplMgmt_ReturnCode; }; // =================================================================== // SystemManagement // =================================================================== [Description ("This class is the interface to access to the" "system information. Its operations allow :" "- to subscribe to receive periodically the state of some" " systems," "- to subscribe on the change of state of some systems," "- an access to other interfaces for a more specific view" " on elements.")] class AMS_SystemManagement { [Description ("This operation gets all the software systems" "matching with the filter in parameter." "The method returns a collection of AMS_SoftwareSystem" "Since CIM/MOF spec does not support returning complex" "types, It returns a string type which will have to be" "REFLECTed into the specific return type when the class" "is instantiated")] string GetSystem( [IN] AMS_SWFilter REF filter); [Description ("This operation subscribes to the modifications of" "the status of the applications matching with filter. The" "data returned are a collection of AMS_RTSWIndication. This" "operation shall return AMS_BADFILTER if the filter" "parameter is wrong.")] uint16 SubscribeSystemStatusChange( [IN] AMS_SWFilter REF filter, [OUT] uint32 subscriptionID); [Description ("This operation subscribes to receive periodically" "the status of the software systems matching with 'filter'." "The data returned are a collection of AMS_RTSWIndication." "This operation shall return AMS_BADFILTER if the filter" "parameter is wrong.")] uint16 SubscribeSystemStatus( [IN] uint16 delay, [IN] AMS_SWFilter REF filter, [OUT] uint32 subscriptionID); [Description ("This operation delete a previous subscription" "demand. This operation shall return AMS_BADSUBSCRIPTIONID" "if the parameter is erroneous")] uint16 Unsubscribe( [IN] uint32 subscriptionID); [ValueMap { "0", "1", "2", "3"}, Values { "Unknown", "AMS_OK", "AMS_BADFILTER", "AMS_BADSUBSCRIPTIONID"}] uint16 SysMgmt_ReturnCode; }; // =================================================================== // RedundancyGroupManagement // =================================================================== [Description ("This class is the interface to access to the" "redundancy group information. Its operations allow :" "- to subscribe to receive periodically the state of some" " redundancy groups," "- to subscribe on the change of state of some redundancy" " groups," "- an access to other interfaces for a more specific view" " on elements.")] class AMS_RedundancyGroupManagement { [Description ("This operation gets all the redundancy groups" "matching with the filter in parameter." "The method returns a collection of AMS_RedundancyGroup" "Since CIM/MOF spec does not support returning complex" "types, It returns a string type which will have to be" "REFLECTed into the specific return type when the class" "is instantiated")] string GetRG ( [IN] AMS_SWFilter REF filter); [Description ("This operation subscribes to the modifications" "of the status of the redundancy groups matching with filter." "The data returned are a collection of AMS_RTSWIndication." "This operation shall return AMS_BADFILTER if the filter" "parameter is wrong.")] uint16 SubscribeRGStatusChange( [IN] AMS_SWFilter REF filter, [OUT] uint32 subscriptionID); [Description ("This operation subscribes to receive periodically" "the status of the redundancy groups matching with 'filter'." "The data returned are a collection of AMS_RTSWIndication." "This operation shall return AMS_BADFILTER if the filter" "parameter is wrong.")] uint16 SubscribeRGStatus ( [IN] uint16 delay, [IN] AMS_SWFilter REF filter, [OUT] uint32 subscriptionID); [Description ("This operation delete a previous subscription" "demand. This operation shall return AMS_BADSUBSCRIPTIONID" "if the parameter is erroneous")] uint16 Unsubscribe( [IN] uint32 subscriptionID); [ValueMap { "0", "1", "2", "3"}, Values { "Unknown", "AMS_OK", "AMS_BADFILTER", "AMS_BADSUBSCRIPTIONID"}] uint16 RGMgmt_ReturnCode; }; // =================================================================== // LoadBalancingManagement // =================================================================== [Description ("This class is the interface to access to the" "load balancing group information. Its operations allow :" "- to subscribe to receive periodically the state of some" " load balancing groups," "- to subscribe on the change of state of some load" " balancing groups," "- an access to other interfaces for a more specific view" " on elements.")] class AMS_LoadBalancingManagement { [Description ("This operation gets all the load balancing groups" "matching with the filter in parameter." "The method returns a collection of AMS_LoadBalancingGroup" "Since CIM/MOF spec does not support returning complex" "types, It returns a string type which will have to be" "REFLECTed into the specific return type when the class" "is instantiated")] string GetLB ( [IN] AMS_SWFilter REF filter); [Description ("This operation subscribes to the modifications" "of the status of the load balancing groups matching with filter." "The data returned are a collection of AMS_RTSWIndication." "This operation shall return AMS_BADFILTER if the filter" "parameter is wrong.")] uint16 SubscribeLBStatusChange( [IN] AMS_SWFilter REF filter, [OUT] uint32 subscriptionID); [Description ("This operation subscribes to receive periodically" "the status of the load balancing groups matching with 'filter'." "The data returned are a collection of AMS_RTSWIndication." "This operation shall return AMS_BADFILTER if the filter" "parameter is wrong.")] uint16 SubscribeLBStatus( [IN] uint16 delay, [IN] AMS_SWFilter REF filter, [OUT] uint32 subscriptionID); [Description ("This operation delete a previous subscription" "demand. This operation shall return AMS_BADSUBSCRIPTIONID" "if the parameter is erroneous")] uint16 Unsubscribe( [IN] uint32 subscriptionID); [ValueMap { "0", "1", "2", "3"}, Values { "Unknown", "AMS_OK", "AMS_BADFILTER", "AMS_BADSUBSCRIPTIONID"}] uint16 LBMgmt_ReturnCode; }; // =================================================================== // SAMManagement // =================================================================== [Description ("This class is the interface to access to the" "Supported application models. Its operations allow :" "- an access to other interfaces for a more specific view" " on elements.")] class AMS_SAMManagement { [Description ("This operation gets all the application models." "The method returns a collection of " "AMS_SupportedApplicationManagement" "Since CIM/MOF spec does not support returning complex" "types, It returns a string type which will have to be " "REFLECTed into the specific return type when the class" "is instantiated")] string GetAllSAM (); }; // =================================================================== // Log // =================================================================== [Description ("The class describes the existence of the log and" "its characteristics. Since, there is just one log, it is a" "singleton. Above all, it is an interface that permits to" "get the administrating and consuming interfaces of the" "normalized lightweight logging service.")] class AMS_Log : CIM_Log { }; // =================================================================== // LogRecord // =================================================================== [Description ("The AMS_LogRecord class is used to instantiate" "records to be aggregated to a Log. It is logically " "equivalent with a LogRecord of the Lightweight Logging" "Service.")] class AMS_LogRecord : CIM_RecordForLog { }; // =================================================================== // LogAdministrator, LogConsumer and LogRecord // from the LightWeight Logging Service (LWLS) // top level class needed to resolve the association reference with // AMS_Log & AMS_LogRecord // =================================================================== class LogAdministrator { uint16 setMaxSize ( [IN] uint32 size); uint16 setLogFullAction ( [IN, Description("parameter type is class LogFullAction from the LWLS")] string Action); uint16 setAdministrativeState ( [IN, Description("parameter type is class AdministrativeState from the LWLS")] string state); uint16 clearLog (); uint16 Destroy; }; class LogConsumer { uint64 getRecordIdFromTime ( [IN] datetime fromtime); [Description("Return type is class LogRecordSequence from the LWLS")] string retrieveById ( [IN, OUT] uint64 currentId, [IN, OUT] uint16 howMany); }; class LogRecord { uint64 id; datetime time; }; // =================================================================== // Associations // =================================================================== // =================================================================== // StateFilters // =================================================================== [Association, Aggregation] class AMS_StateFilters : CIM_Component { [Aggregate, Override("GroupComponent"), Min(1), Max(1)] AMS_SWFilter REF GroupComponent; [Override("PartComponent")] AMS_State REF PartComponent; }; // =================================================================== // NetworkElt // =================================================================== [Association] class AMS_NetworkElt : CIM_Component { [Override("PartComponent"), Min(1), Max(1)] AMS_RTHWIndication REF PartComponent; [Override("GroupComponent"), Min(1), Max(1)] AMS_ComputerSystem REF GroupComponent; }; // =================================================================== // RTHS // =================================================================== [Association, aggregation, Description("An association between" "AMS_Property class in order" "to design platform-specific hardware utilisation. Known "items of the AMS_StdMechanisms enumeration are:" "- HU_NONSTD: special value that denotes a non-normalized" " value (i.e. use the "Name" attribute instead)" "- HU_CPU_LOAD: the corresponding value is the percentage of" " CPU currently used (integer)" "- HU_NETWORK_LOAD: ratio between occupied Bandwidth and" " available Bandwidth (float)" "- HU_NETWORK_BANDWIDTH: available bandwidth in bits per" " second (integer)" "- HU_VIRTUAL_MEMORY: size in bytes of the virtual memory" " (long integer)" "- HU_VIRTUAL_MEMORY_OCCUPATION: size in bytes of the occupied" " virtual memory (long integer)" "- HU_TOTAL_MEMORY: size in byte of the total memory (Virtual" " + Physical) (long integer)" "- HU_TOTAL_MEMORY_OCCUPATION: size in byte of the total" " occupied memory (Virtual + Physical) (long integer)" "- HU_PROCESS_NUMBER: number of running processes (integer)" "- HU_THREAD_NUMBER: number of running threads (integer)" "- HU_DISK: disk size in bytes (long long integer)" "- HU_DISK_OCCUPATION: occupied disk size in bytes" " (long long integer)")] class AMS_RTHS : CIM_Component { [key, aggregate, Override("PartComponent"), Max(1)] AMS_RTHWIndication REF PartComponent; [Override("GroupComponent"), Min(1), Max(1)] AMS_Property REF GroupComponent; ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11"}, Values { "HU_NONSTD", "HU_CPU_LOAD", "HU_NETWORK_LOAD", "HU_NETWORK_BANDWIDTH", "HU_VIRTUAL_MEMORY", "HU_VIRTUAL_MEMORY_OCCUPATION", "HU_TOTAL_MEMORY", "HU_TOTAL_MEMORY_OCCUPATION", "HU_PROCESS_NUMBER", "HU_THREAD_NUMBER", "HU_DISK", "HU_DISK_OCCUPATION"}] uint16 AMSStdHWUtilisation; }; // =================================================================== // NetworkInFilter // =================================================================== [Association] class AMS_NetworkInFilter : CIM_Component { [Override("GroupComponent"), Min(1)] AMS_HWFilter REF GroupComponent; [Override("PartComponent"), Min(1)] CIM_Network REF PartComponent; }; // =================================================================== // GroupsInFilter // =================================================================== [Association] class AMS_GroupsInFilter : CIM_Component { [Override("GroupComponent"), Min(1)] AMS_HWFilter REF GroupComponent; [Override("PartComponent"), Min(1)] AMS_HardwareGroup REF PartComponent; }; // =================================================================== // DomainsInFilter // =================================================================== [Association] class AMS_DomainsInFilter : CIM_Component { [Override("GroupComponent"), Min(1)] AMS_HWFilter REF GroupComponent; [Override("PartComponent"), Min(1)] AMS_Domain REF PartComponent; }; // =================================================================== // ESE // =================================================================== [Association] class AMS_ESE : CIM_Dependency { [Override("Antecedent"), Max(1)] AMS_RTSWIndication REF Antecedent; [Override("Dependent"), Max(1)] AMS_ExecutableSoftwareElement REF Dependent; }; // =================================================================== // AppIndication // =================================================================== [Association] class AMS_AppIndication : CIM_Dependency { [Override("Antecedent"), Max(1)] AMS_RTSWIndication REF Antecedent; [Override("Dependent"), Max(1)] AMS_Application REF Dependent; }; // =================================================================== // System // =================================================================== [Association] class AMS_System : CIM_Dependency { [Override("Antecedent"), Max(1)] AMS_RTSWIndication REF Antecedent; [Override("Dependent"), Max(1)] AMS_SoftwareSystem REF Dependent; }; // =================================================================== // LB // =================================================================== [Association] class AMS_LB : CIM_Dependency { [Override("Antecedent"), Max(1)] AMS_RTSWIndication REF Antecedent; [Override("Dependent"), Max(1)] AMS_LoadBalancingGroup REF Dependent; }; // =================================================================== // RG // =================================================================== [Association] class AMS_RG : CIM_Dependency { [Override("Antecedent"), Max(1)] AMS_RTSWIndication REF Antecedent; [Override("Dependent"), Max(1)] AMS_RedundancyGroup REF Dependent; }; // =================================================================== // RTSW // =================================================================== [Association, Aggregation] class AMS_RTSW : CIM_Dependency { [Aggregate, Override("Antecedent"), Min(1), Max(1)] AMS_RTSWIndication REF Antecedent; [Override("Dependent"), Min(1), Max(1)] AMS_RTSoftwareStatus REF Dependent; }; // =================================================================== // AMS_LogRecordIdentity // =================================================================== [Association, Aggregation] class AMS_LogRecordIdentity : CIM_LogicalIdentity { [Aggregate, Override ( "SystemElement" ), Min (1), Max (1), Description ("The AMS Log Record")] AMS_LogRecord REF SystemElement; [Override ( "SameElement" ), Max (1), Description ("SameElement represents the additional aspects of" "the Lightweight Logging Service Log Record.")] LogRecord REF SameElement; }; // =================================================================== // LogAdministrator // =================================================================== [Association, Aggregation] class AMS_LogAdministrator : CIM_LogicalIdentity { [Key, Aggregate, Override("SystemElement"), Min(1), Max(1)] AMS_Log REF SystemElement; [Override("SameElement"), Min(1), Max(1), Description ("SameElement represents the additional aspects of" "the Lightweight Logging Service Log Administrator.")] LogAdministrator REF SameElement; }; // =================================================================== // LogConsumer // =================================================================== [Association, Aggregation] class AMS_LogConsumer : CIM_LogicalIdentity { [Key, Aggregate, Override("SystemElement"), Min(1), Max(1)] AMS_Log REF SystemElement; [Override("SameElement"), Min(1), Max(1), Description ("SameElement represents the additional aspects of" "the Lightweight Logging Service Log Consumer.")] LogConsumer REF SameElement; };