Module  java.desktop
软件包  javax.print

Interface CancelablePrintJob

  • All Superinterfaces:
    DocPrintJob


    public interface CancelablePrintJob
    extends DocPrintJob
    此接口由打印应用程序用于取消打印作业。 此界面扩展了DocPrintJob 如果可以取消打印作业,则从打印服务返回的DocPrintJob实现实现此接口。 在尝试取消打印作业之前,客户端需要测试打印服务返回的DocPrintJob对象是否实际上实现了此接口。 客户端永远不应该假定一个DocPrintJob实现了这个接口。 打印服务可能仅支持某些类型的打印数据和表示类名称的取消。 这意味着从服务返回的一些DocPrintJob对象将实现此接口。

    鼓励服务实现者实现此可选接口,并且如果使用此接口的实现成功取消作业,则向任何侦听器传递javax.print.event.PrintJobEvent.JOB_CANCELLED事件。 服务还应该注意到,这种方法的实现可以由单独的客户端线程制作,而不是制作打印请求。 因此,这个接口的实现必须使线程安全。

    • 方法详细信息

      • cancel

        void cancel​()
             throws PrintException
        停止打印作业的进一步处理。

        如果一项服务支持这种方法,则不能断定作业取消将始终成功。 一旦达到并通过了处理中的某一点,工作可能无法取消。 取消成功仅表示整个作业未打印,某些部分可能在取消退货时已经打印。

        如果取消不成功,该服务将抛出一个PrintException。 尚未提交印刷的作业应抛出此异常。 取消已经成功取消的打印作业不被认为是错误,并且将始终成功。

        某些服务中的取消可能是一个漫长的过程,涉及对服务器的请求和其打印队列的处理。 客户可能希望在不影响应用程序执行的线程中执行取消。

        异常
        PrintException - 如果作业无法成功取消。