Class PrinterStateReasons
- 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 AbstractMap
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K, V> Modifier and TypeClassDescriptionstatic classAn Entry maintaining a key and a value.static classAn unmodifiable Entry maintaining a key and a value. -
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 HashMap
clear, clone, compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, entrySet, get, isEmpty, keySet, merge, newHashMap, putAll, remove, size, valuesModifier and TypeMethodDescriptionvoidclear()Removes all of the mappings from this map.clone()Returns a shallow copy of thisHashMapinstance: the keys and values themselves are not cloned.compute(PrinterStateReason key, BiFunction<? super PrinterStateReason, ? super Severity, ? extends Severity> remappingFunction) Attempts to compute a mapping for the specified key and its current mapped value, ornullif there is no current mapping (optional operation).computeIfAbsent(PrinterStateReason key, Function<? super PrinterStateReason, ? extends Severity> mappingFunction) If the specified key is not already associated with a value (or is mapped tonull), attempts to compute its value using the given mapping function and enters it into this map unlessnull(optional operation).computeIfPresent(PrinterStateReason key, BiFunction<? super PrinterStateReason, ? super Severity, ? extends Severity> remappingFunction) If the value for the specified key is present and non-null, attempts to compute a new mapping given the key and its current mapped value (optional operation).booleancontainsKey(Object key) Returnstrueif this map contains a mapping for the specified key.booleancontainsValue(Object value) Returnstrueif this map maps one or more keys to the specified value.entrySet()Returns aSetview of the mappings contained in this map.Returns the value to which the specified key is mapped, ornullif this map contains no mapping for the key.booleanisEmpty()Returnstrueif this map contains no key-value mappings.keySet()Returns aSetview of the keys contained in this map.merge(PrinterStateReason key, Severity value, BiFunction<? super Severity, ? super Severity, ? extends Severity> remappingFunction) If the specified key is not already associated with a value or is associated with null, associates it with the given non-null value (optional operation).static <K,V> HashMap <K, V> newHashMap(int numMappings) Creates a new, empty HashMap suitable for the expected number of mappings.voidputAll(Map<? extends PrinterStateReason, ? extends Severity> m) Copies all of the mappings from the specified map to this map.Removes the mapping for the specified key from this map if present.intsize()Returns the number of key-value mappings in this map.values()Returns aCollectionview of the values contained in this map.Methods declared in class AbstractMap
equals, hashCode, toStringMethods declared in class Object
finalize, getClass, notify, notifyAll, wait, wait, waitModifier and TypeMethodDescriptionprotected voidfinalize()Deprecated, for removal: This API element is subject to removal in a future version.Finalization is deprecated and subject to removal in a future release.final Class<?> getClass()Returns the runtime class of thisObject.final voidnotify()Wakes up a single thread that is waiting on this object's monitor.final voidWakes up all threads that are waiting on this object's monitor.final voidwait()Causes the current thread to wait until it is awakened, typically by being notified or interrupted.final voidwait(long timeoutMillis) Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.final voidwait(long timeoutMillis, int nanos) Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.Methods declared in interface Map
forEach, getOrDefault, putIfAbsent, remove, replace, replace, replaceAllModifier and TypeMethodDescriptiondefault voidforEach(BiConsumer<? super PrinterStateReason, ? super Severity> action) Performs the given action for each entry in this map until all entries have been processed or the action throws an exception.default SeveritygetOrDefault(Object key, Severity defaultValue) Returns the value to which the specified key is mapped, ordefaultValueif this map contains no mapping for the key.default SeverityputIfAbsent(PrinterStateReason key, Severity value) If the specified key is not already associated with a value (or is mapped tonull) associates it with the given value and returnsnull, else returns the current value (optional operation).default booleanRemoves the entry for the specified key only if it is currently mapped to the specified value (optional operation).default Severityreplace(PrinterStateReason key, Severity value) Replaces the entry for the specified key only if it is currently mapped to some value (optional operation).default booleanreplace(PrinterStateReason key, Severity oldValue, Severity newValue) Replaces the entry for the specified key only if currently mapped to the specified value (optional operation).default voidreplaceAll(BiFunction<? super PrinterStateReason, ? super Severity, ? extends Severity> function) Replaces each entry's value with the result of invoking the given function on that entry until all entries have been processed or the function throws an exception (optional operation).
-
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
-
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
-