Module java.desktop

Class JobHoldUntil

java.lang.Object
javax.print.attribute.DateTimeSyntax
javax.print.attribute.standard.JobHoldUntil
所有已实现的接口:
Serializable, Cloneable, Attribute, PrintJobAttribute, PrintRequestAttribute

public final class JobHoldUntil extends DateTimeSyntax implements PrintRequestAttribute, PrintJobAttribute
JobHoldUntil是一个打印属性类,一个日期时间属性,指定作业必须成为打印候选的确切日期和时间。

如果此属性的值指定的日期时间在未来,打印机应将JOB_HOLD_UNTIL_SPECIFIED值添加到作业的JobStateReasons属性中,必须将作业移动到PENDING_HELD状态,并且直到指定的日期时间到达之前,不得安排作业进行打印。

当指定的日期时间到达时,如果存在,打印机必须从作业的JobStateReasons属性中删除JOB_HOLD_UNTIL_SPECIFIED值。如果没有其他保持作业处于PENDING_HELD状态的作业状态原因,则打印机必须将作业移动到PENDING状态以考虑作业作为候选进行处理。

如果指定的日期时间已经过去,则作业必须立即成为处理的候选。因此,使作业立即成为处理候选的一种方法是指定构造如下的JobHoldUntil属性(表示1970年1月1日00:00:00 GMT的日期时间):

     JobHoldUntil immediately = new JobHoldUntil (new Date (0L));
 

如果客户端在打印请求中未提供此属性并且打印机支持此属性,则打印机必须在作业提交时使用其(实现相关的)默认JobHoldUntil值(与大多数作业模板属性不同,这些属性在必要时在作业处理时使用)。

要从年、月、日、小时、分钟等单独的值构造JobHoldUntil属性,请使用Calendar对象构造Date对象,然后使用Date对象构造JobHoldUntil属性。要将JobHoldUntil属性转换为年、月、日、小时、分钟等单独的值,请创建Calendar对象并将其设置为来自JobHoldUntil属性的Date

IPP兼容性: 虽然IPP支持指定为关键字的“job-hold-until”属性,但目前IPP不支持指定为日期和时间的“job-hold-until”属性。但是,可以将日期和时间转换为标准IPP关键字之一,但会有一些精度损失;例如,具有今天日期和当地时间下午9:00的JobHoldUntil值可能会转换为标准IPP关键字“night”。getName()返回的类别名称给出了IPP属性名称。

参见:
  • Constructor Details

    • JobHoldUntil

      public JobHoldUntil(Date dateTime)
      使用给定的Date值构造一个新的作业保留直到日期时间属性。
      参数:
      dateTime - Date
      抛出:
      NullPointerException - 如果dateTimenull
  • Method Details

    • equals

      public boolean equals(Object object)
      返回此作业保留直到属性是否等同于传入的对象。要等同,必须满足以下所有条件:
      1. object不为null
      2. objectJobHoldUntil类的实例。
      3. 此作业保留直到属性的Date值和objectDate值相等。
      覆盖:
      equals 在类 DateTimeSyntax
      参数:
      object - 要比较的Object
      返回:
      如果object等同于此作业保留直到属性,则返回true,否则返回false
      参见:
    • getCategory

      public final Class<? extends Attribute> getCategory()
      获取用作此打印属性值的“类别”的打印属性类。

      对于类JobHoldUntil,类别是JobHoldUntil类本身。

      指定者:
      getCategory 在接口 Attribute
      返回:
      打印属性类(类别),java.lang.Class类的实例
    • getName

      public final String getName()
      获取此属性值是其实例的类别的名称。

      对于类JobHoldUntil,类别名称为"job-hold-until"

      指定者:
      getName 在接口 Attribute
      返回:
      属性类别名称