# Class JobMediaSheets

java.lang.Object
javax.print.attribute.IntegerSyntax
javax.print.attribute.standard.JobMediaSheets

All Implemented Interfaces:
  `Serializable, Cloneable, Attribute, PrintJobAttribute, PrintRequestAttribute`

public class JobMediaSheets extends IntegerSyntax implements PrintRequestAttribute, PrintJobAttribute
Class `JobMediaSheets` is an integer valued printing attribute class that specifies the total number of media sheets to be produced for this job.

The `JobMediaSheets` attribute describes the size of the job. This attribute is not intended to be a counter; it is intended to be useful routing and scheduling information if known. The printer may try to compute the `JobMediaSheets` attribute's value if it is not supplied in the Print Request. Even if the client does supply a value for the `JobMediaSheets` attribute in the Print Request, the printer may choose to change the value if the printer is able to compute a value which is more accurate than the client supplied value. The printer may be able to determine the correct value for the `JobMediaSheets` attribute either right at job submission time or at any later point in time.

Unlike the `JobKOctets` and `JobImpressions` attributes, the `JobMediaSheets` value must include the multiplicative factors contributed by the number of copies specified by the `Copies` attribute and a "number of copies" instruction embedded in the document data, if any. This difference allows the system administrator to control the lower and upper bounds of both (1) the size of the document(s) with `JobKOctetsSupported` and `JobImpressionsSupported` and (2) the size of the job with `JobMediaSheetsSupported`.

IPP Compatibility: The integer value gives the IPP integer value. The category name returned by `getName()` gives the IPP attribute name.

See Also:
  - `JobMediaSheetsSupported`
  - `JobMediaSheetsCompleted`
  - `JobKOctets`
  - `JobImpressions`
  - Serialized Form

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `JobMediaSheets(int value)`
  Construct a new job media sheets attribute with the given integer value.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `equals(Object object)`
  Returns whether this job media sheets attribute is equivalent to the passed in object.
  `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.

  ### Methods declared in class IntegerSyntax

  `getValue, hashCode, toString`
  Modifier and Type
  Method
  Description
  `int`
  `getValue()`
  Returns this integer attribute's integer value.
  `int`
  `hashCode()`
  Returns a hash code value for this integer attribute.
  `String`
  `toString()`
  Returns a string value corresponding to this integer attribute.

  ### Methods declared in class Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`
  Modifier and Type
  Method
  Description
  `protected Object`
  `clone()`
  Creates and returns a copy of this object.
  `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.

- ## Constructor Details

  - ### JobMediaSheets

    public JobMediaSheets(int value)
    Construct a new job media sheets attribute with the given integer value.
    Parameters:
      `value` - Integer value
    Throws:
      `IllegalArgumentException` - if `value` is negative

- ## Method Details

  - ### equals

    public boolean equals(Object object)
    Returns whether this job media sheets attribute is equivalent to the passed in object. To be equivalent, all of the following conditions must be true:
    1. `object` is not `null`.
    2. `object` is an instance of class `JobMediaSheets`.
    3. This job media sheets attribute's value and `object`'s value are equal.
    Overrides:
      `equals` in class `IntegerSyntax`
    Parameters:
      `object` - `Object` to compare to
    Returns:
      `true` if `object` is equivalent to this job media sheets attribute, `false` otherwise
    See Also:
      - `Object.hashCode()`
      - `HashMap`

  - ### 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 `JobMediaSheets` and any vendor-defined subclasses, the category is class `JobMediaSheets` 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 `JobMediaSheets` and any vendor-defined subclasses, the category name is `"job-media-sheets"`.

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