203 lines
11 KiB
Plaintext

// Copyright (c) 2009 DMTF. All rights reserved.
[Indication, Abstract, Version ( "2.24.0" ),
UMLPackagePath ( "CIM::Event" ),
Description (
"CIM_Indication is the abstract root class for all "
"notifications about changes in schema, objects and their data, "
"and about events detected by providers and instrumentation. "
"Subclasses represent specific types of notifications. \n"
"\n"
"To receive an Indication, a consumer (or subscriber) must "
"create an instance of CIM_IndicationFilter describing the "
"criteria of the notification, an instance of "
"CIM_ListenerDestination describing the delivery of the "
"notification, and an instance of CIM_IndicationSubscription "
"associating the Filter and Handler." )]
class CIM_Indication {
[Description (
"An identifier for the Indication. This property is "
"similar to a key value in that it can be used for "
"identification, when correlating Indications (see the "
"CorrelatedIndications array). Its value SHOULD be unique "
"as long as correlations are reported, but MAY be reused "
"or left NULL if no future Indications will reference it "
"in their CorrelatedIndications array.To ensure "
"uniqueness, the value of IndicationIdentifier should be "
"constructed using the following \"preferred\" algorithm: \n"
"<OrgID>:<LocalID> \n"
"Where <OrgID> and <LocalID> are separated by a colon "
"(:), and where <OrgID> must include a copyrighted, "
"trademarked, or otherwise unique name that is owned by "
"the business entity that is creating or defining the "
"IndicationIdentifier or that is a recognized ID that is "
"assigned to the business entity by a recognized global "
"authority. (This requirement is similar to the <Schema "
"Name>_<Class Name> structure of Schema class names.) In "
"addition, to ensure uniqueness <OrgID> must not contain "
"a colon (:). When using this algorithm, the first colon "
"to appear in IndicationIdentifier must appear between "
"<OrgID> and <LocalID>. \n"
"<LocalID> is chosen by the business entity and should "
"not be re-used to identify different underlying "
"(real-world) elements. \n"
"If the above \"preferred\" algorithm is not used, the "
"defining entity should assure that the resulting "
"IndicationIdentifier is not re-used across any "
"IndicationIdentifiers that are produced by this or other "
"providers for the NameSpace of this instance. \n"
"For DMTF-defined instances, the \"preferred\" algorithm "
"should be used with the <OrgID> set to CIM." ),
MappingStrings {
"Recommendation.ITU|X733.Notification identifier" }]
string IndicationIdentifier;
[Description (
"A list of IndicationIdentifiers whose notifications are "
"correlated with (related to) this one." ),
MappingStrings {
"Recommendation.ITU|X733.Correlated notifications" },
ModelCorrespondence { "CIM_Indication.IndicationIdentifier" }]
string CorrelatedIndications[];
[Description (
"The time and date of creation of the Indication. The "
"property may be set to NULL if the entity creating the "
"Indication is not capable of determining this "
"information. Note that IndicationTime may be the same "
"for two Indications that are generated in rapid "
"succession." )]
datetime IndicationTime;
[Description (
"An enumerated value that describes the severity of the "
"Indication from the notifier\'s point of view: \n"
"1 - Other, by CIM convention, is used to indicate that "
"the Severity\'s value can be found in the OtherSeverity "
"property. \n"
"3 - Degraded/Warning should be used when its appropriate "
"to let the user decide if action is needed. \n"
"4 - Minor should be used to indicate action is needed, "
"but the situation is not serious at this time. \n"
"5 - Major should be used to indicate action is needed "
"NOW. \n"
"6 - Critical should be used to indicate action is needed "
"NOW and the scope is broad (perhaps an imminent outage "
"to a critical resource will result). \n"
"7 - Fatal/NonRecoverable should be used to indicate an "
"error occurred, but it\'s too late to take remedial "
"action. \n"
"2 and 0 - Information and Unknown (respectively) follow "
"common usage. Literally, the Indication is purely "
"informational or its severity is simply unknown." ),
ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", ".." },
Values { "Unknown", "Other", "Information",
"Degraded/Warning", "Minor", "Major", "Critical",
"Fatal/NonRecoverable", "DMTF Reserved" },
MappingStrings { "Recommendation.ITU|X733.Perceived severity" }]
uint16 PerceivedSeverity;
[Description (
"Holds the value of the user defined severity value when "
"\'PerceivedSeverity\' is 1 (\"Other\")." ),
ModelCorrespondence { "CIM_AlertIndication.PerceivedSeverity" }]
string OtherSeverity;
[Description (
"An identifier for the indication filter that selects "
"this indication and causes it to be sent. This property "
"is to be filled out by the indication sending service. "
"The value shall be correlatable with the Name property "
"of the instance of CIM_IndicationFilter describing the "
"criteria of the indication. The value of the "
"IndicationFilterName should be formatted using the "
"following algorithm: < OrgID > : < LocalID >, where < "
"OrgID > and < LocalID > are separated by a colon (:) and "
"< OrgID > shall include a copyrighted, trademarked, or "
"otherwise unique name that is owned by the business "
"entity that is creating or defining the value or that is "
"a registered ID assigned to the business entity by a "
"recognized global authority. In addition, to ensure "
"uniqueness, < OrgID > shall not contain a colon (:).When "
"using this algorithm, the first colon to appear in the "
"value shall appear between < OrgID > and < LocalID >. < "
"LocalID > is chosen by the business entity and shall be "
"used uniquely." ),
ModelCorrespondence { "CIM_IndicationFilter.Name" }]
string IndicationFilterName;
[Description (
"The sequence context portion of a sequence identifier "
"for the indication. The sequence number portion of the "
"sequence identifier is provided by the SequenceNumber "
"property. The combination of both property values "
"represents the sequence identifier for the indication.\n"
"The sequence identifier for the indication enables a CIM "
"listener to identify duplicate indications when the CIM "
"service attempts the delivery retry of indications, to "
"reorder indications that arrive out-of-order, and to "
"detect lost indications.\n"
"If a CIM service does not support sequence identifiers "
"for indications, this property shall be NULL.\n"
"If a CIM service supports sequence identifiers for "
"indications, this property shall be maintained by the "
"CIM service for each registered listener destination, "
"and its value shall uniquely identify the CIM service "
"and the indication service within the CIM service such "
"that restarts of the CIM service and deregistration of "
"listener destinations to the CIM service cause the value "
"to change, without reusing earlier values for a "
"sufficiently long time.\n"
"When retrying the delivery of an indication, this "
"property shall have the same value as in the original delivery.\n"
"To guarantee this uniqueness, the property value should "
"be constructed using the following format (defined in "
"ABNF): sequence-context = indication-service-name \"#\" "
"cim-service-start-id \"#\" listener-destination-creation-time\n"
"Where: indication-service-name is the value of the Name "
"property of the CIM_IndicationService instance "
"responsible for delivering the indication. "
"cim-service-start-id is an identifier that uniquely "
"identifies the CIM service start, for example via a "
"timestamp of the start time, or via a counter that "
"increases for each start or restart. "
"listener-destination-creation-time is a timestamp of the "
"creation time of the CIM_ListenerDestination instance "
"representing the listener destination.\n"
"Since this format is only a recommendation, CIM clients "
"shall treat the value as an opaque identifier for the "
"sequence context and shall not rely on this format." ),
ModelCorrespondence { "CIM_Indication.SequenceNumber" }]
string SequenceContext;
[Description (
"The sequence number portion of a sequence identifier for "
"the indication. The sequence context portion of the "
"sequence identifier is provided by the SequenceContext "
"property. The combination of both property values "
"represents the sequence identifier for the indication.\n"
"The sequence identifier for the indication enables a CIM "
"listener to identify duplicate indications when the CIM "
"service attempts the delivery retry of indications, to "
"reorder indications that arrive out-of-order, and to "
"detect lost indications.\n"
"If a CIM service does not support sequence identifiers "
"for indications, this property shall be NULL.\n"
"If a CIM service supports sequence identifiers for "
"indications, this property shall be maintained by the "
"CIM service for each registered listener destination, "
"and its value shall uniquely identify the indication "
"within the sequence context provided by SequenceContext. "
"It shall start at 0 whenever the sequence context string "
"changes. Otherwise, it shall be increased by 1 for every "
"new indication to that listener destination, and it "
"shall wrap to 0 when the value range is exceeded.\n"
"When retrying the delivery of an indication, this "
"property shall have the same value as in the original "
"delivery." ),
ModelCorrespondence { "CIM_Indication.SequenceContext" }]
sint64 SequenceNumber;
};