Spec-Zone.ru › OpenJDK 27

Class PrinterStateReasons

java.lang.Object
java.util.AbstractMap<PrinterStateReason, Severity>
java.util.HashMap<PrinterStateReason, Severity>
javax.print.attribute.standard.PrinterStateReasons
All Implemented Interfaces:
Serializable, Cloneable, Map<PrinterStateReason, Severity>, Attribute, PrintServiceAttribute
public final class PrinterStateReasons extends HashMap<PrinterStateReason, Severity> implements PrintServiceAttribute
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 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:
  • Serialized Form

Nested Class Summary

Nested classes/interfaces declared in class AbstractMap

AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>
Modifier and Type Class Description
static class  AbstractMap.SimpleEntry<K,V>
An Entry maintaining a key and a value.
static class  AbstractMap.SimpleImmutableEntry<K,V>
An unmodifiable Entry maintaining a key and a value.

Nested classes/interfaces declared in interface Map

Map.Entry<K,V>
Modifier and Type Interface Description
static interface  Map.Entry<K,V>
A map entry (key-value pair).

Constructor Summary

Constructor Description
PrinterStateReasons()
Construct 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.
PrinterStateReasons(Map<PrinterStateReason, Severity> map)
Construct a new printer state reasons attribute that contains the same PrinterStateReason-to-Severity mappings as the given map.

Method Summary

Modifier and Type Method Description
final Class<? extends Attribute> getCategory()
Get the printing attribute class which is to be used as the "category" for this printing attribute value.
final String getName()
Get the name of the category of which this attribute value is an instance.
Set<PrinterStateReason> printerStateReasonSet(Severity severity)
Obtain an unmodifiable set view of the individual printer state reason attributes at the given severity level in this PrinterStateReasons attribute.
Severity 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, values
Modifier and Type Method Description
void clear()
Removes all of the mappings from this map.
Object clone()
Returns a shallow copy of this HashMap instance: the keys and values themselves are not cloned.
Severity 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, or null if there is no current mapping (optional operation).
Severity computeIfAbsent(PrinterStateReason key, Function<? super PrinterStateReason, ? extends Severity> mappingFunction)
If the specified key is not already associated with a value (or is mapped to null), attempts to compute its value using the given mapping function and enters it into this map unless null (optional operation).
Severity 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).
boolean containsKey(Object key)
Returns true if this map contains a mapping for the specified key.
boolean containsValue(Object value)
Returns true if this map maps one or more keys to the specified value.
Set<Map.Entry<PrinterStateReason, Severity>> entrySet()
Returns a Set view of the mappings contained in this map.
Severity get(Object key)
Returns the value to which the specified key is mapped, or null if this map contains no mapping for the key.
boolean isEmpty()
Returns true if this map contains no key-value mappings.
Set<PrinterStateReason> keySet()
Returns a Set view of the keys contained in this map.
Severity 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.
void putAll(Map<? extends PrinterStateReason, ? extends Severity> m)
Copies all of the mappings from the specified map to this map.
Severity remove(Object key)
Removes the mapping for the specified key from this map if present.
int size()
Returns the number of key-value mappings in this map.
Collection<Severity> values()
Returns a Collection view of the values contained in this map.

Methods declared in class AbstractMap

equals, hashCode, toString
Modifier and Type Method Description
boolean equals(Object o)
Compares the specified object with this map for equality.
int hashCode()
Returns the hash code value for this map.
String toString()
Returns a string representation of this map.

Methods declared in class Object

finalize, getClass, notify, notifyAll, wait, wait, wait
Modifier and Type Method Description
protected void finalize()
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 this Object.
final void notify()
Wakes up a single thread that is waiting on this object's monitor.
final void notifyAll()
Wakes up all threads that are waiting on this object's monitor.
final void wait()
Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
final void wait(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 void wait(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, replaceAll
Modifier and Type Method Description
default void forEach(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 Severity getOrDefault(Object key, Severity defaultValue)
Returns the value to which the specified key is mapped, or defaultValue if this map contains no mapping for the key.
default Severity putIfAbsent(PrinterStateReason key, Severity value)
If the specified key is not already associated with a value (or is mapped to null) associates it with the given value and returns null, else returns the current value (optional operation).
default boolean remove(Object key, Object value)
Removes the entry for the specified key only if it is currently mapped to the specified value (optional operation).
default Severity replace(PrinterStateReason key, Severity value)
Replaces the entry for the specified key only if it is currently mapped to some value (optional operation).
default boolean replace(PrinterStateReason key, Severity oldValue, Severity newValue)
Replaces the entry for the specified key only if currently mapped to the specified value (optional operation).
default void replaceAll(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 capacity
loadFactor - load factor
Throws:
IllegalArgumentException - if the initial capacity is negative

PrinterStateReasons

public PrinterStateReasons(Map<PrinterStateReason, Severity> map)
Construct a new printer state reasons attribute that contains the same PrinterStateReason-to-Severity mappings as the given map. The underlying hash map's initial capacity and load factor are as specified in the superclass constructor HashMap(Map).
Parameters:
map - map to copy
Throws:
NullPointerException - if map is null or if any key or value in map is null
ClassCastException - if any key in map is not an instance of class PrinterStateReason or if any value in map is not an instance of class Severity

Method Details

put

public Severity put(PrinterStateReason reason, Severity severity)
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:
put in interface Map<PrinterStateReason, Severity>
Overrides:
put in class HashMap<PrinterStateReason, Severity>
Parameters:
reason - printer state reason. This must be an instance of class PrinterStateReason
severity - severity of the printer state reason. This must be an instance of class Severity
Returns:
previous severity associated with the given printer state reason, or null if the given printer state reason was not present
Throws:
NullPointerException - if reason is null or severity is null
ClassCastException - if reason is not an instance of class PrinterStateReason or if severity is not an instance of class Severity
Since:
1.5

getCategory

public final Class<? extends Attribute> 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 class PrinterStateReasons itself.

Specified by:
getCategory in interface Attribute
Returns:
printing attribute class (category), an instance of class java.lang.Class

getName

public final String 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".

Specified by:
getName in interface Attribute
Returns:
attribute category name

printerStateReasonSet

public Set<PrinterStateReason> printerStateReasonSet(Severity severity)
Obtain an unmodifiable set view of the individual printer state reason attributes at the given severity level in this PrinterStateReasons attribute. Each element in the set view is a PrinterStateReason object. The only elements in the set view are the PrinterStateReason objects that map to the given severity value. The set view is backed by this PrinterStateReasons attribute, so changes to this PrinterStateReasons attribute 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 PrinterStateReason attributes at the given Severity level
Throws:
NullPointerException - if severity is null

Report a bug or suggest an enhancement
For further API reference and developer documentation see the Java SE Documentation, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples. Other versions.
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 1993, 2026, Oracle and/or its affiliates, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
All rights reserved. Use is subject to license terms and the documentation redistribution policy.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API