// Copyright (c) 2009 DMTF. All rights reserved. [Version ( "2.22.1" ), UMLPackagePath ( "CIM::Core::OpaqueManagementData" ), Description ( "A class derived from Service that contains global properties " "of the opaque management data functionality in the CIM server, " "and provides methods for using this functionality." )] class CIM_OpaqueManagementDataService : CIM_Service { [Description ( "The number of bytes of opaque management data storage " "available from the CIM_OpaqueManagementDataService. The " "value of AvailableStorage shall not exceed the value of " "MaxAvailableStorage in the associated " "CIM_OpaqueManagementDataCapabilities." ), ModelCorrespondence { "CIM_OpaqueManagementDataCapabilities.MaxAvailableStorage" }, PUnit ( "byte" )] uint64 AvailableStorage; [Description ( "The amount of time a lock on a CIM_OpaqueManagementData " "instance shall remain in effect without execution of any " "CIM_OpaqueManagementDataService extrinsic methods on " "that CIM_OpaqueManagementData instance by the Identity " "that holds the lock. Locks on CIM_OpaqueManagementData " "are created by Lock(). The intent of the timeout is to " "ensure that a lock is released if the lock holder " "neglects to release it or is unable to release it. The " "value of LockTimeout shall be a duration." )] datetime LockTimeout; [Description ( "MaxCreateSize shall contain the maximum value that the " "implementation will currently accept in the MaxSize " "property of the OpaqueManagementDataTemplate embedded " "instance parameter in a call to Create(). This value may " "change over time for any reason, including but not " "limited to fragmentation of the storage resources " "managed by the service." ), ModelCorrespondence { "CIM_OpaqueManagementData.MaxSize" }, PUnit ( "byte" )] uint64 MaxCreateSize; [Description ( "Grants or removes access to the referenced " "CIM_OpaqueManagementData instance by the referenced " "CIM_Identity instance." ), ValueMap { "0", "1", "2", "3..32767", "32768..65535" }, Values { "Completed with No Error", "Not Supported", "Unknown/Unspecified Error", "DMTF Reserved", "Vendor Specified" }] uint32 AssignAccess( [Required, IN, Description ( "Reference to the CIM_Identity instance that is the " "subject of the access rights modified by this " "method." )] CIM_Identity REF Identity, [Required, IN, Description ( "Reference to the CIM_OpaqueManagementData instance " "that is the target of the access rights modified " "by this method." )] CIM_OpaqueManagementData REF OpaqueManagementData, [Required, IN, Description ( "The subset of values from the value map that shall " "be contained in the resulting Activities property " "of the CIM_AssociatedPrivilege between the " "CIM_Identity instance referenced by the Identity " "parameter and the CIM_OpaqueManagementData " "instance referenced by the OpaqueManagementData " "parameter. If such an instance of " "CIM_AssociatedPrivilege does not exist before the " "method is invoked, the method shall create it." ), ValueMap { "5", "6" }, Values { "Read", "Write" }, ModelCorrespondence { "CIM_AssociatedPrivilege.Activities" }] uint16 Activities[]); [Description ( "Create() creates an instance of CIM_OpaqueManagementData " "using the property values in the OpaqueManagementData " "parameter, and allocates the number of bytes of storage " "specified in the MaxSize property of the " "OpaqueManagementData parameter. It also optionally " "allows the client to specify an existing " "CIM_StorageExtent instance as the basis (storage " "location) of the new CIM_OpaqueManagementData instance." ), ValueMap { "0", "1", "2", "3..4095", "4096", "4097..32767", "32768..65535" }, Values { "Completed with No Error", "Not Supported", "Unknown/Unspecified Error", "DMTF Reserved", "Method Parameters Checked - Job Started", "Method Reserved", "Vendor Specified" }] uint32 Create( [Required, IN, Description ( "The requested value of the MaxSize property in the " "CIM_OpaqueManagementData instance created by this " "method. The actual property value shall not be " "less than this value." ), ModelCorrespondence { "CIM_OpaqueManagementData.MaxSize" }] uint64 MaxSize, [IN, Description ( "The value of the DataFormat property in the " "CIM_OpaqueManagementData instance created by this " "method." ), ModelCorrespondence { "CIM_OpaqueManagementData.DataFormat" }] string DataFormat, [IN, Description ( "The value of the ElementName property in the " "CIM_OpaqueManagementData instance created by this " "method." ), ModelCorrespondence { "CIM_OpaqueManagementData.ElementName" }] string ElementName, [Required, IN, Description ( "Specifies the instance of CIM_Identity or its " "subclass that shall be the owner of the new " "CIM_OpaqueManagementData instance. Create() shall " "associate the new CIM_OpaqueManagementData " "instance with this CIM_Identity instance using a " "new instance of CIM_AssociatedPrivilege." )] CIM_Identity REF Owner, [IN, Description ( "Specifies the instance of CIM_StorageExtent on " "which the new instance of CIM_OpaqueManagementData " "shall be based (i.e., in which it shall be " "stored). If this parameter is NULL, the choice of " "storage location shall be left to the " "implementation." )] CIM_StorageExtent REF BasedOnExtent, [IN ( false ), OUT, Description ( "Reference to the instance of " "CIM_OpaqueManagementData created when the method " "returns a value of 0." )] CIM_OpaqueManagementData REF OpaqueManagementData, [IN ( false ), OUT, Description ( "Reference to the job (may be null if job completed)." )] CIM_ConcreteJob REF Job); [Description ( "ExportToURI() copies all or some of the bytes of opaque " "management data in the extent represented by the " "referenced instance of CIM_OpaqueManagementData to the " "Uniform Resource Identifier (URI) specified in the " "ExportURI parameter. The URI scheme implies the protocol " "that shall be used. Typically, the URI will be a Uniform " "Resource Locator (URL), but a Uniform Resource Name " "(URN) is not prohibited.\n" "If 0 is returned, the function completed successfully " "and no ConcreteJob instance was required. If 4096/0x1000 " "is returned, a ConcreteJob shall be started to to " "perform the operation. The Job\'s reference shall be " "returned in the output parameter Job." ), ValueMap { "0", "1", "2", "3..4095", "4096", "4097..32767", "32768..65535" }, Values { "Completed with No Error", "Not Supported", "Unknown/Unspecified Error", "DMTF Reserved", "Method Parameters Checked - Job Started", "Method Reserved", "Vendor Specified" }] uint32 ExportToURI( [Required, IN, Description ( "The CIM_OpaqueManagementData instance that " "represents the extent that is the target of the " "operation." )] CIM_OpaqueManagementData REF OpaqueManagementData, [Required, IN, Description ( "Offset specifies the byte offset at which to start reading." ), PUnit ( "byte" )] uint64 Offset, [Required, IN, OUT, Description ( "On entry, Length contains the number of bytes to " "be read, starting at the byte offset in the Offset " "property. On return, Length contains the number of " "bytes that were actually read." ), PUnit ( "byte" )] uint64 Length, [Required, IN, Description ( "On entry, ExportURI contains a URI based on RFC " "3986 that indicates the location to which the " "service shall copy the specified bytes of opaque " "management data and from which the client " "subsequently retrieves them." ), ModelCorrespondence { "CIM_OpaqueManagementDataCapabilities.SupportedExportURISchemes" }] string ExportURI, [IN, Description ( "A token that represents a Lock placed on the data " "in the extent referenced by the " "OpaqueManagementData parameter, using the Lock() " "method." ), OctetString] uint8 LockToken[], [IN ( false ), OUT, Description ( "Reference to the job (may be null if job completed)." )] CIM_ConcreteJob REF Job); [Description ( "ImportFromURI() modifies all or some of the bytes in the " "referenced instance of CIM_OpaqueManagementData. The " "imported data for the operation is copied from the URI " "specified in the ImportURI parameter. The URI scheme " "implies the protocol that shall be used. Typically, the " "URI will be a Uniform Resource Locator (URL), but a " "Uniform Resource Name (URN) is not prohibited.\n" "Any data already present in the instance outside the " "range specified by Offset and Length is unchanged.\n" "If 0 is returned, the function completed successfully " "and no ConcreteJob instance was required. If 4096/0x1000 " "is returned, a ConcreteJob shall be started to perform " "the operation. The Job\'s reference shall be returned in " "the output parameter Job." ), ValueMap { "0", "1", "2", "3..4095", "4096", "4097..32767", "32768..65535" }, Values { "Completed with No Error", "Not Supported", "Unknown/Unspecified Error", "DMTF Reserved", "Method Parameters Checked - Job Started", "Method Reserved", "Vendor Specified" }] uint32 ImportFromURI( [Required, IN, Description ( "The CIM_OpaqueManagementData instance that " "represents the extent that is the target of the " "operation." )] CIM_OpaqueManagementData REF OpaqueManagementData, [Required, IN, Description ( "Offset specifies the byte offset at which to start writing." ), PUnit ( "byte" )] uint64 Offset, [Required, IN, OUT, Description ( "On entry, Length contains the number of bytes to " "be written, starting at the byte offset in the " "Offset. property. On return, Length contains the " "number of bytes that were actually written." ), PUnit ( "byte" )] uint64 Length, [IN, Description ( "If the value of the DataSize property of the " "instance referenced by the OpaqueManagementData " "parameter is greater than Offset + Length, then a " "value of TRUE shall indicate that the DataSize " "property value shall be reduced by this operation " "to Offset + Length, and a value of FALSE shall " "indicate that the DataSize property value shall " "remain unchanged by this operation. If the value " "of the DataSize property is not greater than " "Offset + Length, then this parameter shall be " "ignored." ), ModelCorrespondence { "CIM_OpaqueManagementData.DataSize" }] boolean Truncate, [Required, IN, Description ( "On entry, ImportURI contains a URI based on RFC " "3986 that shall be used by the service to retrieve " "the bytes of opaque management data to be written " "into the extent represented by the " "OpaqueManagementData parameter." ), ModelCorrespondence { "CIM_OpaqueManagementDataCapabilities.SupportedImportURISchemes" }] string ImportURI, [IN, Description ( "A token that represents a Lock placed on the data " "in the extent referenced by the " "OpaqueManagementData parameter, using the Lock() " "method." ), OctetString] uint8 LockToken[], [IN ( false ), OUT, Description ( "Reference to the job (may be null if job completed)." )] CIM_ConcreteJob REF Job); [Description ( "Lock() allows a management client to atomically read or " "write an opaque management data storage extent larger " "than MaxReadLength or MaxWriteLength, respectively. A " "server that supports this method shall support the " "following pattern:\n" "1. Issue Lock() with Lock set to true to lock the " "CIM_OpaqueManagementData instance.\n" "2. Repeat Read() or Write() as many times as necessary " "to complete the transfer\n" "3. Issue Lock() with Lock set to false to unlock the " "CIM_OpaqueManagementData instance\n" "If Lock() with Lock set to true completes successfully, " "the server shall return a LockToken to the client. Until " "the lock is removed or expires, the server shall deny " "OpaqueManagementDataService method requests on the same " "CIM_OpaqueManagementData instance that do not contain " "the same LockToken value.\n" "Lock() shall not lock the properties of the " "OpaqueManagementData instance. The method shall return 0 " "if successful, 1 if not supported, and any other value " "if an error occurred." ), ValueMap { "0", "1", "2", "3..32767", "32768..65535" }, Values { "Completed with No Error", "Not Supported", "Unknown/Unspecified Error", "DMTF Reserved", "Vendor Specified" }] uint32 Lock( [Required, IN, Description ( "The CIM_OpaqueManagementData instance that " "represents the extent that is the target of the " "operation." )] CIM_OpaqueManagementData REF OpaqueManagementData, [Required, IN, Description ( "If true, lock the data from access by another " "management client. If false, release the data." )] boolean Lock, [IN, OUT, Description ( "A token that shall be returned to the client as " "output if Lock is True, and supplied by the client " "as input if Lock is False. In this way, only the " "client that set the Lock may remove it or delegate " "such responsibility to another client." ), OctetString] uint8 LockToken[]); [Description ( "Read() returns all or some of the bytes of opaque " "management data in the extent represented by the " "referenced instance of CIM_OpaqueManagementData." ), ValueMap { "0", "1", "2", "3..32767", "32768..65535" }, Values { "Completed with No Error", "Not Supported", "Unknown/Unspecified Error", "DMTF Reserved", "Vendor Specified" }] uint32 Read( [Required, IN, Description ( "The CIM_OpaqueManagementData instance that " "represents the extent that is the target of the " "operation." )] CIM_OpaqueManagementData REF OpaqueManagementData, [Required, IN, Description ( "Offset specifies the byte offset at which to start reading." ), PUnit ( "byte" )] uint64 Offset, [Required, IN, OUT, Description ( "On entry, Length shall contain the number of bytes " "to be read, starting at the byte offset in the " "Offset property. On return, Length shall contain " "the number of bytes that were actually read." ), ModelCorrespondence { "CIM_OpaqueManagementDataCapabilities.MaxReadLength" }, PUnit ( "byte" )] uint64 Length, [IN ( false ), OUT, Description ( "On return, Data shall contain the bytes of opaque " "management data read from the extent represented " "by the OpaqueManagementData parameter." ), OctetString] uint8 Data[], [IN, Description ( "A token that represents a Lock placed on the data " "in the extent referenced by the " "OpaqueManagementData parameter, using the Lock() " "method. Parameter shall be NULL if data is not " "locked." ), OctetString] uint8 LockToken[]); [Description ( "Transfers ownership of a CIM_OpaqueManagementData " "instance to the CIM_Identity instance referenced by the " "Identity parameter." ), ValueMap { "0", "1", "2", "3..32767", "32768..65535" }, Values { "Completed with No Error", "Not Supported", "Unknown/Unspecified Error", "DMTF Reserved", "Vendor Specified" }] uint32 ReassignOwnership( [Required, IN, Description ( "Reference to the CIM_Identity instance that will " "become the new owner of the " "CIM_OpaqueManagementData instance referenced by " "the OpaqueManagementData parameter." )] CIM_Identity REF NewOwner, [Required, IN, Description ( "Reference to the CIM_OpaqueManagementData instance " "that is the target of ownership reassignment." )] CIM_OpaqueManagementData REF OpaqueManagementData); [Description ( "Write() modifies all or some of the bytes in the extent " "represented by the referenced instance of " "CIM_OpaqueManagementData. Any data already present in " "the extent outside the range specified by Offset and " "Length shall remain unchanged by this operation." ), ValueMap { "0", "1", "2", "3..4095", "4096", "4097..32767", "32768..65535" }, Values { "Completed with No Error", "Not Supported", "Unknown/Unspecified Error", "DMTF Reserved", "Method Parameters Checked - Job Started", "Method Reserved", "Vendor Specified" }] uint32 Write( [Required, IN, Description ( "The CIM_OpaqueManagementData instance that " "represents the extent that is the target of the " "operation." )] CIM_OpaqueManagementData REF OpaqueManagementData, [Required, IN, Description ( "Offset specifies the byte offset at which to start writing." ), PUnit ( "byte" )] uint64 Offset, [Required, IN, OUT, Description ( "On entry, Length contains the number of bytes to " "be written, starting at the byte offset in the " "Offset. property. On return, Length contains the " "number of bytes that were actually written." ), ModelCorrespondence { "CIM_OpaqueManagementDataCapabilities.MaxWriteLength" }, PUnit ( "byte" )] uint64 Length, [IN, Description ( "If the value of the DataSize property of the " "instance referenced by the OpaqueManagementData " "parameter is greater than Offset + Length, then a " "value of TRUE shall indicate that the DataSize " "property value shall be reduced by this operation " "to Offset + Length, and a value of FALSE shall " "indicate that the DataSize property value shall " "remain unchanged by this operation. If the value " "of the DataSize property is not greater than " "Offset + Length, then this parameter shall be " "ignored." ), ModelCorrespondence { "CIM_OpaqueManagementData.DataSize" }] boolean Truncate, [Required, IN, Description ( "On entry, Data contains the bytes of opaque " "management data to be written into the extent " "represented by the OpaqueManagementData parameter." ), OctetString] uint8 Data[], [IN, Description ( "A token that represents a Lock placed on the data " "in the extent referenced by the " "OpaqueManagementData parameter, using the Lock() " "method." ), OctetString] uint8 LockToken[], [IN ( false ), OUT, Description ( "Reference to the job (may be null if job completed)." )] CIM_ConcreteJob REF Job); };