summaryrefslogtreecommitdiffstats
path: root/Schemas/CIM236/DMTF/System/CIM_MessageLog.mof
diff options
context:
space:
mode:
Diffstat (limited to 'Schemas/CIM236/DMTF/System/CIM_MessageLog.mof')
-rw-r--r--Schemas/CIM236/DMTF/System/CIM_MessageLog.mof527
1 files changed, 527 insertions, 0 deletions
diff --git a/Schemas/CIM236/DMTF/System/CIM_MessageLog.mof b/Schemas/CIM236/DMTF/System/CIM_MessageLog.mof
new file mode 100644
index 0000000..90e32ef
--- /dev/null
+++ b/Schemas/CIM236/DMTF/System/CIM_MessageLog.mof
@@ -0,0 +1,527 @@
+// Copyright (c) 2005 DMTF. All rights reserved.
+ [Version ( "2.14.0" ),
+ UMLPackagePath ( "CIM::System::Logs" ),
+ Description (
+ "MessageLog represents any type of event, error or "
+ "informational register or chronicle. The object describes the "
+ "existence of the log and its characteristics. Several methods "
+ "are defined for retrieving, writing and deleting log entries, "
+ "and maintaining the log. This type of log uses iterators to "
+ "access the log records, whereas its peer class, RecordLog, "
+ "uses more abstracted access mechanisms." )]
+class CIM_MessageLog : CIM_Log {
+
+ [Key, Description (
+ "CreationClassName indicates the name of the class or the "
+ "subclass used in the creation of an instance. When used "
+ "with the other key properties of this class, this "
+ "property allows all instances of this class and its "
+ "subclasses to be uniquely identified." ),
+ MaxLen ( 256 )]
+ string CreationClassName;
+
+ [Key, Override ( "Name" ),
+ Description (
+ "The inherited Name serves as part of the key (a unique "
+ "identifier) for the MessageLog instance." ),
+ MaxLen ( 256 )]
+ string Name;
+
+ [Description (
+ "An array of integers indicating the Log capabilities. "
+ "Information such as \"Write Record Supported\" (value= "
+ "2) or \"Variable Length Records Supported\" (8) is "
+ "specified in this property." ),
+ ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
+ "10" },
+ Values { "Unknown", "Other", "Write Record Supported",
+ "Delete Record Supported", "Can Move Backward in Log",
+ "Freeze Log Supported", "Clear Log Supported",
+ "Supports Addressing by Ordinal Record Number",
+ "Variable Length Records Supported",
+ "Variable Formats for Records",
+ "Can Flag Records for Overwrite" },
+ ArrayType ( "Indexed" ),
+ ModelCorrespondence {
+ "CIM_MessageLog.CapabilitiesDescriptions" }]
+ uint16 Capabilities[];
+
+ [Description (
+ "An array of free-form strings providing more detailed "
+ "explanations for any of the Log features indicated in "
+ "the Capabilities array. Note, each entry of this array "
+ "is related to the entry in the Capabilities array that "
+ "is located at the same index." ),
+ ArrayType ( "Indexed" ),
+ ModelCorrespondence { "CIM_MessageLog.Capabilities" }]
+ string CapabilitiesDescriptions[];
+
+ [Description (
+ "The maximum size, in bytes, to which the Log can grow. "
+ "If there is no maximum, then MaxLogSize should be set to "
+ "0." ),
+ Units ( "Bytes" ),
+ PUnit ( "byte" )]
+ uint64 MaxLogSize;
+
+ [Description (
+ "The size of the Log header, in bytes, if one is present. "
+ "If there is no Log header, then this property should be "
+ "set to 0. Headers may include general information about "
+ "the Log such as the current number of records, time of "
+ "last update, or a pointer to the location of the first "
+ "Log entry. Note that this property is NOT the size of "
+ "the header for an individual Log entry. The latter is "
+ "described by the property, SizeOfRecordHeader." ),
+ Units ( "Bytes" ),
+ PUnit ( "byte" )]
+ uint64 SizeOfHeader;
+
+ [Description (
+ "If the SizeOfHeader property is non-zero, this property "
+ "describes the structure and format of the Log header. It "
+ "is a free-form string. If the SizeOfHeader property is "
+ "0, then the information in this property is undefined." )]
+ string HeaderFormat;
+
+ [Description (
+ "Maximum size, in bytes, to which an individual Log entry "
+ "(record) can grow - if the Capabilities array includes a "
+ "value of 7 (\"Variable Length Records Supported\"). If "
+ "the Capabilities array does not include a 7, then the "
+ "Log only supports fixed length entries. The size of "
+ "these entries is described by this property." ),
+ Units ( "Bytes" ),
+ PUnit ( "byte" )]
+ uint64 MaxRecordSize;
+
+ [Description (
+ "The size of the header for the Log\'s individual "
+ "entries, in bytes, if record headers are defined. If "
+ "there are no record headers, then this property should "
+ "be set to 0. Record headers may include information such "
+ "as the type of the Log entry, the date/time that the "
+ "entry was last updated, or a pointer to the start of "
+ "optional data. Note that this property defines the "
+ "header size for individual records in the Log, while the "
+ "SizeOfHeader property describes the Log\'s overall "
+ "header, typically located at the start of the "
+ "MessageLog." ),
+ Units ( "Bytes" ),
+ PUnit ( "byte" )]
+ uint64 SizeOfRecordHeader;
+
+ [Description (
+ "If the SizeOfRecordHeader property is non-zero, this "
+ "property describes the structure and format of the "
+ "record headers. It is a free-form string. If the "
+ "SizeOfRecordHeader property is 0, then the information "
+ "in this property is undefined." )]
+ string RecordHeaderFormat;
+
+ [Override ( "OverwritePolicy" ),
+ Description (
+ "An enumeration describing the behavior of the Log, when "
+ "it becomes full or near full. For example, the Log may "
+ "wrap (value=2) or may simply stop recording entries "
+ "(value =7). \n"
+ "\n"
+ "Some of the property\'s possible values need further "
+ "explanation: \n"
+ "3=\"Clear When Near Full\" indicates that all of the "
+ "Log\'s entries will be deleted when a specified record "
+ "capacity is reached. The capacity is specified in "
+ "percentage, using the property, PercentageNearFull. "
+ "\'Near Full\' may be less than 100% if the Log takes "
+ "time to clear, and a position should always be available "
+ "for new records. \n"
+ "4=\"Overwrite Outdated When Needed\" describes that Log "
+ "entries (timestamped later than the date/time specified "
+ "in the property, TimeWhenOutdated) can be overwritten. \n"
+ "5=\"Remove Outdated Records\" specifies that records "
+ "(timestamped later than the date/time specified in the "
+ "property, TimeWhenOutdated) are logically and/or "
+ "physically removed from the Log. \n"
+ "6=\"Overwrite Specific Records\" indicates that "
+ "specially flagged records may be overwritten. This "
+ "property only makes sense when the Capabilities array "
+ "includes a value of 10, \"Can Flag Records for "
+ "Overwrite\"." ),
+ ValueMap { "0", "1", "2", "3", "4", "5", "6", "7" },
+ Values { "Unknown", "Other", "Wraps When Full",
+ "Clear When Near Full", "Overwrite Outdated When Needed",
+ "Remove Outdated Records", "Overwrite Specific Records",
+ "Never Overwrite" },
+ ModelCorrespondence {
+ "CIM_MessageLog.OtherPolicyDescription",
+ "CIM_MessageLog.TimeWhenOutdated",
+ "CIM_MessageLog.PercentageNearFull" }]
+ uint16 OverwritePolicy;
+
+ [Description (
+ "When the OverwritePolicy specifies a value of 1 "
+ "(\"Other\"), the Log\'s behavior can be explained using "
+ "this property. If OverwritePolicy is not 1, then this "
+ "property\'s contents are undefined." ),
+ ModelCorrespondence { "CIM_MessageLog.OverwritePolicy" }]
+ string OtherPolicyDescription;
+
+ [Description (
+ "If the OverwritePolicy is based on \'outdated\' records "
+ "(values 4 or 5), this property defines when a Log entry "
+ "is considered to be outdated - either by time interval "
+ "or at a specific date and time." ),
+ ModelCorrespondence { "CIM_MessageLog.OverwritePolicy" }]
+ datetime TimeWhenOutdated;
+
+ [Description (
+ "If the OverwritePolicy is based on clearing records when "
+ "the Log is near full (value=3), this property defines "
+ "the record capacity (in percentage) that is considered "
+ "to be \'near full\'." ),
+ Units ( "Percent" ),
+ ModelCorrespondence { "CIM_MessageLog.OverwritePolicy" },
+ PUnit ( "percent" )]
+ uint8 PercentageNearFull;
+
+ [Description (
+ "An enumeration describing the last change to the MessageLog."
+ ),
+ ValueMap { "0", "1", "2", "3", "4" },
+ Values { "Unknown", "Add", "Delete", "Modify", "Log Cleared" }]
+ uint16 LastChange;
+
+ [Description (
+ "When a change is made to the Log, the date/time of that "
+ "modification is captured. This property could be used to "
+ "event against any update to the MessageLog." )]
+ datetime TimeOfLastChange;
+
+ [Description (
+ "When a change is made to the Log, the record number that "
+ "was modified is captured." )]
+ uint64 RecordLastChanged;
+
+ [Description (
+ "Boolean indicating that the Log is currently frozen and "
+ "modifications are not allowed." )]
+ boolean IsFrozen;
+
+ [Description (
+ "An enumeration describing the character set used to "
+ "record data in the individual Log entries. For example, "
+ "the Log records may contain ASCII data (value=2), or be "
+ "raw octet strings (value=10)." ),
+ ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
+ "10", "11" },
+ Values { "Unknown", "Other", "ASCII", "Unicode", "ISO2022",
+ "ISO8859", "Extended UNIX Code", "UTF-8", "UCS-2",
+ "Bitmapped Data", "OctetString",
+ "Defined by Individual Records" }]
+ uint16 CharacterSet;
+
+
+ [Description (
+ "Requests that an iteration of the MessageLog be "
+ "established and that the iterator be set to the first "
+ "entry in the Log. An identifier for the iterator is "
+ "returned as an output parameter of the method. \n"
+ "\n"
+ "Regarding iteration, you have 2 choices: 1) Embed "
+ "iteration data in the method call, and allow "
+ "implementations to track/ store this data manually; or, "
+ "2) Iterate using a separate object (for example, class "
+ "ActiveIterator) as an iteration agent. The first "
+ "approach is used here for interoperability. The second "
+ "requires an instance of the Iterator object for EACH "
+ "iteration in progress. 2\'s functionality could be "
+ "implemented underneath 1. \n"
+ "\n"
+ "The return value from PositionToFirstRecord should be 0 "
+ "if the request was successfully executed, 1 if the "
+ "request is not supported and some other value if an "
+ "error occurred. In a subclass, the set of possible "
+ "return codes could be specified, using a ValueMap "
+ "qualifier on the method. The strings to which the "
+ "ValueMap contents are \'translated\' may also be "
+ "specified in the subclass as a Values array qualifier." )]
+ uint32 PositionToFirstRecord(
+ [IN ( false ), OUT, Description (
+ "An identifier for the iterator." )]
+ string IterationIdentifier);
+
+ [Description (
+ "Requests that the Log\'s iteration identifier be "
+ "advanced or retreated a specific number of records, or "
+ "set to the entry at a specified numeric location. These "
+ "two different behaviors are accomplished using the input "
+ "parameters of the method. Advancing or retreating is "
+ "achieved by setting the MoveAbsolute boolean to FALSE, "
+ "and then specifying the number of entries to advance or "
+ "retreat as positive or negative values in the "
+ "RecordNumber parameter. Moving to a specific record "
+ "number is accomplished by setting the MoveAbsolute input "
+ "parameter to TRUE, and then placing the record number "
+ "into the RecordNumber parameter. This can only be done "
+ "if the Capabilities array includes a value of 7, "
+ "\"Supports Addressing by Ordinal Record Number\". \n"
+ "\n"
+ "After the method completes and if ordinal record numbers "
+ "are supported (the Capabilities array includes a 7), the "
+ "current record number is returned in the RecordNumber "
+ "output parameter. Otherwise, the value of the parameter "
+ "is undefined. \n"
+ "\n"
+ "IterationIdentifier is defined as an Input/Output method "
+ "parameter to allow the Log to embed state information in "
+ "the Identifier and potentially let the identifier be "
+ "maintained by the using application. \n"
+ "\n"
+ "The return value from PositionAtRecord should be 0 if "
+ "the request was successfully executed, 1 if the request "
+ "is not supported and some other value if an error "
+ "occurred. If the request is not supported, check the "
+ "Capabilities array regarding support for ordinal record "
+ "number addressing and backward movement in the Log "
+ "(values 7 and 4, respectively). \n"
+ "\n"
+ "Note: In a subclass, the set of possible return codes "
+ "could be described using a ValueMap qualifier on the "
+ "method. The strings to which the ValueMap contents are "
+ "\'translated\' may also be specified in the subclass as "
+ "a Values array qualifier." )]
+ uint32 PositionAtRecord(
+ [IN, OUT, Description (
+ "An identifier for the iterator." )]
+ string IterationIdentifier,
+ [IN, Description (
+ "Advancing or retreating the IterationIdentifier is "
+ "achieved by setting the MoveAbsolute boolean to "
+ "FALSE, and specifying the number of entries to "
+ "advance or retreat as positive or negative values "
+ "in the RecordNumber parameter. Moving to a "
+ "specific record number is accomplished by setting "
+ "the MoveAbsolute parameter to TRUE, and placing "
+ "the record number into the RecordNumber parameter." )]
+ boolean MoveAbsolute,
+ [IN, OUT, Description (
+ "The relative or absolute record number." )]
+ sint64 RecordNumber);
+
+ [Description (
+ "Requests that the record indicated by the "
+ "IterationIdentifier be retrieved from the MessageLog. "
+ "After retrieval, the IterationIdentifier may be advanced "
+ "to the next record by setting the PositionToNext input "
+ "parameter to TRUE. Two output parameters are defined for "
+ "the method - RecordData which holds the contents of the "
+ "Log entry (as an array of bytes that can be recast to an "
+ "appropriate format), and RecordNumber which returns the "
+ "current record number addressed via the Iteration "
+ "Identifier. The RecordNumber parameter is only "
+ "defined/valid when the Capabilities array indicates that "
+ "ordinal record number addressing is supported (a value "
+ "of 7). \n"
+ "\n"
+ "IterationIdentifier is defined as an Input/Output method "
+ "parameter to allow the Log to embed state information in "
+ "the Identifier and potentially let the identifier be "
+ "maintained by the using application. \n"
+ "\n"
+ "The return value from GetRecord should be 0 if the "
+ "request was successfully executed, 1 if the request is "
+ "not supported, and some other value if an error "
+ "occurred. In a subclass, the set of possible return "
+ "codes could be specified, using a ValueMap qualifier on "
+ "the method. The strings to which the ValueMap contents "
+ "are \'translated\' may also be specified in the subclass "
+ "as a Values array qualifier." )]
+ uint32 GetRecord(
+ [IN, OUT, Description (
+ "An identifier for the iterator." )]
+ string IterationIdentifier,
+ [IN, Description (
+ "Boolean indicating that the Iteration Identifier "
+ "should be advanced to the next record, after "
+ "retrieving the current Log entry." )]
+ boolean PositionToNext,
+ [IN ( false ), OUT, Description ( "The record number." )]
+ uint64 RecordNumber,
+ [IN ( false ), OUT, Description ( "The record data." )]
+ uint8 RecordData[]);
+
+ [Description (
+ "Requests that the record indicated by the "
+ "IterationIdentifier be deleted from the MessageLog. "
+ "After deletion, the Iteration Identifier may be advanced "
+ "to the next record by setting the PositionToNext input "
+ "parameter to TRUE. If set to FALSE, then the "
+ "IterationIdentifier will be positioned at the previous "
+ "record. Two output parameters are defined for the method "
+ "- RecordData which holds the contents of the deleted Log "
+ "entry (as an array of bytes that can be recast to an "
+ "appropriate format or discarded), and RecordNumber which "
+ "returns the current record number addressed via the "
+ "IterationIdentifier. The RecordNumber parameter is only "
+ "defined/valid when the Capabilities array indicates that "
+ "ordinal record number addressing is supported (a value "
+ "of 7). \n"
+ "\n"
+ "IterationIdentifier is defined as an Input/Output method "
+ "parameter to allow the Log to embed state information in "
+ "the Identifier and potentially let the identifier be "
+ "maintained by the using application. \n"
+ "\n"
+ "The return value from DeleteRecord should be 0 if the "
+ "request was successfully executed, 1 if the request is "
+ "not supported, and some other value if an error "
+ "occurred. If the request is not supported, check the "
+ "Capabilities array that a value of 3 (\"Delete Record "
+ "Supported\") is specified. \n"
+ "\n"
+ "Note: In a subclass, the set of possible return codes "
+ "could be described using a ValueMap qualifier on the "
+ "method. The strings to which the ValueMap contents are "
+ "\'translated\' may also be specified in the subclass as "
+ "a Values array qualifier." )]
+ uint32 DeleteRecord(
+ [IN, OUT, Description (
+ "An identifier for the iterator." )]
+ string IterationIdentifier,
+ [IN, Description (
+ "Boolean that when set to TRUE requests the "
+ "IterationIdentifier to be advanced to the next "
+ "record, after the current entry is deleted. If set "
+ "to FALSE, IterationIdentifier is set to the "
+ "previous record." )]
+ boolean PositionToNext,
+ [IN ( false ), OUT, Description ( "The record number." )]
+ uint64 RecordNumber,
+ [IN ( false ), OUT, Description ( "The record data." )]
+ uint8 RecordData[]);
+
+ [Description (
+ "Requests that a record be inserted at the Log position "
+ "indicated by the IterationIdentifier. The entry\'s data "
+ "is provided in the RecordData input parameter. After "
+ "insertion, the IterationIdentifier may be advanced to "
+ "the next record by setting the PositionToNext input "
+ "parameter to TRUE. The output parameter, RecordNumber, "
+ "returns the current record number addressed via the "
+ "IterationIdentifier. This parameter is only "
+ "defined/valid when the Capabilities array indicates that "
+ "ordinal record number addressing is supported (a value "
+ "of 7). \n"
+ "\n"
+ "IterationIdentifier is defined as an Input/Output method "
+ "parameter to allow the Log to embed state information in "
+ "the Identifier and potentially let the identifier be "
+ "maintained by the using application. \n"
+ "\n"
+ "The return value from WriteRecord should be 0 if the "
+ "request was successfully executed, 1 if the request is "
+ "not supported, and some other value if an error "
+ "occurred. If the request is not supported, check the "
+ "Capabilities array that a value of 2 (\"Write Record "
+ "Supported\") is specified. \n"
+ "\n"
+ "Note: In a subclass, the set of possible return codes "
+ "could be described using a ValueMap qualifier on the "
+ "method. The strings to which the ValueMap contents are "
+ "\'translated\' may also be specified in the subclass as "
+ "a Values array qualifier." )]
+ uint32 WriteRecord(
+ [IN, OUT, Description (
+ "An identifier for the iterator." )]
+ string IterationIdentifier,
+ [IN, Description (
+ "Boolean indicating that the Iteration Identifier "
+ "should be advanced to the next record, after "
+ "writing the Log entry." )]
+ boolean PositionToNext,
+ [IN, Description ( "The record data." )]
+ uint8 RecordData[],
+ [IN ( false ), OUT, Description ( "The record number." )]
+ uint64 RecordNumber);
+
+ [Description (
+ "Requests that an iteration of the Log, identified by the "
+ "IterationIdentifier input parameter, be stopped. The "
+ "return value from CancelIteration should be 0 if the "
+ "request was successfully executed, 1 if the request is "
+ "not supported and some other value if an error occurred. "
+ "In a subclass, the set of possible return codes could be "
+ "specified, using a ValueMap qualifier on the method. The "
+ "strings to which the ValueMap contents are \'translated\' "
+ "may also be specified in the subclass as a Values array "
+ "qualifier." )]
+ uint32 CancelIteration(
+ [IN, Description ( "An identifier for the iterator." )]
+ string IterationIdentifier);
+
+ [Description (
+ "Requests that the MessageLog be placed in a frozen state "
+ "(\"Freeze\" input parameter = TRUE) or \'unfrozen\' (= "
+ "FALSE). If frozen, modifications to the Log will not be "
+ "allowed. If successful, the Log\'s IsFrozen boolean "
+ "property will be updated to reflect the desired state. \n"
+ "\n"
+ "The method\'s return code should be 0 if the request was "
+ "successfully executed, 1 if the request is not supported "
+ "and some other value if an error occurred. If the "
+ "request is not supported, check the Capabilities array "
+ "that a value of 5 (\"Freeze Log Supported\") is "
+ "specified. \n"
+ "\n"
+ "Note: In a subclass, the set of possible return codes "
+ "could be described using a ValueMap qualifier on the "
+ "method. The strings to which the ValueMap contents are "
+ "\'translated\' may also be specified in the subclass as "
+ "a Values array qualifier." )]
+ uint32 FreezeLog(
+ [IN, Description (
+ "If TRUE then freeze the log, if FALSE \'unfreeze\' the log."
+ )]
+ boolean Freeze);
+
+ [Description (
+ "Requests that the record indicated by the "
+ "IterationIdentifier be flagged as overwriteable. This "
+ "method is only supported when the Capabilities array "
+ "includes a value of 10, \"Can Flag Records for "
+ "Overwrite\". After updating the entry, the "
+ "IterationIdentifier may be advanced to the next record "
+ "by setting the PositionToNext input parameter to TRUE. "
+ "One output parameter is defined for the method "
+ "RecordNumber. It returns the current record number "
+ "addressed via the Iteration Identifier. This parameter "
+ "is only defined/valid when the Capabilities array "
+ "indicates that ordinal record number addressing is "
+ "supported (a value of 7). \n"
+ "\n"
+ "IterationIdentifier is defined as an Input/Output method "
+ "parameter to allow the Log to embed state information in "
+ "the Identifier and potentially let the identifier be "
+ "maintained by the using application. \n"
+ "\n"
+ "The return value from FlagRecordForOverwrite should be 0 "
+ "if the request was successfully executed, 1 if the "
+ "request is not supported, and some other value if an "
+ "error occurred. In a subclass, the set of possible "
+ "return codes could be specified, using a ValueMap "
+ "qualifier on the method. The strings to which the "
+ "ValueMap contents are \'translated\' may also be "
+ "specified in the subclass as a Values array qualifier." )]
+ uint32 FlagRecordForOverwrite(
+ [IN, OUT, Description (
+ "An identifier for the iterator." )]
+ string IterationIdentifier,
+ [IN, Description (
+ "Boolean indicating that the Iteration Identifier "
+ "should be advanced to the next record, after "
+ "updating the current Log entry." )]
+ boolean PositionToNext,
+ [IN ( false ), OUT, Description ( "The record number." )]
+ uint64 RecordNumber);
+
+};