模块  java.desktop
软件包  javax.print

Interface CancelablePrintJob

  • All Superinterfaces:
    DocPrintJob

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

    如果使用此接口的实现成功取消作业,则鼓励服务实现者实现此可选接口并向任何侦听器传递PrintJobEvent.JOB_CANCELED事件。 服务还应注意,此方法的实现可以从单独的客户端线程进行,而不是发出打印请求的客户端线程。 因此,必须使此接口的实现成为线程安全的。

    • 方法详细信息

      • cancel

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

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

        如果取消没有成功,该服务将抛出PrintException 尚未提交打印的作业应抛出此异常。 取消已成功取消的打印作业不会被视为错误,并且始终会成功。

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

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