1 karl 1.1 // ===================================================================
2 // Title: Event MOF Specification
3 // $State: Preliminary $
4 // $Date: 2004/07/16 18:05:49 $
5 // $Source: /home/dmtf2/dotorg/var/cvs/repositories/dev/Schema/MOF/CIM_Event.mof,v $
6 // $Revision: 1.14 $
7 // ===================================================================
8 //#pragma inLine ("Includes/copyright.inc")
9 // Copyright 1998-2004 Distributed Management Task Force, Inc. (DMTF).
10 // All rights reserved.
11 // DMTF is a not-for-profit association of industry members dedicated
12 // to promoting enterprise and systems management and interoperability.
13 // DMTF specifications and documents may be reproduced for uses
14 // consistent with this purpose by members and non-members,
15 // provided that correct attribution is given.
16 // As DMTF specifications may be revised from time to time,
17 // the particular version and release date should always be noted.
18 //
19 // Implementation of certain elements of this standard or proposed
20 // standard may be subject to third party patent rights, including
21 // provisional patent rights (herein "patent rights"). DMTF makes
22 karl 1.1 // no representations to users of the standard as to the existence
23 // of such rights, and is not responsible to recognize, disclose, or
24 // identify any or all such third party patent right, owners or
25 // claimants, nor for any incomplete or inaccurate identification or
26 // disclosure of such rights, owners or claimants. DMTF shall have no
27 // liability to any party, in any manner or circumstance, under any
28 // legal theory whatsoever, for failure to recognize, disclose, or
29 // identify any such third party patent rights, or for such party's
30 // reliance on the standard or incorporation thereof in its product,
31 // protocols or testing procedures. DMTF shall have no liability to
32 // any party implementing such standard, whether such implementation
33 // is foreseeable or not, nor to any patent owner or claimant, and shall
34 // have no liability or responsibility for costs or losses incurred if
35 // a standard is withdrawn or modified after publication, and shall be
36 // indemnified and held harmless by any party implementing the
37 // standard from any and all claims of infringement by a patent owner
38 // for such implementations.
39 //
40 // For information about patents held by third-parties which have
41 // notified the DMTF that, in their opinion, such patent may relate to
42 // or impact implementations of DMTF standards, visit
43 karl 1.1 // http://www.dmtf.org/about/policies/disclosures.php.
44 //#pragma inLine
45 // ===================================================================
46 // Description: The Event Model describes types of notifications,
47 // whether generic (such as InstanceModification) or
48 // instrumentation-specific (such as AlertIndication).
49 // The model also defines classes to subscribe to/filter
50 // indications and describe their delivery.
51 //
52 // The object classes below are listed in an order that
53 // avoids forward references. Required objects, defined
54 // by other working groups, are omitted.
55 // ===================================================================
56 // 04/19/2004 - 2.9 Preliminary
57 // CR1388 - Add IndicationSubscription for formatting message logs
58 // CR1364 - Source Information Missing for Indications
59 // CR1363 - Indication Subscription Alerts
60 // CR1361 - Updates to InstMethodCall
61 // CR1341 - Add CIM_Error properties to CIM_AlertIndication.
62 // CR1306 - Tying Indications to Logs
63 //
64 karl 1.1 // 01/06/2004 - 2.8 Final
65 // CR1225 - Experimental to Final for Event Model
66 //
67 // 08/03/2003 - 2.8 Preliminary
68 // CR1143 - Missing VALUEMAPS in Event MOF
69 // CR1067 - Clarification of AlertingManagedElement Format
70 // CR0874 - Extend definition of CIM_IndicationHandler to
71 // support the delivery of Asynchronous Operation
72 // responses.
73 // ===================================================================
74
75 #pragma Locale ("en_US")
76
77
78 // ==================================================================
79 // Compile prerequisite: Core MOF
80 // ==================================================================
81
82
83 // ====================================================================
84 // Indication
85 karl 1.1 // ====================================================================
86 [Indication, Abstract, Version ( "2.7.0" ), Description (
87 "CIM_Indication is the abstract root class for all "
88 "notifications about changes in schema, objects and their data, "
89 "and about events detected by providers and instrumentation. "
90 "Subclasses represent specific types of notifications. \n"
91 "\n"
92 "To receive an Indication, a consumer (or subscriber) must "
93 "create an instance of CIM_IndicationFilter describing the "
94 "criteria of the notification, an instance of "
95 "CIM_ListenerDestination describing the delivery of the "
96 "notification, and an instance of CIM_IndicationSubscription "
97 "associating the Filter and Handler.")]
98 class CIM_Indication {
99
100 [Description (
101 "An identifier for the Indication. This property is similar "
102 "to a key value in that it can be used for identification, "
103 "when correlating Indications (see the CorrelatedIndications "
104 "array). Its value SHOULD be unique as long as Alert "
105 "correlations are reported, but MAY be reused or left NULL "
106 karl 1.1 "if no future Indications will reference it in their "
107 "CorrelatedIndications array."),
108 MappingStrings { "Recommendation.ITU|X733.Notification "
109 "identifier" }]
110 string IndicationIdentifier;
111
112 [Description (
113 "A list of IndicationIdentifiers whose notifications are "
114 "correlated with (related to) this one."),
115 MappingStrings { "Recommendation.ITU|X733.Correlated "
116 "notifications" }]
117 string CorrelatedIndications[];
118
119 [Description (
120 "The time and date of creation of the Indication. The "
121 "property may be set to NULL if the entity creating the "
122 "Indication is not capable of determining this information. "
123 "Note that IndicationTime may be the same for two "
124 "Indications that are generated in rapid succession.")]
125 datetime IndicationTime;
126 };
127 karl 1.1
128
129 // ====================================================================
130 // ClassIndication
131 // ====================================================================
132 [Indication, Abstract, Version ( "2.6.0" ), Description (
133 "CIM_ClassIndication is an abstract superclass describing "
134 "changes in the definition of the schema. Subclasses represent "
135 "specific types of change notifications, such as class "
136 "creation, deletion and modification.")]
137 class CIM_ClassIndication : CIM_Indication {
138
139 [Required, Description (
140 "The current definition of the class that is created, "
141 "changed or deleted in the schema. In the case of a "
142 "CIM_ClassDeletion Indication, the definition for the class "
143 "just prior to deletion should be placed in this property."),
144 EmbeddedObject]
145 string ClassDefinition;
146 };
147
148 karl 1.1
149 // ====================================================================
150 // ClassCreation
151 // ====================================================================
152 [Indication, Version ( "2.6.0" ), Description (
153 "CIM_ClassCreation notifies when a new class is defined in the "
154 "schema.")]
155 class CIM_ClassCreation : CIM_ClassIndication {
156 };
157
158
159 // ====================================================================
160 // ClassDeletion
161 // ====================================================================
162 [Indication, Version ( "2.6.0" ), Description (
163 "CIM_ClassDeletion notifies when a class is deleted from the "
164 "schema.")]
165 class CIM_ClassDeletion : CIM_ClassIndication {
166 };
167
168
169 karl 1.1 // ====================================================================
170 // ClassModification
171 // ====================================================================
172 [Indication, Version ( "2.6.0" ), Description (
173 "CIM_ClassModification notifies when a class definition in the "
174 "schema is modified.")]
175 class CIM_ClassModification : CIM_ClassIndication {
176
177 [Required, Description (
178 "A copy of the 'previous' class definition whose change "
179 "generated the Indication. PreviousClassDefinition contains "
180 "an 'older' copy of the class' information, as compared to "
181 "what is found in the ClassDefinition property (inherited "
182 "from ClassIndication)."),
183 EmbeddedObject]
184 string PreviousClassDefinition;
185 };
186
187
188 // ====================================================================
189 // InstIndication
190 karl 1.1 // ====================================================================
191 [Indication, Abstract, Version ( "2.8.1000" ), Description (
192 "CIM_InstIndication is an abstract superclass describing "
193 "changes to instances. Subclasses represent specific types of "
194 "change notifications, such as instance creation, deletion and "
195 "modification.")]
196 class CIM_InstIndication : CIM_Indication {
197
198 [Required, Description (
199 "A copy of the instance that changed to generate the "
200 "Indication. SourceInstance contains the current values of "
201 "the properties selected by the Indication Filter's Query. "
202 "In the case of CIM_InstDeletion, the property values are "
203 "copied before the instance is deleted."),
204 EmbeddedObject]
205 string SourceInstance;
206
207 [Description (
208 "The Model Path of the SourceInstance. The following format "
209 "MUST be used to encode the Model Path: \n"
210 "<NamespacePath>:<ClassName>.<Prop1>=\"<Value1>\", \n"
211 karl 1.1 "<Prop2>=\"<Value2>\", ..."),
212 ModelCorrespondence { "CIM_InstIndication.SourceInstance" }]
213 string SourceInstanceModelPath;
214
215
216 [Description (
217 "The host name or IP address of the SourceInstance."),
218 ModelCorrespondence { "CIM_InstIndication.SourceInstance" }]
219 string SourceInstanceHost;
220 };
221
222
223 // ====================================================================
224 // InstCreation
225 // ====================================================================
226 [Indication, Version ( "2.6.0" ), Description (
227 "CIM_InstCreation notifies when a new instance is created.")]
228 class CIM_InstCreation : CIM_InstIndication {
229 };
230
231
232 karl 1.1 // ====================================================================
233 // InstDeletion
234 // ====================================================================
235 [Indication, Version ( "2.6.0" ), Description (
236 "CIM_InstDeletion notifies when an existing instance is "
237 "deleted.")]
238 class CIM_InstDeletion : CIM_InstIndication {
239 };
240
241
242 // ====================================================================
243 // InstModification
244 // ====================================================================
245 [Indication, Version ( "2.6.0" ), Description (
246 "CIM_InstModification notifies when an instance is modified.")]
247 class CIM_InstModification : CIM_InstIndication {
248
249 [Required, Description (
250 "A copy of the 'previous' instance whose change generated "
251 "the Indication. PreviousInstance contains 'older' values of "
252 "an instance's properties (as compared to SourceInstance), "
253 karl 1.1 "selected by the IndicationFilter's Query."),
254 EmbeddedObject]
255 string PreviousInstance;
256 };
257
258
259 // ====================================================================
260 // InstMethodCall
261 // ====================================================================
262 [Indication, Version ( "2.8.1000" ), Description (
263 "CIM_InstMethodCall notifies when an instance's method is "
264 "invoked.")]
265 class CIM_InstMethodCall : CIM_InstIndication {
266
267 [Required, Description (
268 "The name of the method invoked.")]
269 string MethodName;
270
271 [Description (
272 "The parameters of the method, formatted as an "
273 "EmbeddedObject (with a predefined class name of "
274 karl 1.1 "\"__MethodParameters\"."),
275 EmbeddedObject]
276 string MethodParameters;
277
278 [Description (
279 "ReturnValue's data is dependent on the PreCall property. "
280 "When PreCall is TRUE, this property is NULL describing that "
281 "there is no method return value (since the method has not "
282 "yet executed). When PreCall is FALSE, ReturnValue contains "
283 "a string representation of the method's return value."),
284 ModelCorrespondence { "CIM_InstMethodCall.PreCall",
285 "CIM_InstMethodCall.ReturnValueType", "CIM_InstMethodCall.Error"}]
286 string ReturnValue;
287
288 [Experimental, Description (
289 "The type of the method return value."),
290 ValueMap { "2", "3", "4", "5", "6", "7", "8", "9",
291 "10", "11", "12", "13", "14", "15", "16", ".." },
292 Values { "boolean", "string", "char16", "uint8", "sint8",
293 "uint16", "sint16", "uint32", "sint32", "uint64",
294 "sint64", "datetime", "real32", "real64", "reference",
295 karl 1.1 "DMTF Reserved" },
296 ModelCorrespondence {"CIM_InstMethodCall.ReturnValue" } ]
297 uint16 ReturnValueType;
298
299 [Experimental, Description (
300 "Error's data is dependent on the PreCall "
301 "property. When PreCall is TRUE, this property is NULL "
302 "describing that there is no method Error instances (since "
303 "the method has not yet executed). When PreCall is FALSE, "
304 "Error contains an array of zero or more entries "
305 "containing CIM_ERROR instances represented as an array of "
306 "Embedded Instances."),
307 ModelCorrespondence { "CIM_InstMethodCall.PreCall",
308 "CIM_InstMethodCall.ReturnValue" },
309 EmbeddedInstance ("CIM_Error") ]
310 string Error[];
311
312 [Required, Description (
313 "Boolean indicating whether the Indication is sent before "
314 "the method begins executing (TRUE) or when the method "
315 "completes (FALSE). When TRUE, the inherited property "
316 karl 1.1 "SourceInstance contains the value of the instance (the "
317 "properties defined by the Filter's Query clause), before "
318 "execution of the method. When PreCall is FALSE, "
319 "SourceInstance embeds the instance as it appears after the "
320 "completion of the method.")]
321 boolean PreCall;
322 };
323
324
325 // ====================================================================
326 // InstRead
327 // ====================================================================
328 [Indication, Version ( "2.6.0" ), Description (
329 "CIM_InstRead notifies when an instance is read but not "
330 "modified.")]
331 class CIM_InstRead : CIM_InstIndication {
332 };
333
334
335 // ====================================================================
336 // ProcessIndication
337 karl 1.1 // ====================================================================
338 [Indication, Abstract, Version ( "2.6.0" ), Description (
339 "An abstract superclass for specialized Indication classes, "
340 "addressing specific changes and alerts published by providers "
341 "and instrumentation. Subclasses include AlertIndication (with "
342 "properties such as PerceivedSeverity and ProbableCause), and "
343 "SNMPTrapIndication (which recasts Traps as CIM indications).")]
344 class CIM_ProcessIndication : CIM_Indication {
345 };
346
347
348 // ====================================================================
349 // SNMPTrapIndication
350 // ====================================================================
351 [Indication, Version ( "2.7.0" ), Description (
352 "A concrete class for mapping an SNMP Trap to CIM based on the "
353 "IETF RFC 1157. The usefulness of this class is to describe "
354 "common trap semantics. But, a complete understanding of any "
355 "trap data received relies on the Indicaton recipient having "
356 "access to the sender's MIB. Understanding can be improved by "
357 "mapping the SNMP domain to CIM, and using CIM LifeCycle and "
358 karl 1.1 "standard subclasses of CIM_ProcessIndication.")]
359 class CIM_SNMPTrapIndication : CIM_ProcessIndication {
360
361 [Description (
362 "Type of object generating the trap."),
363 MappingStrings { "PDU.IETF|RFC1157-TRAP-PDU.enterprise" }]
364 string Enterprise;
365
366 [Description (
367 "Address of the object generating the trap."),
368 MappingStrings { "PDU.IETF|RFC1157-TRAP-PDU.agent-addr" }]
369 string AgentAddress;
370
371 [Description (
372 "An enumerated value that describes the generic trap type: \n"
373 "- The coldStart(0) trap signifies that the sending protocol "
374 "entity is reinitializing itself such that the agent's "
375 "configuration or the protocol entity implementation may be "
376 "altered. \n"
377 "- The warmStart(1) trap signifies that the sending protocol "
378 "entity is reinitializing itself such that neither the agent "
379 karl 1.1 "configuration nor the protocol entity implementation is "
380 "altered. \n"
381 "- The linkDown(2) trap signifies that the sending protocol "
382 "recognizes a failure in one of the communication links "
383 "represented in the agent's configuration. The Trap-PDU of "
384 "type linkDown contains as the first element of its "
385 "variable-bindings the name and value of the ifIndex "
386 "instance for the affected interface. \n"
387 "- The linkUp(3) trap signifies that the sending protocol "
388 "entity recognizes that one of the communication links "
389 "represented in the agent's configuration has come up. The "
390 "Trap-PDU of type linkUp contains as the first element of "
391 "its variable-bindings, the name and value of the ifIndex "
392 "instance for the affected interface. \n"
393 "- An authenticationFailure(4) trap signifies that the "
394 "sending protocol entity is the adressee of a protocol "
395 "message that was not properly authenticated. While "
396 "implementations of SNMP must be capable of generating this "
397 "trap, they must also be capable of suppressing the emission "
398 "of such traps via an implementation- specific mechanism. \n"
399 "- An egpNeighborLoss(5) trap signifies that an EGP neighbor "
400 karl 1.1 "for whom the sending protocol entity was an EGP peer has "
401 "been marked as down and the peer relationship no longer "
402 "pertains. The Trap-PDU of type egpNeighborLoss contains as "
403 "the first element of its variable-bindings, the name and "
404 "value of the egpNeighAddr instance for the affected "
405 "neighbor. \n"
406 "- An enterpriseSpecific(6) trap signifies that the sending "
407 "protocol entity recognizes that some enterprise-specific "
408 "event has occurred. The specific-trap field identifies the "
409 "particular trap which occurred."),
410 ValueMap { "0", "1", "2", "3", "4", "5", "6" },
411 Values { "Cold Start", "Warm Start", "Link Down", "Link Up",
412 "Authentication Failure", "EGP Neighbor Loss",
413 "Enterprise Specific" },
414 MappingStrings { "PDU.IETF|RFC1157-TRAP-PDU.generic-trap" }]
415 uint16 GenericTrap;
416
417 [Description (
418 "Specific trap code."),
419 MappingStrings { "PDU.IETF|RFC1157-TRAP-PDU.specific-trap" }]
420 uint32 SpecificTrap;
421 karl 1.1
422 [Description (
423 "Time elapsed between the last (re)intialization of the "
424 "managed entity and the generation of the trap."),
425 MappingStrings { "PDU.IETF|RFC1157-TRAP-PDU.time-stamp" }]
426 datetime TimeStamp;
427
428 [Description (
429 "Object naming information (an OID) from the 'variable "
430 "binding' portion of the Trap. This array is correlated with "
431 "the VarBindSyntaxes and VarBindValues arrays. Each entry is "
432 "related to the entries in the other arrays, that are "
433 "located at the same index. In this way, the variable "
434 "binding's name/syntax/value tuple can be constructed."),
435 MappingStrings { "PDU.IETF|RFC1157-TRAP-PDU.variable-bindings" },
436 ArrayType ( "Indexed" ),
437 ModelCorrespondence { "CIM_SNMPTrapIndication.VarBindSyntaxes",
438 "CIM_SNMPTrapIndication.VarBindValues" }]
439 string VarBindNames[];
440
441 [Description (
442 karl 1.1 "Object syntax information (defined as an enumerated value) "
443 "from the 'variable binding' portion of the Trap. This array "
444 "is correlated with the VarBindNames and VarBindValues "
445 "arrays. Each entry is related to the entries in the other "
446 "arrays, that are located at the same index. In this way, "
447 "the variable binding's name/syntax/value tuple can be "
448 "constructed."),
449 ValueMap { "1", "2", "3", "4", "5", "6", "7", "8" },
450 Values { "Integer", "OctetString", "ObjectIdentifier",
451 "NetworkAddress", "Counter", "Gauge", "TimeTicks", "Opaque" },
452 MappingStrings { "PDU.IETF|RFC1157-TRAP-PDU.variable-bindings" },
453 ArrayType ( "Indexed" ),
454 ModelCorrespondence { "CIM_SNMPTrapIndication.VarBindNames",
455 "CIM_SNMPTrapIndication.VarBindValues" }]
456 uint16 VarBindSyntaxes[];
457
458 [Description (
459 "An OctetString representing object value information from "
460 "the 'variable binding' portion of the Trap. This array is "
461 "correlated with the VarBindNames and VarBindSyntaxes "
462 "arrays. Each entry is related to the entries in the other "
463 karl 1.1 "arrays, that are located at the same index. In this way, "
464 "the variable binding's name/syntax/value tuple can be "
465 "constructed."),
466 OctetString,
467 MappingStrings { "PDU.IETF|RFC1157-TRAP-PDU.variable-bindings" },
468 ArrayType ( "Indexed" ),
469 ModelCorrespondence { "CIM_SNMPTrapIndication.VarBindNames",
470 "CIM_SNMPTrapIndication.VarBindSyntaxes" }]
471 string VarBindValues[];
472 };
473
474
475 // ====================================================================
476 // AlertIndication
477 // ====================================================================
478 [Indication, Version ( "2.8.1000" ), Description (
479 "A concrete superclass for CIM Alert notifications. An "
480 "AlertIndication is a specialized type of CIM_Indication that "
481 "contains information about the severity, cause, recommended "
482 "actions and other data of a real world event. This event and "
483 "its data may or may not be modeled in the CIM class hierarchy.")]
484 karl 1.1 class CIM_AlertIndication : CIM_ProcessIndication {
485
486 [Description (
487 "A short description of the Indication."),
488 MappingStrings { "Recommendation.ITU|X733.Additional text" }]
489 string Description;
490
491 [Description (
492 "The identifying information of the entity (ie, the "
493 "instance) for which this Indication is generated. The "
494 "property contains the path of an instance, encoded as a "
495 "string parameter - if the instance is modeled in the CIM "
496 "Schema. If not a CIM instance, the property contains some "
497 "identifying string that names the entity for which the "
498 "Alert is generated. The path or identifying string is "
499 "formatted per the AlertingElementFormat property."),
500 ModelCorrespondence {
501 "CIM_AlertIndication.AlertingElementFormat" }]
502 string AlertingManagedElement;
503
504 [Description (
505 karl 1.1 "The format of the AlertingManagedElement property is "
506 "interpretable based upon the value of this property. Values "
507 "are defined as: \n"
508 "0 - Unknown. The format is unknown or not meaningfully "
509 "interpretable by a CIM client application. \n"
510 "1 - Other. The format is defined by the value of the "
511 "OtherAlertingElementFormat property. \n"
512 "2 - CIMObjectPath. The format is a CIMObjectPath, with "
513 "format <NamespacePath>:<ClassName>.<Prop1>=\"<Value1>\", "
514 "<Prop2>=\"<Value2>\", . . . specifying an instance in the "
515 "CIM Schema."),
516 ValueMap { "0", "1", "2" },
517 Values { "Unknown", "Other", "CIMObjectPath" },
518 ModelCorrespondence {
519 "CIM_AlertIndication.AlertingManagedElement",
520 "CIM_AlertIndication.OtherAlertingElementFormat" }]
521 uint16 AlertingElementFormat = 0;
522
523 [Description (
524 "A string defining \"Other\" values for "
525 "AlertingElementFormat. This value MUST be set to a non NULL "
526 karl 1.1 "value when AlertingElementFormat is set to a value of 1 "
527 "(\"Other\"). For all other values of AlertingElementFormat, "
528 "the value of this string must be set to NULL."),
529 ModelCorrespondence {
530 "CIM_AlertIndication.AlertingElementFormat" }]
531 string OtherAlertingElementFormat;
532
533 [Required, Description (
534 "Primary classification of the Indication. The following "
535 "values are defined: \n"
536 "1 - Other. The Indication's OtherAlertType property conveys "
537 "its classification. Use of \"Other\" in an enumeration is a "
538 "standard CIM convention. It means that the current "
539 "Indication does not fit into the categories described by "
540 "this enumeration. \n"
541 "2 - Communications Alert. An Indication of this type is "
542 "principally associated with the procedures and/or processes "
543 "required to convey information from one point to another. \n"
544 "3 - Quality of Service Alert. An Indication of this type is "
545 "principally associated with a degradation or errors in the "
546 "performance or function of an entity. \n"
547 karl 1.1 "4 - Processing Error. An Indication of this type is "
548 "principally associated with a software or processing fault. "
549 "\n5 - Device Alert. An Indication of this type is "
550 "principally associated with an equipment or hardware fault. "
551 "\n6 - Environmental Alert. An Indication of this type is "
552 "principally associated with a condition relating to an "
553 "enclosure in which the hardware resides, or other "
554 "environmental considerations. \n"
555 "7 - Model Change. The Indication addresses changes in the "
556 "Information Model. For example, it may embed a Lifecycle "
557 "Indication to convey the specific model change being "
558 "alerted. \n"
559 "8 - Security Alert. An Indication of this type is "
560 "associated with security violations, detection of viruses, "
561 "and similar issues."),
562 ValueMap { "1", "2", "3", "4", "5", "6", "7", "8" },
563 Values { "Other", "Communications Alert",
564 "Quality of Service Alert", "Processing Error",
565 "Device Alert", "Environmental Alert", "Model Change",
566 "Security Alert" },
567 MappingStrings { "Recommendation.ITU|X733.Event type" }]
568 karl 1.1 uint16 AlertType;
569
570 [Description (
571 "A string describing the Alert type - used when the "
572 "AlertType property is set to 1, \"Other State Change\"."),
573 ModelCorrespondence { "CIM_AlertIndication.AlertType" }]
574 string OtherAlertType;
575
576 [Required, Description (
577 "An enumerated value that describes the severity of the "
578 "Alert Indication from the notifier's point of view: \n"
579 "1 - Other, by CIM convention, is used to indicate that the "
580 "Severity's value can be found in the OtherSeverity "
581 "property. \n"
582 "3 - Degraded/Warning should be used when its appropriate to "
583 "let the user decide if action is needed. \n"
584 "4 - Minor should be used to indicate action is needed, but "
585 "the situation is not serious at this time. \n"
586 "5 - Major should be used to indicate action is needed NOW. "
587 "\n6 - Critical should be used to indicate action is needed "
588 "NOW and the scope is broad (perhaps an imminent outage to a "
589 karl 1.1 "critical resource will result). \n"
590 "7 - Fatal/NonRecoverable should be used to indicate an "
591 "error occurred, but it's too late to take remedial action. "
592 "\n2 and 0 - Information and Unknown (respectively) follow "
593 "common usage. Literally, the AlertIndication is purely "
594 "informational or its severity is simply unknown."),
595 ValueMap { "0", "1", "2", "3", "4", "5", "6", "7" },
596 Values { "Unknown", "Other", "Information", "Degraded/Warning",
597 "Minor", "Major", "Critical", "Fatal/NonRecoverable" },
598 MappingStrings { "Recommendation.ITU|X733.Perceived severity" }]
599 uint16 PerceivedSeverity;
600
601 [Description (
602 "Holds the value of the user defined severity value when "
603 "'Severity' is 1 (\"Other\")."),
604 ModelCorrespondence { "CIM_AlertIndication.PerceivedSeverity" }]
605 string OtherSeverity;
606
607 [Required, Description (
608 "An enumerated value that describes the probable cause of "
609 "the situation which resulted in the AlertIndication."),
610 karl 1.1 ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
611 "10", "11", "12", "13", "14", "15", "16", "17", "18", "19",
612 "20", "21", "22", "23", "24", "25", "26", "27", "28", "29",
613 "30", "31", "32", "33", "34", "35", "36", "37", "38", "39",
614 "40", "41", "42", "43", "44", "45", "46", "47", "48", "49",
615 "50", "51", "52", "53", "54", "55", "56", "57", "58", "59",
616 "60", "61", "62", "63", "64", "65", "66", "67", "68", "69",
617 "70", "71", "72", "73", "74", "75", "76", "77", "78", "79",
618 "80", "81", "82", "83", "84", "85", "86", "87", "88", "89",
619 "90", "91", "92", "93", "94", "95", "96", "97", "98", "99",
620 "100", "101", "102", "103", "104", "105", "106", "107",
621 "108", "109", "110", "111", "112", "113", "114", "115",
622 "116", "117", "118", "119", "120", "121", "122", "123",
623 "124", "125", "126", "127", "128", "129", "130" },
624 Values { "Unknown", "Other", "Adapter/Card Error",
625 "Application Subsystem Failure", "Bandwidth Reduced",
626 "Connection Establishment Error",
627 "Communications Protocol Error",
628 "Communications Subsystem Failure",
629 "Configuration/Customization Error", "Congestion",
630 "Corrupt Data", "CPU Cycles Limit Exceeded",
631 karl 1.1 "Dataset/Modem Error", "Degraded Signal",
632 "DTE-DCE Interface Error", "Enclosure Door Open",
633 "Equipment Malfunction", "Excessive Vibration",
634 "File Format Error", "Fire Detected", "Flood Detected",
635 "Framing Error", "HVAC Problem", "Humidity Unacceptable",
636 "I/O Device Error", "Input Device Error", "LAN Error",
637 "Non-Toxic Leak Detected", "Local Node Transmission Error",
638 "Loss of Frame", "Loss of Signal",
639 //31
640 "Material Supply Exhausted", "Multiplexer Problem",
641 "Out of Memory", "Output Device Error",
642 "Performance Degraded", "Power Problem",
643 "Pressure Unacceptable",
644 "Processor Problem (Internal Machine Error)", "Pump Failure",
645 "Queue Size Exceeded", "Receive Failure", "Receiver Failure",
646 "Remote Node Transmission Error",
647 "Resource at or Nearing Capacity", "Response Time Excessive",
648 "Retransmission Rate Excessive", "Software Error",
649 "Software Program Abnormally Terminated",
650 "Software Program Error (Incorrect Results)",
651 "Storage Capacity Problem", "Temperature Unacceptable",
652 karl 1.1 "Threshold Crossed", "Timing Problem", "Toxic Leak Detected",
653 "Transmit Failure", "Transmitter Failure",
654 "Underlying Resource Unavailable", "Version MisMatch",
655 "Previous Alert Cleared",
656 //60
657 "Login Attempts Failed", "Software Virus Detected",
658 "Hardware Security Breached", "Denial of Service Detected",
659 "Security Credential MisMatch", "Unauthorized Access",
660 "Alarm Received", "Loss of Pointer", "Payload Mismatch",
661 "Transmission Error", "Excessive Error Rate",
662 "Trace Problem", "Element Unavailable", "Element Missing",
663 "Loss of Multi Frame", "Broadcast Channel Failure",
664 "Invalid Message Received", "Routing Failure",
665 "Backplane Failure", "Identifier Duplication",
666 "Protection Path Failure", "Sync Loss or Mismatch",
667 "Terminal Problem", "Real Time Clock Failure",
668 "Antenna Failure", "Battery Charging Failure",
669 "Disk Failure", "Frequency Hopping Failure",
670 "Loss of Redundancy", "Power Supply Failure",
671 "Signal Quality Problem",
672 //91
673 karl 1.1 "Battery Discharging", "Battery Failure",
674 "Commercial Power Problem", "Fan Failure", "Engine Failure",
675 "Sensor Failure", "Fuse Failure", "Generator Failure",
676 "Low Battery", "Low Fuel", "Low Water", "Explosive Gas",
677 "High Winds", "Ice Buildup", "Smoke", "Memory Mismatch",
678 "Out of CPU Cycles", "Software Environment Problem",
679 "Software Download Failure", "Element Reinitialized",
680 "Timeout", "Logging Problems", "Leak Detected",
681 "Protection Mechanism Failure",
682 //115
683 "Protecting Resource Failure", "Database Inconsistency",
684 "Authentication Failure", "Breach of Confidentiality",
685 "Cable Tamper", "Delayed Information",
686 "Duplicate Information", "Information Missing",
687 "Information Modification", "Information Out of Sequence",
688 "Key Expired", "Non-Repudiation Failure",
689 "Out of Hours Activity", "Out of Service",
690 "Procedural Error", "Unexpected Information" },
691 MappingStrings { "Recommendation.ITU|X733.Probable cause",
692 "Recommendation.ITU|M3100.probableCause",
693 "ITU-IANA-ALARM-TC" },
694 karl 1.1 ModelCorrespondence {
695 "CIM_AlertIndication.ProbableCauseDescription",
696 "CIM_AlertIndication.EventID",
697 "CIM_AlertIndication.EventTime" }]
698 uint16 ProbableCause;
699
700 [Description (
701 "Provides additional information related to the "
702 "ProbableCause."),
703 ModelCorrespondence { "CIM_AlertIndication.ProbableCause" }]
704 string ProbableCauseDescription;
705
706 [Description (
707 "Provides information on trending - trending up, down or no "
708 "change."),
709 ValueMap { "0", "1", "2", "3", "4" },
710 Values { "Unknown", "Not Applicable", "Trending Up",
711 "Trending Down", "No Change" },
712 MappingStrings { "Recommendation.ITU|X733.TrendIndication" }]
713 uint16 Trending;
714
715 karl 1.1 [Description (
716 "Free form descriptions of the recommended actions to take "
717 "to resolve the cause of the notification."),
718 MappingStrings { "Recommendation.ITU|X733.Proposed repair "
719 "actions" }]
720 string RecommendedActions[];
721
722 [Description (
723 "An instrumentation or provider specific value that "
724 "describes the underlying \"real-world\" event represented "
725 "by the Indication. Two Indications with the same, non NULL "
726 "EventID value are considered, by the creating entity, to "
727 "represent the same event. The comparison of two EventID "
728 "values is only defined for Alert Indications with "
729 "identical, non NULL values of SystemCreateClassName, "
730 "SystemName and ProviderName."),
731 ModelCorrespondence { "CIM_AlertIndication.ProbableCause" }]
732 string EventID;
733
734 [Description (
735 "The time and date the underlying event was first detected. "
736 karl 1.1 "If specified, this property MUST be set to NULL if the "
737 "creating entity is not capable of providing this "
738 "information. This value is based on the notion of local "
739 "date and time of the Managed System Element generating the "
740 "Indication."),
741 ModelCorrespondence { "CIM_AlertIndication.ProbableCause" }]
742 datetime EventTime;
743
744 [Description (
745 "The scoping System's CreationClassName for the Provider "
746 "generating this Indication."),
747 MaxLen ( 256 )]
748 string SystemCreationClassName;
749
750 [Description (
751 "The scoping System's Name for the Provider generating this "
752 "Indication."),
753 MaxLen ( 256 )]
754 string SystemName;
755
756 [Description (
757 karl 1.1 "The name of the Provider generating this Indication."),
758 MaxLen ( 256 )]
759 string ProviderName;
760
761 [Experimental, Description (
762 "A string that uniquely identifies the entity that owns the "
763 "definition of the format of the Message described in this "
764 "instance. OwningEntity MUST include a copyrighted, "
765 "trademarked or otherwise unique name that is owned by the "
766 "business entity or standards body defining the format.")]
767 string OwningEntity;
768
769 [Experimental, Description (
770 "A string that uniquely identifies, within the scope "
771 "of the OwningEntity, the format of the Message. "),
772 ModelCorrespondence{"CIM_AlertIndication.Message",
773 "CIM_AlertIndication.MessageArguments"} ]
774 string MessageID;
775
776 [Experimental, Description (
777 "The formatted message. This message is constructed by "
778 karl 1.1 "applying the dynamic content of the message, described in "
779 "MessageArguments, to the format string uniquely identified, "
780 "within the scope of the OwningEntity, by MessageID. "),
781 ModelCorrespondence{"CIM_AlertIndication.MessageID",
782 "CIM_AlertIndication.MessageArguments"} ]
783 string Message;
784
785 [Experimental, Description (
786 "An array containing the dynamic content of the "
787 "message."),
788 ModelCorrespondence{"CIM_AlertIndication.Message",
789 "CIM_AlertIndication.MessageID"} ]
790 string MessageArguments[];
791 };
792
793
794 // ====================================================================
795 // ThresholdIndication
796 // ====================================================================
797 [Indication, Version ( "2.6.0" ), Description (
798 "A subclass of CIM_AlertIndications carrying additional "
799 karl 1.1 "threshold information related to the notification. This "
800 "subclass is used when one of the ProbableCauses is set to 53, "
801 "\"Threshold Crossed\".")]
802 class CIM_ThresholdIndication : CIM_AlertIndication {
803
804 [Description (
805 "A string describing the threshold or naming the property "
806 "that represents the threshold, if modeled in the CIM "
807 "hierarchy. In the latter case, the value should be written "
808 "as <schema name>_ <class name>.<property name>."),
809 MappingStrings { "Recommendation.ITU|X733.Threshold information"
810 }]
811 string ThresholdIdentifier;
812
813 [Description (
814 "A string holding the current value of the threshold. This "
815 "is modeled as a string for universal mapping, similar to "
816 "the CIM_Sensor properties in the Device Model."),
817 MappingStrings { "Recommendation.ITU|X733.Threshold information"
818 }]
819 string ThresholdValue;
820 karl 1.1
821 [Description (
822 "A string holding the current reading value that exceeds the "
823 "threshold. This is modeled as a string for universal "
824 "mapping, similar to the CIM_Sensor properties in the Device "
825 "Model."),
826 MappingStrings { "Recommendation.ITU|X733.Threshold information"
827 }]
828 string ObservedValue;
829 };
830
831
832 // ====================================================================
833 // AlertInstIndication
834 // ====================================================================
835 [Indication, Version ( "2.6.0" ), Description (
836 "A subclass of CIM_AlertIndication that embeds a CIM_Inst "
837 "Indication. It is used when adding AlertIndication data to a "
838 "LifeCycle Indication.")]
839 class CIM_AlertInstIndication : CIM_AlertIndication {
840
841 karl 1.1 [Override ( "AlertType" ), Description (
842 "The primary classification of the Indication, defaulted to "
843 "7, \"Model Change\", for this class. This is done because: "
844 "1) the primary purpose of AlertInstIndication is to add "
845 "Alert data to a LifeCycle Indication; and 2) LifeCycle "
846 "Indications deal with 'model changes'.")]
847 uint16 AlertType = 7;
848
849 [Required, Description (
850 "Embeds the InstIndication that is part of this Alert "
851 "Indication. Only the properties selected by the Indication "
852 "Filter's Query are included."),
853 EmbeddedObject]
854 string IndObject;
855 };
856
857
858 // ====================================================================
859 // IndicationFilter
860 // ====================================================================
861 [Version ( "2.6.0" ), Description (
862 karl 1.1 "CIM_IndicationFilter defines the criteria for generating an "
863 "Indication and what data should be returned in the Indication. "
864 "It is derived from CIM_ManagedElement to allow modeling the "
865 "dependency of the filter on a specific service.")]
866 class CIM_IndicationFilter : CIM_ManagedElement {
867
868 [Key, Description (
869 "A System's CreationClassName. The Filter is defined in the "
870 "context of a CIM_System, where it is hosted or to which it "
871 "applies. In a future release, a weak relationship will be "
872 "explicitly added to the model. This is not done now to "
873 "allow further refinement of the Filter definition and its "
874 "inheritance tree. Keys are defined now to allow the class "
875 "to be instantiated."),
876 MaxLen ( 256 )]
877 string SystemCreationClassName;
878
879 [Key, Description (
880 "A System's Name. The Filter is defined in the context of a "
881 "CIM_System, where it is hosted or to which it applies. In a "
882 "future release, a weak relationship will be explicitly "
883 karl 1.1 "added to the model. This is not done now to allow further "
884 "refinement of the Filter definition and its inheritance "
885 "tree. Keys are defined now to allow the class to be "
886 "instantiated."),
887 MaxLen ( 256 )]
888 string SystemName;
889
890 [Key, Description (
891 "Indicates the name of the class or the subclass used in the "
892 "creation of an instance. When used with the other key "
893 "properties of this class, it allows all instances of this "
894 "class and its subclasses to be uniquely identified."),
895 MaxLen ( 256 )]
896 string CreationClassName;
897
898 [Key, Description (
899 "The name of the filter.")]
900 string Name;
901
902 [Description (
903 "The path to a local namespace where the Indications "
904 karl 1.1 "originate. If NULL, the namespace of the Filter "
905 "registration is assumed.")]
906 string SourceNamespace;
907
908 [Required, Description (
909 "A query expression that defines the condition(s) under "
910 "which Indications will be generated. For some Indication "
911 "classes, the query expression may also define the instance "
912 "properties to be copied to the CIM_InstIndication's "
913 "SourceInstance and PreviousInstance properties. Query "
914 "language semantics include projection (e.g., Select), range "
915 "(e.g., From) and predicate (e.g., Where)."),
916 ModelCorrespondence { "CIM_IndicationFilter.QueryLanguage" }]
917 string Query;
918
919 [Required, Description (
920 "The language in which the query is expressed.")]
921 string QueryLanguage;
922 };
923
924
925 karl 1.1 // ====================================================================
926 // CIM_ListenerDestination
927 // ====================================================================
928
929 [Abstract, Version ( "2.8.0" ), Description (
930 "The description of a CIM Listener destination. A CIM_Listener "
931 "is an entity capable of receiving CIM Export Messages (e.g., "
932 "Indications or responses to an asynchronous CIM Operation).")]
933 class CIM_ListenerDestination : CIM_ManagedElement {
934
935 [Key, Description (
936 "A System's CreationClassName. A CIM Listener destination is "
937 "defined in context of a CIM_System (e.g., the sending "
938 "system."),
939 MaxLen ( 256 )]
940 string SystemCreationClassName;
941
942 [Key, Description (
943 "A System's Name. A CIM Listener destination is defined in "
944 "context of a CIM_System (e.g., the sending system."),
945 MaxLen ( 256 )]
946 karl 1.1 string SystemName;
947
948 [Key, Description (
949 "Indicates the name of the class or the subclass used in the "
950 "creation of an instance. When used with the other key "
951 "properties of this class, it allows all instances of this "
952 "class and its subclasses to be uniquely identified."),
953 MaxLen ( 256 )]
954 string CreationClassName;
955
956 [Key, Description (
957 "Indicates the name of the CIM Listener destination."),
958 MaxLen ( 256 )]
959 string Name;
960
961 [Description (
962 "Describes the Persistence Type of the destination defined "
963 "by this instance. If the value of PersistenceType is not "
964 "specified, the value of PersistenceType MUST be treated as "
965 "2 (\"Permanent\"). A value of 2 (\"Permanent\") declares "
966 "that the destination is always expected to be available "
967 karl 1.1 "(e.g., system log file). Inability to access this "
968 "destination MUST be treated as an error condition. A value "
969 "of 3 (\"Transient\") indicates that the destination is "
970 "short-lived. Inability to access the destination MAY be "
971 "treated as a normal termination condition. Subscriptions "
972 "with \"Transient\" destinations MAY be deleted when the "
973 "destination terminates or is no longer available."),
974 ValueMap { "1", "2", "3" },
975 Values { "Other", "Permanent", "Transient" },
976 ModelCorrespondence {
977 "CIM_ListenerDestination.OtherPersistenceType" }]
978 uint16 PersistenceType;
979
980 [Description (
981 "A string describing (\"Other\") values for PersistenceType. "
982 "This value MUST be set to a non NULL value when the "
983 "PersistenceType is 1 (\"Other\"). For all other values of "
984 "PersistenceType, the value of OtherPersistenceType MUST be "
985 "NULL."),
986 ModelCorrespondence { "CIM_ListenerDestination.PersistenceType"
987 }]
988 karl 1.1 string OtherPersistenceType;
989 };
990
991 // ====================================================================
992 // CIM_ListenerDestinationCIMXML
993 // ====================================================================
994
995 [Version ( "2.8.0" ), Description (
996 "CIM_ListenerDestinationCIMXML describes the destination for "
997 "CIM Export Messages to be delivered via CIM-XML.")]
998 class CIM_ListenerDestinationCIMXML : CIM_ListenerDestination {
999
1000 [Required, Description (
1001 "The destination URL to which CIM-XML Export Messages are to "
1002 "be delivered.The scheme prefix MUST be consistent with the "
1003 "DMTF CIM-XML specifications.If a scheme prefix is not "
1004 "specified, the scheme \"http:\" MUST be assumed.")]
1005 string Destination;
1006 };
1007
1008 // ====================================================================
1009 karl 1.1 // IndicationHandler
1010 // ====================================================================
1011 [Deprecated { "CIM_ListenerDestination" }, Abstract,
1012 Version ( "2.8.0" ), Description (
1013 "CIM_IndicationHandler is an abstract superclass describing how "
1014 "an Indication is to be processd/delivered/'handled'. This may "
1015 "define a destination and protocol for delivering Indications, "
1016 "or it may define a process to invoke. This class is derived "
1017 "from CIM_ManagedElement to allow modeling the dependency of "
1018 "the Handler on a specific service.")]
1019 class CIM_IndicationHandler : CIM_ListenerDestination {
1020
1021 [Deprecated { "No value" }, Description (
1022 "The name of the entity that created and/or maintains this "
1023 "Handler.")]
1024 string Owner;
1025 };
1026
1027
1028 // ====================================================================
1029 // IndicationHandlerCIMXML
1030 karl 1.1 // ====================================================================
1031 [Deprecated { "CIM_ListenerDestinationCIMXML" }, Version ( "2.8.0" ),
1032 Description (
1033 "CIM_IndicationHandlerCIMXML describes the destination for "
1034 "Indications to be delivered via CIM-XML.")]
1035 class CIM_IndicationHandlerCIMXML : CIM_IndicationHandler {
1036
1037 [Deprecated { "CIM_ListenerDestinationCIMXML.Destination" },
1038 Required, Description (
1039 "The destination URL to which CIM-XML Indication messages "
1040 "are to be delivered. The scheme prefix MUST be consistent "
1041 "with the DMTF CIM-XML Specifications. If a scheme prefix is "
1042 "not specified, the scheme \"http:\" MUST be assumed.")]
1043 string Destination;
1044 };
1045
1046
1047 // ===================================================================
1048 // IndicationSubscription
1049 // ===================================================================
1050 [Association, Version ( "2.8.1000" ), Description (
1051 karl 1.1 "CIM_IndicationSubscription describes a flow of Indications. "
1052 "The flow is specified by the referenced Filter, and directed "
1053 "to the referenced destination or process in the Handler. "
1054 "Property values of the referenced CIM_IndicationFilter "
1055 "instance and CIM_ListenerDestination instance MAY "
1056 "significantly effect the definition of the subscription. E.g., "
1057 "a subscription associated with a \"Transient\" destination MAY "
1058 "be deleted when the destination terminates or is no longer "
1059 "available.")]
1060 class CIM_IndicationSubscription {
1061
1062 [Key, Description (
1063 "The Filter that defines the criteria and data of the "
1064 "possible Indications of this subscription.")]
1065 CIM_IndicationFilter REF Filter;
1066
1067 [Key, Description (
1068 "The Handler addressing delivery of the possible Indications "
1069 "of this subscription.")]
1070 CIM_ListenerDestination REF Handler;
1071
1072 karl 1.1 [Description (
1073 "Defines the desired behavior for a subscription when a "
1074 "fatal error occurs in one of the Indication processing "
1075 "subcomponents (e.g., Indication processor, Indication or "
1076 "instance provider, or Indication handler) and the "
1077 "Indication cannot be successfully sent. Specifically, a "
1078 "failure implies that some aspect of Indication generation, "
1079 "processing or dispatch is no longer functioning and "
1080 "Indications may be lost. If the value of OnFatalErrorPolicy "
1081 "is 2 (\"Ignore\") or not set (NULL), the subscription MUST "
1082 "continue to be processed in a 'best effort' mode. This mode "
1083 "of operation can lead to unpredictable, and potentially "
1084 "misleading results, because Indications may be lost. If the "
1085 "value is 3 (\"Disable\"), the subscription MUST be "
1086 "disabled. With this policy, no new Indications will be "
1087 "generated or dispatched until the subscription is "
1088 "explicitly enabled. This is accomplished via the property, "
1089 "SubscriptionState. If the value is 4 (\"Remove\"), the "
1090 "subscription MUST be deleted. Selecting this policy has the "
1091 "same effect as issuing a DeleteInstance operation on this "
1092 "subscription instance."),
1093 karl 1.1 ValueMap { "1", "2", "3", "4" },
1094 Values { "Other", "Ignore", "Disable", "Remove" }]
1095 uint16 OnFatalErrorPolicy;
1096
1097 [Description (
1098 "A string defining \"Other\" values for OnFatalErrorPolicy. "
1099 "This value MUST be set to a non NULL value when "
1100 "OnFatalErrorPolicy is set to a value of 1 (\"Other\"). For "
1101 "all other values, the OtherOnFatalErrorPolicy MUST be NULL.")]
1102 string OtherOnFatalErrorPolicy;
1103
1104 [Description (
1105 "The FailureTriggerTimeInterval is used by the client to "
1106 "specify a recommended minimum delay before the "
1107 "OnFatalErrorPolicy is implemented."),
1108 Units ( "Seconds" )]
1109 uint64 FailureTriggerTimeInterval;
1110
1111 [Write, Description (
1112 "Indicates the current processing state of the subscription."),
1113 ValueMap { "0", "1", "2", "3", "4" },
1114 karl 1.1 Values { "Unknown", "Other", "Enabled", "Enabled Degraded",
1115 "Disabled" }]
1116 uint16 SubscriptionState;
1117
1118 [Description (
1119 "A string defining \"Other\" values for SubscriptionState. "
1120 "This value MUST be set to a non NULL value when "
1121 "SubscriptionState is set to a value of 1 (\"Other\"). For "
1122 "all other values, the OtherSubscriptionState MUST be NULL.")]
1123 string OtherSubscriptionState;
1124
1125 [Description (
1126 "Date and time of the last state change. This value is based "
1127 "on the notion of local date and time of the Managed System "
1128 "Element running the Indication processing subcomponents.")]
1129 datetime TimeOfLastStateChange;
1130
1131 [Write, Description (
1132 "SubscriptionDuration defines the desired length of the "
1133 "subscription. Indications generated after the duration of "
1134 "the subscription has exceeded SubscriptionDuration MUST NOT "
1135 karl 1.1 "be sent. The duration of a subscription MAY be changed by "
1136 "modifying this property. An expired subscription MAY be "
1137 "deleted and MUST NOT be modified. If the value of "
1138 "SubscriptionDuration is not set, the subscription MUST be "
1139 "treated as having no expiration date."),
1140 Units ( "Seconds" )]
1141 uint64 SubscriptionDuration;
1142
1143 [Description (
1144 "SubscriptionStartTime is the time the subscription was "
1145 "started. The value of this property is computed based on "
1146 "the notion of date and time of the ManagedSystemElement "
1147 "running the Indication processing subcomponents.")]
1148 datetime SubscriptionStartTime;
1149
1150 [Description (
1151 "SubscriptionTimeRemaining is a computed value that provides "
1152 "a snapshot of the time remaining in the Subscription."),
1153 Units ( "Seconds" )]
1154 uint64 SubscriptionTimeRemaining;
1155
1156 karl 1.1 [Description (
1157 "The RepeatNotificationPolicy property defines the desired "
1158 "behavior for handling Indications that report the "
1159 "occurrence of the same underlying event (e.g., the disk is "
1160 "still generating I/O errors and has not yet been repaired). "
1161 "The defined semantics for the RepeatNotificationCount, "
1162 "RepeatNotificationInterval, and RepeatNotificationGap "
1163 "properties depend on the value of RepeatNotificationPolicy, "
1164 "but values for these properties MUST be set if the property "
1165 "is defined for the selected policy. If the value of "
1166 "RepeatNotificationPolicy is 0 (\"Unknown\") or not set, no "
1167 "special processing for repeat Indications is defined by the "
1168 "subscription. The semantics associated with the handling of "
1169 "repeat Indications MAY be defined by the Indication "
1170 "processing subcomponents. If the value of "
1171 "RepeatNotificationPolicy is 2 (\"None\"), special "
1172 "processing of repeat Indications MUST NOT be performed. If "
1173 "the value is 3 (\"Suppress\") the first "
1174 "RepeatNotificationCount Indications, describing the same "
1175 "event, MUST be sent and all subsequent Indications for this "
1176 "event suppressed for the remainder of the time interval "
1177 karl 1.1 "RepeatNotificationInterval. A new interval starts when the "
1178 "next Indication for this event is received. If the value of "
1179 "RepeatNotificationPolicy is 4 (\"Delay\") and an Indication "
1180 "is received, this Indication MUST be suppressed if, "
1181 "including this Indication, RepeatNoticationCount or fewer "
1182 "Indications for this event have been received during the "
1183 "prior time interval defined by RepeatNotificationInterval. "
1184 "If this Indication is the RepeatNotificationCount + 1 "
1185 "Indication, this Indication MUST be sent and all subsequent "
1186 "Indications for this event ignored until the "
1187 "RepeatNotificationGap has elapsed. A "
1188 "RepeatNotificationInterval MAY NOT overlap a "
1189 "RepeatNotificationGap time interval."),
1190 ValueMap { "0", "1", "2", "3", "4" },
1191 Values { "Unknown", "Other", "None", "Suppress", "Delay" }]
1192 uint16 RepeatNotificationPolicy;
1193
1194 [Description (
1195 "A string defining \"Other\" values for "
1196 "RepeatNotificationPolicy. This value MUST be set to a non "
1197 "NULL value when RepeatNotificationPolicy is set to a value "
1198 karl 1.1 "of 1 (\"Other\"). For all other values, the "
1199 "OtherRepeatNotificationPolicy MUST be NULL.")]
1200 string OtherRepeatNotificationPolicy;
1201
1202 [Description (
1203 "Defines the time interval for the repeat notification "
1204 "policy calculation."),
1205 Units ( "Seconds" )]
1206 uint64 RepeatNotificationInterval;
1207
1208 [Description (
1209 "Defines the gap interval for the repeat notification policy "
1210 "calculation."),
1211 Units ( "Seconds" )]
1212 uint64 RepeatNotificationGap;
1213
1214 [Description (
1215 "Defines the count property for the repeat notification "
1216 "policy calculation.")]
1217 uint16 RepeatNotificationCount;
1218
1219 karl 1.1 [Experimental, Description (
1220 "Set to TRUE if a Listener should receive an "
1221 "IndicationSubscriptionAlert if a state change affects the "
1222 "subscription. Otherwise it is set to FALSE.")]
1223 boolean AlertOnStateChange = FALSE;
1224 };
1225
1226 // =============================================================
1227 // IndicationSubscriptionAlert
1228 // =============================================================
1229 [Indication, Experimental, Version ( "2.8.1000" ), Description (
1230 "This class represents a special type of Alert Indication to "
1231 "notify a CIM Listener of a state change affecting referencing "
1232 "subscriptions. A CIM Client would typically not subscribe to "
1233 "one of these Indications, rather it would be sent to any "
1234 "Listener potentially affected by the state change affecting "
1235 "referencing subscriptions.")]
1236 class CIM_IndicationSubscriptionAlert : CIM_AlertIndication {
1237
1238 [Description (
1239 "The type of state change affecting the Indication "
1240 karl 1.1 "Subscription. Possible values include: \n"
1241 "(0) \"Unknown\" - the type of state change is unknown; \n"
1242 "(1) \"Other\" - another type of state change as specified "
1243 "in the OtherIndicationSubscriptionStateChange; \n"
1244 "(2) \"Indication Service Shutdown\" - the Indication "
1245 "Service is shutting down; \n"
1246 "(3) \"Subcomponent Missing\" - a subcomponent of the "
1247 "Indication Service (e.g. a provider) is missing; \n"
1248 "(4) \"Subcomponent Disabled\" - a subcomponent of the "
1249 "Indication Service has been disabled; \n"
1250 "(5) \"Subcomponent Enabled\" - a subcomponent of the "
1251 "Indication Service been enabled (re-enabled)."),
1252 ValueMap { "0", "1", "2", "3", "4", "5" },
1253 Values { "Unknown", "Other", "Indication Service Shutdown",
1254 "Subcomponent Missing", "Subcomponent Disabled",
1255 "Subcomponent Enabled" },
1256 ModelCorrespondence { "CIM_IndicationSubscriptionAlert."
1257 "OtherIndicationSubscriptionStateChange" }]
1258 uint16 IndicationSubscriptionStateChange;
1259
1260
1261 karl 1.1 [Description (
1262 "A string defining \"Other\" values for "
1263 "IndicationSubscriptionStateChange. This value MUST be set "
1264 "to a non NULL value when IndicationSubscriptionStateChange "
1265 "is set to a value of 1 (\"Other\"). For all other values of "
1266 "IndicationSubscriptionStateChange, the value of this string "
1267 "MUST be set to NULL."),
1268 ModelCorrespondence { "CIM_IndicationSubscriptionAlert."
1269 "IndicationSubscriptionStateChange" }]
1270 string OtherIndicationSubscriptionStateChange;
1271
1272
1273 [Description (
1274 "An IndicationSubscriptionAlert potentially affects one or "
1275 "more IndicationSubscriptions. This property lists the "
1276 "IndicationSubscriptions as an array of CIMObjectPaths with "
1277 "format <NamespacePath>:<ClassName>.Filter=\"<Value1>\", "
1278 "Handler=\"<Value2>\". Value1 and Value2 are in turn the "
1279 "CIMObjectPaths of the IndicationFilter and "
1280 "ListenerDestination, thus each having the format "
1281 "<NamespacePath>:<ClassName>.SystemCreationClassName=\"<ValueA>\", "
1282 karl 1.1 "SystemName=\"<ValueB>\",CreationClassName=\"<ValueC>\", "
1283 "Name=\"<ValueD>\". \n"
1284 "This array MUST contain only the subscriptions applicable "
1285 "to the Listener to receive the IndicationSubscriptionAlert."),
1286 ModelCorrespondence { "CIM_IndicationSubscription.Filter",
1287 "CIM_IndicationSubscription.Handler" }]
1288 string IndicationSubscriptions[];
1289 };
1290
1291 // ====================================================================
1292 // CIM_FormattedIndicationSubscription
1293 // ====================================================================
1294 [Association, Experimental, Version ( "2.8.1000" ), Description (
1295 "A subclass of IndicationSubscription that defines the text "
1296 "formatting of Indication information. The "
1297 "TextFormatOwningEntity, TextFormatID, TextFormat, and "
1298 "TextFormatParameters properties are used to describe a "
1299 "human-readable representation of the Indication as defined by "
1300 "the referenced CIM_IndicationFilter. This representation MAY "
1301 "be used by the CIM_ListenerDestination when the intended "
1302 "consumer of the Indication is human. For example, this format "
1303 karl 1.1 "could be used when writing the Indication to a system log or "
1304 "sending an e-mail notification to a system administrator.")]
1305 class CIM_FormattedIndicationSubscription : CIM_IndicationSubscription {
1306
1307 [Description (
1308 "The TextFormatOwningEntity is a string that uniquely "
1309 "identifies the entity that owns the definition of the "
1310 "human-readable format described in this instance. "
1311 "OwningEntity MUST include a copyrighted, trademarked or "
1312 "otherwise unique name that is owned by the business entity "
1313 "or standards body defining the format."),
1314 ModelCorrespondence {
1315 "CIM_FormattedIndicationSubscription.TextFormatID",
1316 "CIM_FormattedIndicationSubscription.TextFormat",
1317 "CIM_FormattedIndicationSubscription.TextFormatParameters" }]
1318 string TextFormatOwningEntity;
1319
1320 [Description (
1321 "An opaque string that uniquely identifies, within the scope "
1322 "of the TextFormatOwningEntity, a human-readable format for "
1323 "representing the Indications described by this "
1324 karl 1.1 "Subscription."),
1325 ModelCorrespondence {
1326 "CIM_FormattedIndicationSubscription.TextFormatOwningEntity",
1327 "CIM_FormattedIndicationSubscription.TextFormat",
1328 "CIM_FormattedIndicationSubscription.TextFormatParameters" }]
1329 string TextFormatID;
1330
1331 [Description (
1332 "A string describing the human-readable format for "
1333 "representing the Indications described by this "
1334 "Subscription. The actual text is constructed by applying "
1335 "the dynamic content, defined in the Indication, to the "
1336 "string specified in this property. /n /n The dynamic "
1337 "content is specified by embedding the following syntax in "
1338 "the appropriate places in the format string: \n"
1339 "\"{\"<index>,<type>\"}\" \n"
1340 "- <index> defines the element of TextFormatParameter that "
1341 "contains the Indication property name to be used to "
1342 "populate the dynamic content. \n"
1343 "- <type> defines the type of the dynamic content. Valid "
1344 "values for <type> are: \'boolean\', \'string\', \'char16\', "
1345 karl 1.1 "\'uint8\', \'sint8\', \'uint16\', \'sint16\', \'uint32\', "
1346 "\'sint32\', \'uint64\', \'sint64\', \'datetime\', "
1347 "\'real32\', \'real64\' or \'ref\'. \n"
1348 "\n"
1349 "As an example, a format string for a UPS AlertIndication "
1350 "could be defined as follows: \"A {4,string} UPS Alert of "
1351 "type {5,uint16} was detected on the device {6,string} on "
1352 "the system {2,string} at {1,datetime}.\".")]
1353 string TextFormat;
1354
1355 [Description (
1356 "An indexed array containing the names of properties defined "
1357 "in the select clause of the associated CIM_IndicationFilter "
1358 "Query. The values of these Indication properties are used "
1359 "to populate the dynamic content of the text message."),
1360 ArrayType ( "Indexed" ),
1361 ModelCorrespondence {
1362 "CIM_FormattedIndicationSubscription.TextFormatOwningEntity",
1363 "CIM_FormattedIndicationSubscription.TextFormatID",
1364 "CIM_FormattedIndicationSubscription.TextFormat" }]
1365 string TextFormatParameters[];
1366 karl 1.1
1367 };
1368
1369 // ====================================================================
1370 // ListenerDestinationLog
1371 // ====================================================================
1372 [Experimental, Version ( "2.8.1000" ), Description (
1373 "CIM_ListenerDestinationLog describes that Indications are "
1374 "delivered to one or more associated CIM_Logs. The specific "
1375 "logs are defined using the association, CIM_LogOfIndication.")]
1376 class CIM_ListenerDestinationLog : CIM_ListenerDestination {
1377 };
1378
1379 // ==================================================================
1380 // LogOfIndication
1381 // ==================================================================
1382 [Association, Experimental, Version ( "2.8.1000" ), Description (
1383 "CIM_LogOfIndication defines an individual log which can record "
1384 "the Indications received from an IndicationSubscription.")]
1385 class CIM_LogOfIndication {
1386
1387 karl 1.1 [Key, Description (
1388 "The ListenerDestination that handles logging of Indication "
1389 "subscriptions to the referenced CIM_Log.")]
1390 CIM_ListenerDestinationLog REF ListenerDestination;
1391
1392 [Key, Min ( 1 ), Description (
1393 "A CIM_Log where Indications are recorded.")]
1394 CIM_Log REF Log;
1395
1396 };
1397 // ==================================================================
1398 // end of file
1399 // ==================================================================
|