Class PrinterStateReasons is a printing attribute class, a set of
enumeration values, that provides additional information about the
printer's current state, i.e., information that augments the value of the
printer's {@link PrinterState PrinterState} attribute.
Instances of {@link PrinterStateReason PrinterStateReason} do not appear in
a Print Service's attribute set directly. Rather, a PrinterStateReasons
attribute appears in the Print Service's attribute set. The
PrinterStateReasons attribute contains zero, one, or more than one {@link
PrinterStateReason PrinterStateReason} objects which pertain to the Print
Service's status, and each {@link PrinterStateReason PrinterStateReason}
object is associated with a {@link Severity Severity} level of REPORT
(least severe), WARNING, or ERROR (most severe). The printer adds a {@link
PrinterStateReason PrinterStateReason} object to the Print Service's
PrinterStateReasons attribute when the corresponding condition becomes true
of the printer, and the printer removes the {@link PrinterStateReason
PrinterStateReason} object again when the corresponding condition becomes
false, regardless of whether the Print Service's overall
{@link PrinterState PrinterState} also changed.
Class PrinterStateReasons inherits its implementation from class {@link
java.util.HashMap java.util.HashMap}. Each entry in the map consists of a
{@link PrinterStateReason PrinterStateReason} object (key) mapping to a
{@link Severity Severity} object (value):
Unlike most printing attributes which are immutable once constructed, class
PrinterStateReasons is designed to be mutable; you can add {@link
PrinterStateReason PrinterStateReason} objects to an existing
PrinterStateReasons object and remove them again. However, like class
{@link java.util.HashMap java.util.HashMap}, class PrinterStateReasons is
bot multiple thread safe. If a PrinterStateReasons object will be used by
multiple threads, be sure to synchronize its operations (e.g., using a
synchronized map view obtained from class {@link java.util.Collections
java.util.Collections}).
IPP Compatibility: The string values returned by each individual
{@link PrinterStateReason PrinterStateReason} object's and the associated
{@link Severity Severity} object's toString() methods,
concatenated
together with a hyphen ("-" ) in between, gives the IPP keyword
value. The category name returned by getName() gives the IPP
attribute name.
|