Module java.desktop

Class JobStateReasons

java.lang.Object
All Implemented Interfaces:
Serializable, Cloneable, Iterable<JobStateReason>, Collection<JobStateReason>, Set<JobStateReason>, Attribute, PrintJobAttribute

public final class JobStateReasons extends HashSet<JobStateReason> implements PrintJobAttribute
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 JobState attribute.

Instances of 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 JobStateReason objects which pertain to the Print Job's status. The printer adds a JobStateReason object to the Print Job's JobStateReasons attribute when the corresponding condition becomes true of the Print Job, and the printer removes the JobStateReason object again when the corresponding condition becomes false, regardless of whether the Print Job's overall JobState also changed.

Class JobStateReasons inherits its implementation from class java.util.HashSet. Unlike most printing attributes which are immutable once constructed, class JobStateReasons is designed to be mutable; you can add JobStateReason objects to an existing JobStateReasons object and remove them again. However, like class 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 java.util.Collections).

IPP Compatibility: The string value returned by each individual JobStateReason object's toString() method gives the IPP keyword value. The category name returned by getName() gives the IPP attribute name.

See Also: