javax.print.attribute.standard

## Class PrinterState

- java.lang.Object
- - javax.print.attribute.EnumSyntax
  - - javax.print.attribute.standard.PrinterState

- All Implemented Interfaces:
    Serializable, Cloneable, Attribute, PrintServiceAttribute

      public final class PrinterState
      extends EnumSyntax
      implements PrintServiceAttribute

  Class PrinterState is a printing attribute class, an enumeration, that identifies the current state of a printer. Class PrinterState defines standard printer state values. A Print Service implementation only needs to report those printer states which are appropriate for the particular implementation; it does not have to report every defined printer state. The `PrinterStateReasons` attribute augments the PrinterState attribute to give more detailed information about the printer in given printer state.

  IPP Compatibility: The category name returned by `getName()` is the IPP attribute name. The enumeration's integer value is the IPP enum value. The `toString()` method returns the IPP string representation of the attribute value.

  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static PrinterState` | `IDLE` | Indicates that new jobs can start processing without waiting.
    `static PrinterState` | `PROCESSING` | Indicates that jobs are processing; new jobs will wait before processing.
    `static PrinterState` | `STOPPED` | Indicates that no jobs can be processed and intervention is required.
    `static PrinterState` | `UNKNOWN` | The printer state is unknown.

  - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `protected` | `PrinterState(int value)` | Construct a new printer state enumeration value with the given integer value.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `Class<? extends Attribute>` | `getCategory()` | Get the printing attribute class which is to be used as the "category" for this printing attribute value.
    `protected EnumSyntax[]` | `getEnumValueTable()` | Returns the enumeration value table for class PrinterState.
    `String` | `getName()` | Get the name of the category of which this attribute value is an instance.
    `protected String[]` | `getStringTable()` | Returns the string table for class PrinterState.

    - ### Methods inherited from class javax.print.attribute.EnumSyntax

      `clone, getOffset, getValue, hashCode, readResolve, toString`

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### UNKNOWN

          public static final PrinterState UNKNOWN

      The printer state is unknown.

    - #### IDLE

          public static final PrinterState IDLE

      Indicates that new jobs can start processing without waiting.

    - #### PROCESSING

          public static final PrinterState PROCESSING

      Indicates that jobs are processing; new jobs will wait before processing.

    - #### STOPPED

          public static final PrinterState STOPPED

      Indicates that no jobs can be processed and intervention is required.

  - ### Constructor Detail

    - #### PrinterState

          protected PrinterState(int value)

      Construct a new printer state enumeration value with the given integer value.
      Parameters:
        `value` - Integer value.

  - ### Method Detail

    - #### getStringTable

          protected String[] getStringTable()

      Returns the string table for class PrinterState.
      Overrides:
        `getStringTable` in class `EnumSyntax`
      Returns:
        the string table

    - #### getEnumValueTable

          protected EnumSyntax[] getEnumValueTable()

      Returns the enumeration value table for class PrinterState.
      Overrides:
        `getEnumValueTable` in class `EnumSyntax`
      Returns:
        the value table

    - #### 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 PrinterState, the category is class PrinterState 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 PrinterState, the category name is `"printer-state"`.

      Specified by:
        `getName` in interface `Attribute`
      Returns:
        Attribute category name.

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.