- All Implemented Interfaces:
Serializable,Cloneable,Map<PrinterStateReason,,Severity> Attribute,PrintServiceAttribute
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
PrinterState attribute.
Instances of 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
PrinterStateReason objects which pertain to the
Print Service's status, and each
PrinterStateReason object is associated with a
Severity level of REPORT (least severe),
WARNING, or ERROR (most severe). The printer adds a
PrinterStateReason object to the Print Service's
PrinterStateReasons attribute when the corresponding condition
becomes true of the printer, and the printer removes the
PrinterStateReason object again when the
corresponding condition becomes false, regardless of whether the Print
Service's overall PrinterState also changed.
Class PrinterStateReasons inherits its implementation from class
java.util.HashMap. Each entry in the map consists of a
PrinterStateReason object (key) mapping to a
Severity object (value):
Unlike most printing attributes which are immutable once constructed, class
PrinterStateReasons is designed to be mutable; you can add
PrinterStateReason objects to an existing
PrinterStateReasons object and remove them again. However, like class
java.util.HashMap, class PrinterStateReasons is not
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 java.util.Collections).
IPP Compatibility: The string values returned by each individual
PrinterStateReason object's and the associated
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.
- See Also:
-
Nested Class Summary
Nested classes/interfaces declared in class java.util.AbstractMap
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K, V> -
Constructor Summary
ConstructorsConstructorDescriptionConstruct a new, empty printer state reasons attribute; the underlying hash map has the default initial capacity and load factor.PrinterStateReasons(int initialCapacity) Construct a new, empty printer state reasons attribute; the underlying hash map has the given initial capacity and the default load factor.PrinterStateReasons(int initialCapacity, float loadFactor) Construct a new, empty printer state reasons attribute; the underlying hash map has the given initial capacity and load factor.Construct a new printer state reasons attribute that contains the samePrinterStateReason-to-Severitymappings as the given map. -
Method Summary
Modifier and TypeMethodDescriptionGet the printing attribute class which is to be used as the "category" for this printing attribute value.final StringgetName()Get the name of the category of which this attribute value is an instance.printerStateReasonSet(Severity severity) Obtain an unmodifiable set view of the individual printer state reason attributes at the given severity level in thisPrinterStateReasonsattribute.put(PrinterStateReason reason, Severity severity) Adds the given printer state reason to this printer state reasons attribute, associating it with the given severity level.Methods declared in class java.util.HashMap
clear, clone, compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, entrySet, get, isEmpty, keySet, merge, putAll, remove, size, valuesMethods declared in class java.util.AbstractMap
equals, hashCode, toStringMethods declared in interface java.util.Map
equals, forEach, getOrDefault, hashCode, putIfAbsent, remove, replace, replace, replaceAll
-
Constructor Details
-
PrinterStateReasons
public PrinterStateReasons()Construct a new, empty printer state reasons attribute; the underlying hash map has the default initial capacity and load factor. -
PrinterStateReasons
public PrinterStateReasons(int initialCapacity) Construct a new, empty printer state reasons attribute; the underlying hash map has the given initial capacity and the default load factor.- Parameters:
initialCapacity- initial capacity- Throws:
IllegalArgumentException- if the initial capacity is negative
-
PrinterStateReasons
public PrinterStateReasons(int initialCapacity, float loadFactor) Construct a new, empty printer state reasons attribute; the underlying hash map has the given initial capacity and load factor.- Parameters:
initialCapacity- initial capacityloadFactor- load factor- Throws:
IllegalArgumentException- if the initial capacity is negative
-
PrinterStateReasons
Construct a new printer state reasons attribute that contains the samePrinterStateReason-to-Severitymappings as the given map. The underlying hash map's initial capacity and load factor are as specified in the superclass constructorHashMap(Map).- Parameters:
map- map to copy- Throws:
NullPointerException- ifmapisnullor if any key or value inmapisnullClassCastException- if any key inmapis not an instance of classPrinterStateReasonor if any value inmapis not an instance of classSeverity
-
-
Method Details
-
put
Adds the given printer state reason to this printer state reasons attribute, associating it with the given severity level. If this printer state reasons attribute previously contained a mapping for the given printer state reason, the old value is replaced.- Specified by:
putin interfaceMap<PrinterStateReason,Severity> - Overrides:
putin classHashMap<PrinterStateReason,Severity> - Parameters:
reason- printer state reason. This must be an instance of classPrinterStateReasonseverity- severity of the printer state reason. This must be an instance of classSeverity- Returns:
- previous severity associated with the given printer state reason,
or
nullif the given printer state reason was not present - Throws:
NullPointerException- ifreasonisnullorseverityisnullClassCastException- ifreasonis not an instance of classPrinterStateReasonor ifseverityis not an instance of classSeverity- Since:
- 1.5
-
getCategory
Get the printing attribute class which is to be used as the "category" for this printing attribute value.For class
PrinterStateReasons, the category is classPrinterStateReasonsitself.- Specified by:
getCategoryin interfaceAttribute- Returns:
- printing attribute class (category), an instance of class
java.lang.Class
-
getName
Get the name of the category of which this attribute value is an instance.For class
PrinterStateReasons, the category name is"printer-state-reasons". -
printerStateReasonSet
Obtain an unmodifiable set view of the individual printer state reason attributes at the given severity level in thisPrinterStateReasonsattribute. Each element in the set view is aPrinterStateReasonobject. The only elements in the set view are thePrinterStateReasonobjects that map to the given severity value. The set view is backed by thisPrinterStateReasonsattribute, so changes to thisPrinterStateReasonsattribute are reflected in the set view. The set view does not support element insertion or removal. The set view's iterator does not support element removal.- Parameters:
severity- severity level- Returns:
- set view of the individual
PrinterStateReasonattributes at the givenSeveritylevel - Throws:
NullPointerException- ifseverityisnull
-