125 lines · 4.1 KB · Java
RawDownload
/* * Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation.  Oracle designates this * particular file as subject to the "Classpath" exception as provided * by Oracle in the LICENSE file that accompanied this code. * * This code is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License * version 2 for more details (a copy is included in the LICENSE file that * accompanied this code). * * You should have received a copy of the GNU General Public License version * 2 along with this work; if not, write to the Free Software Foundation, * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. * * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA * or visit www.oracle.com if you need additional information or have any * questions. */ package javax.print.event; import javax.print.DocPrintJob; /** * * Class <code>PrintJobEvent</code> encapsulates common events a print job * reports to let a listener know of progress in the processing of the * {@link DocPrintJob}. * */ public class PrintJobEvent extends PrintEvent {    private static final long serialVersionUID = -1711656903622072997L;    private int reason;    /**    * The job was canceled by the {@link javax.print.PrintService PrintService}.    */   public static final int JOB_CANCELED   = 101;    /**    * The document cis completely printed.    */   public static final int JOB_COMPLETE       = 102;    /**    * The print service reports that the job cannot be completed.    * The application must resubmit the job.    */    public static final int JOB_FAILED         = 103;    /**    * The print service indicates that a - possibly transient - problem    * may require external intervention before the print service can    * continue.  One example of an event that can    * generate this message is when the printer runs out of paper.    */   public static final int REQUIRES_ATTENTION = 104;    /**    * Not all print services may be capable of delivering interesting    * events, or even telling when a job is complete. This message indicates    * the print job has no further information or communication    * with the print service. This message should always be delivered    * if a terminal event (completed/failed/canceled) is not delivered.    * For example, if messages such as JOB_COMPLETE have NOT been received    * before receiving this message, the only inference that should be drawn    * is that the print service does not support delivering such an event.    */   public static final int NO_MORE_EVENTS    = 105;    /**    * The job is not necessarily printed yet, but the data has been transferred    * successfully from the client to the print service. The client may    * free data resources.    */   public static final int DATA_TRANSFER_COMPLETE    = 106;    /**     * Constructs a <code>PrintJobEvent</code> object.     *     * @param source  a <code>DocPrintJob</code> object     * @param reason  an int specifying the reason.     * @throws IllegalArgumentException if <code>source</code> is     *         <code>null</code>.     */     public PrintJobEvent( DocPrintJob source, int reason) {         super(source);        this.reason = reason;   }     /**     * Gets the reason for this event.     * @return  reason int.     */    public int getPrintEventType() {        return reason;    }     /**     * Determines the <code>DocPrintJob</code> to which this print job     * event pertains.     *     * @return  the <code>DocPrintJob</code> object that represents the     *          print job that reports the events encapsulated by this     *          <code>PrintJobEvent</code>.     *     */    public DocPrintJob getPrintJob() {        return (DocPrintJob) getSource();    }  }