/* * Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package javax.print.event; import javax.print.DocPrintJob; import javax.print.attribute.AttributeSetUtilities; import javax.print.attribute.PrintJobAttributeSet; /** * Class PrintJobAttributeEvent encapsulates an event a PrintService * reports to let the client know that one or more printing attributes for a * PrintJob have changed. */ public class PrintJobAttributeEvent extends PrintEvent { private static final long serialVersionUID = -6534469883874742101L; private PrintJobAttributeSet attributes; /** * Constructs a PrintJobAttributeEvent object. * @param source the print job generating this event * @param attributes the attribute changes being reported * @throws IllegalArgumentException if <code>source</code> is * <code>null</code>. */ public PrintJobAttributeEvent (DocPrintJob source, PrintJobAttributeSet attributes) { super(source); this.attributes = AttributeSetUtilities.unmodifiableView(attributes); } /** * Determine the Print Job to which this print job event pertains. * * @return Print Job object. */ public DocPrintJob getPrintJob() { return (DocPrintJob) getSource(); } /** * Determine the printing attributes that changed and their new values. * * @return Attributes containing the new values for the print job * attributes that changed. The returned set may not be modifiable. */ public PrintJobAttributeSet getAttributes() { return attributes; } }