words, after the operation, all the supplied Elements MUST be set or none of them MUST be set, thus making the SetJobElements an atomic operation. The value of JobMandatoryElements supplied in the original CreateJob request, if any, MUST have no effect on the behavior of the SetJobElements operation. Rather, the Service must consider that any Element or Element value in a SetJobElements operation is mandatory. The Service MUST reject any request to set a Job Element to an unsupported value or to a value that would conflict with another Job Element value. The Service MUST accept or reject the SetJobElements operation according to the rules defined for the antecedent Set-Job-Attributes operation in Internet Printing Protocol (IPP):Job and Printer Set Operations [RFC3380]. SuspendCurrentJob The SuspendCurrentJob operation allows a Client operating for the Job Owner or an Administrator, to suspend a Job by setting a condition in a Job that is currently in the Processing or ProcessingStopped state. This condition, reflected by the JobSuspended value in that JobStateReasons Element, causes that Job to be in the Job’s ProcessingStopped state. The Service is able to processes other Jobs normally, provided that no other inhibiting conditions exist. Note that a Job may be ProcessingStopped state for other reasons and that, once it has been suspended, the Job will remain in the ProcessingStopped state even after the other conditions have been removed. There is the potential that the current Job may have changed between the time a client requests this operation and the time the Service implements it. Therefore, if the intent is to suspend a particular Job, the Client can include an optional JobId parameter in the request. The target Job is: The Job identified by the JobId, if included in the request If the JobId is not included in the request, any Jobs in the Processing or ProcessingStopped state to which the requestor has access rights. The Service MUST reject the request and send an appropriate message if: There is no target Job in the Processing or ProcessingStopped state to which the requestor has access rights. The target Job or all potential target Jobs have already been suspended. The Service MUST accept the request, cancel any target Job(s) that have not been previously suspended, and return an appropriate message if:
words, after the operation, all the supplied Elements MUST be set or none of them MUST be set, thus making the SetJobElements an atomic operation. The value of JobMandatoryElements supplied in the original CreateJob request, if any, MUST have no effect on the behavior of the SetJobElements operation. Rather, the Service must consider that any Element or Element value in a SetJobElements operation is mandatory. The Service MUST reject any request to set a Job Element to an unsupported value or to a value that would conflict with another Job Element value. The Service MUST accept or reject the SetJobElements operation according to the rules defined for the antecedent Set-Job-Attributes operation in Internet Printing Protocol (IPP):Job and Printer Set Operations [RFC3380]. SuspendCurrentJob The SuspendCurrentJob operation allows a Client operating for the Job Owner or an Administrator, to suspend a Job by setting a condition in a Job that is currently in the Processing or ProcessingStopped state. This condition, reflected by the JobSuspended value in that Job’s JobStateReasons Element, causes that Job to be in the ProcessingStopped state. The Service is able to processes other Jobs normally, provided that no other inhibiting conditions exist. Note that a Job may be ProcessingStopped state for other reasons and that, once it has been suspended, the Job will remain in the ProcessingStopped state even after the other conditions have been removed. There is the potential that the current Job may have changed between the time a client requests this operation and the time the Service implements it. Therefore, if the intent is to suspend a particular Job, the Client can include an optional JobId parameter in the request. The target Job is: The Job identified by the JobId, if included in the request If the JobId is not included in the request, any Jobs in the Processing or ProcessingStopped state to which the requestor has access rights. The Service MUST reject the request and send an appropriate message if: There is no target Job in the Processing or ProcessingStopped state to which the requestor has access rights. The target Job or all potential target Jobs have already been suspended. The Service MUST accept the request, cancel any target Job(s) that have not been previously suspended, and return an appropriate message if: