211 lines
11 KiB
Plaintext

// Copyright (c) 2011 DMTF. All rights reserved.
[Deprecated { "CIM_ConcreteJob.GetErrors" },
Version ( "2.31.1" ),
UMLPackagePath ( "CIM::Core::CoreElements" ),
Description (
"A concrete version of Job. This class represents a generic and "
"instantiable unit of work, such as a batch or a print job." )]
class CIM_ConcreteJob : CIM_Job {
[Key, Override ( "InstanceID" ),
Description (
"Within the scope of the instantiating Namespace, "
"InstanceID opaquely and uniquely identifies an instance "
"of this class. In order to ensure uniqueness within the "
"NameSpace, the value of InstanceID SHOULD be constructed "
"using the following \'preferred\' algorithm: \n"
"<OrgID>:<LocalID> \n"
"Where <OrgID> and <LocalID> are separated by a colon "
"\':\', and where <OrgID> must include a copyrighted, "
"trademarked or otherwise unique name that is owned by "
"the business entity that is creating or defining the "
"InstanceID, or that is a registered ID that is assigned "
"to the business entity by a recognized global authority. "
"(This requirement is similar to the <Schema Name>_<Class "
"Name> structure of Schema class names.) In addition, to "
"ensure uniqueness <OrgID> must not contain a colon "
"(\':\'). When using this algorithm, the first colon to "
"appear in InstanceID must appear between <OrgID> and "
"<LocalID>. \n"
"<LocalID> is chosen by the business entity and should "
"not be re-used to identify different underlying "
"(real-world) elements. If the above \'preferred\' "
"algorithm is not used, the defining entity must assure "
"that the resulting InstanceID is not re-used across any "
"InstanceIDs produced by this or other providers for the "
"NameSpace of this instance. \n"
"For DMTF defined instances, the \'preferred\' algorithm "
"must be used with the <OrgID> set to \'CIM\'." )]
string InstanceID;
[Required, Override ( "Name" ),
Description (
"The user-friendly name for this instance of a Job. In "
"addition, the user-friendly name can be used as a "
"property for a search or query. (Note: Name does not "
"have to be unique within a namespace.)" )]
string Name;
[Description (
"JobState is an integer enumeration that indicates the "
"operational state of a Job. It can also indicate "
"transitions between these states, for example, \'Shutting "
"Down\' and \'Starting\'. Following is a brief "
"description of the states: \n"
"New (2) indicates that the job has never been started. \n"
"Starting (3) indicates that the job is moving from the "
"\'New\', \'Suspended\', or \'Service\' states into the "
"\'Running\' state. \n"
"Running (4) indicates that the Job is running. \n"
"Suspended (5) indicates that the Job is stopped, but can "
"be restarted in a seamless manner. \n"
"Shutting Down (6) indicates that the job is moving to a "
"\'Completed\', \'Terminated\', or \'Killed\' state. \n"
"Completed (7) indicates that the job has completed "
"normally. \n"
"Terminated (8) indicates that the job has been stopped "
"by a \'Terminate\' state change request. The job and all "
"its underlying processes are ended and can be restarted "
"(this is job-specific) only as a new job. \n"
"Killed (9) indicates that the job has been stopped by a "
"\'Kill\' state change request. Underlying processes "
"might have been left running, and cleanup might be "
"required to free up resources. \n"
"Exception (10) indicates that the Job is in an abnormal "
"state that might be indicative of an error condition. "
"Actual status might be displayed though job-specific "
"objects. \n"
"Service (11) indicates that the Job is in a "
"vendor-specific state that supports problem discovery, "
"or resolution, or both.\n"
"Query pending (12) waiting for a client to resolve a "
"query" ),
ValueMap { "2", "3", "4", "5", "6", "7", "8", "9", "10",
"11", "12", "13..32767", "32768..65535" },
Values { "New", "Starting", "Running", "Suspended",
"Shutting Down", "Completed", "Terminated", "Killed",
"Exception", "Service", "Query Pending", "DMTF Reserved",
"Vendor Reserved" }]
uint16 JobState;
[Description (
"The date or time when the state of the Job last changed. "
"If the state of the Job has not changed and this "
"property is populated, then it must be set to a 0 "
"interval value. If a state change was requested, but "
"rejected or not yet processed, the property must not be "
"updated." )]
datetime TimeOfLastStateChange;
[Required, Write, Description (
"The amount of time that the Job is retained after it has "
"finished executing, either succeeding or failing in that "
"execution. The job must remain in existence for some "
"period of time regardless of the value of the "
"DeleteOnCompletion property. \n"
"The default is five minutes." )]
datetime TimeBeforeRemoval = "00000000000500.000000:000";
[Description (
"Requests that the state of the job be changed to the "
"value specified in the RequestedState parameter. "
"Invoking the RequestStateChange method multiple times "
"could result in earlier requests being overwritten or "
"lost. \n"
"If 0 is returned, then the task completed successfully. "
"Any other return code indicates an error condition." ),
ValueMap { "0", "1", "2", "3", "4", "5", "6", "..", "4096",
"4097", "4098", "4099", "4100..32767", "32768..65535" },
Values { "Completed with No Error", "Not Supported",
"Unknown/Unspecified Error",
"Can NOT complete within Timeout Period", "Failed",
"Invalid Parameter", "In Use", "DMTF Reserved",
"Method Parameters Checked - Transition Started",
"Invalid State Transition",
"Use of Timeout Parameter Not Supported", "Busy",
"Method Reserved", "Vendor Specific" }]
uint32 RequestStateChange(
[IN, Description (
"RequestStateChange changes the state of a job. The "
"possible values are as follows: \n"
"Start (2) changes the state to \'Running\'. \n"
"Suspend (3) stops the job temporarily. The "
"intention is to subsequently restart the job with "
"\'Start\'. It might be possible to enter the "
"\'Service\' state while suspended. (This is "
"job-specific.) \n"
"Terminate (4) stops the job cleanly, saving data, "
"preserving the state, and shutting down all "
"underlying processes in an orderly manner. \n"
"Kill (5) terminates the job immediately with no "
"requirement to save data or preserve the state. \n"
"Service (6) puts the job into a vendor-specific "
"service state. It might be possible to restart the "
"job." ),
ValueMap { "2", "3", "4", "5", "6", "7..32767",
"32768..65535" },
Values { "Start", "Suspend", "Terminate", "Kill",
"Service", "DMTF Reserved", "Vendor Reserved" }]
uint16 RequestedState,
[IN, Description (
"A timeout period that specifies the maximum amount "
"of time that the client expects the transition to "
"the new state to take. The interval format must be "
"used to specify the TimeoutPeriod. A value of 0 or "
"a null parameter indicates that the client has no "
"time requirements for the transition. \n"
"If this property does not contain 0 or null and "
"the implementation does not support this "
"parameter, a return code of \'Use Of Timeout "
"Parameter Not Supported\' must be returned." )]
datetime TimeoutPeriod);
[Deprecated { "CIM_ConcreteJob.GetErrors" },
Description (
"GetError is deprecated because Error should be an "
"array,not a scalar.\n"
"When the job is executing or has terminated without "
"error, then this method returns no CIM_Error instance. "
"However, if the job has failed because of some internal "
"problem or because the job has been terminated by a "
"client, then a CIM_Error instance is returned." ),
ValueMap { "0", "1", "2", "3", "4", "5", "6", "..",
"32768..65535" },
Values { "Success", "Not Supported", "Unspecified Error",
"Timeout", "Failed", "Invalid Parameter", "Access Denied",
"DMTF Reserved", "Vendor Specific" }]
uint32 GetError(
[OUT, Description (
"If the OperationalStatus on the Job is not \"OK\", "
"then this method will return a CIM Error instance. "
"Otherwise, when the Job is \"OK\", null is "
"returned." ),
EmbeddedInstance ( "CIM_Error" )]
string Error);
[Description (
"If JobState is \"Completed\" and Operational Status is "
"\"Completed\" then no instance of CIM_Error is returned. \n"
"If JobState is \"Exception\" then GetErrors may return "
"intances of CIM_Error related to the execution of the "
"procedure or method invoked by the job.\n"
"If Operatational Status is not \"OK\" or \"Completed\"then "
"GetErrors may return CIM_Error instances related to the "
"running of the job." ),
ValueMap { "0", "1", "2", "3", "4", "5", "6", "..",
"32768..65535" },
Values { "Success", "Not Supported", "Unspecified Error",
"Timeout", "Failed", "Invalid Parameter", "Access Denied",
"DMTF Reserved", "Vendor Specific" }]
uint32 GetErrors(
[OUT, Description (
"If the OperationalStatus on the Job is not \"OK\", "
"then this method will return one or more CIM Error "
"instance(s). Otherwise, when the Job is \"OK\", "
"null is returned." ),
EmbeddedInstance ( "CIM_Error" )]
string Errors[]);
};