Class JobStateReasons is a printing attribute class, a set of enumeration
values, that provides additional information about the job's current state,
i.e., information that augments the value of the job's {@link JobState
JobState} attribute.
Instances of {@link JobStateReason JobStateReason} do not appear in a Print
Job's attribute set directly. Rather, a JobStateReasons attribute appears in
the Print Job's attribute set. The JobStateReasons attribute contains zero,
one, or more than one {@link JobStateReason JobStateReason} objects which
pertain to the Print Job's status. The printer adds a {@link JobStateReason
JobStateReason} object to the Print Job's JobStateReasons attribute when the
corresponding condition becomes true of the Print Job, and the printer
removes the {@link JobStateReason JobStateReason} object again when the
corresponding condition becomes false, regardless of whether the Print Job's
overall {@link JobState JobState} also changed.
Class JobStateReasons inherits its implementation from class {@link
java.util.HashSet java.util.HashSet}. Unlike most printing attributes which
are immutable once constructed, class JobStateReasons is designed to be
mutable; you can add {@link JobStateReason JobStateReason} objects to an
existing JobStateReasons object and remove them again. However, like class
{@link java.util.HashSet java.util.HashSet}, class JobStateReasons is not
multiple thread safe. If a JobStateReasons object will be used by multiple
threads, be sure to synchronize its operations (e.g., using a synchronized
set view obtained from class {@link java.util.Collections
java.util.Collections}).
IPP Compatibility: The string value returned by each individual {@link
JobStateReason JobStateReason} object's toString() method gives
the IPP keyword value. The category name returned by getName()
gives the IPP attribute name.
|