-
- All Superinterfaces:
-
DocPrintJob
public interface CancelablePrintJob extends DocPrintJob
打印应用程序使用此接口取消打印作业。 此接口扩展名为DocPrintJob
。 如果可以取消打印作业,则从打印服务返回的DocPrintJob
实现实现此接口。 在尝试取消打印作业之前,客户端需要测试从打印服务返回的DocPrintJob
对象是否实际实现了此接口。 客户端永远不应该假设DocPrintJob
实现了此接口。 打印服务可能仅支持取消某些类型的打印数据和表示类名称。 这意味着只有部分从服务返回的DocPrintJob
对象才会实现此接口。如果使用此接口的实现成功取消作业,则鼓励服务实现者实现此可选接口并向任何侦听器传递
PrintJobEvent.JOB_CANCELED
事件。 服务还应注意,此方法的实现可以从单独的客户端线程进行,而不是发出打印请求的客户端线程。 因此,必须使此接口的实现成为线程安全的。
-
-
方法详细信息
-
cancel
void cancel() throws PrintException
停止进一步处理打印作业。如果服务支持此方法,则无法断定取消作业将始终成功。 一旦工作达到并通过处理中的某个点,工作可能无法取消。 成功取消仅表示未打印整个作业,取消返回时某些部分可能已经打印。
如果取消没有成功,该服务将抛出
PrintException
。 尚未提交打印的作业应抛出此异常。 取消已成功取消的打印作业不会被视为错误,并且始终会成功。某些服务中的取消可能是一个漫长的过程,涉及对服务器的请求和其打印队列的处理。 客户端可能希望在不影响应用程序执行的线程中执行cancel。
- 异常
-
PrintException
- 如果作业无法成功取消
-
-