diff options
Diffstat (limited to 'libjava/classpath/javax/print/PrintService.java')
-rw-r--r-- | libjava/classpath/javax/print/PrintService.java | 296 |
1 files changed, 0 insertions, 296 deletions
diff --git a/libjava/classpath/javax/print/PrintService.java b/libjava/classpath/javax/print/PrintService.java deleted file mode 100644 index b7bd5008852..00000000000 --- a/libjava/classpath/javax/print/PrintService.java +++ /dev/null @@ -1,296 +0,0 @@ -/* PrintService.java -- - Copyright (C) 2004, 2006 Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath 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 for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - - -package javax.print; - -import javax.print.attribute.Attribute; -import javax.print.attribute.AttributeSet; -import javax.print.attribute.PrintServiceAttribute; -import javax.print.attribute.PrintServiceAttributeSet; -import javax.print.event.PrintServiceAttributeListener; - -/** - * A <code>PrintService</code> represents a printer available for printing. - * <p> - * The print service hereby may be a real physical printer device, a printer - * group with same capabilities or a logical print service (like for example - * a PDF writer). The print service is used to query the capabilities of the - * represented printer instance. If a suitable print service is found it is - * used to create a print job for the actual printing process. - * </p> - * @see javax.print.DocPrintJob - * - * @author Michael Koch (konqueror@gmx.de) - */ -public interface PrintService -{ - /** - * Creates and returns a new print job which is capable to handle all - * the document flavors supported by this print service. - * - * @return The created print job object. - */ - DocPrintJob createPrintJob(); - - /** - * Determines if two services refer to the same underlying service. - * - * @param obj the service to check against - * - * @return <code>true</code> if both services refer to the same underlying - * service, <code>false</code> otherwise. - */ - boolean equals(Object obj); - - /** - * Returns the value of the single specified attribute. - * - * @param category the category of a <code>PrintServiceAttribute</code> - * - * @return The value of the attribute, or <code>null</code> if the attribute - * category is not supported by this print service implementation. - * - * @throws NullPointerException if category is <code>null</code>. - * @throws IllegalArgumentException if category is not a class that - * implements <code>PrintServiceAttribute</code>. - */ - <T extends PrintServiceAttribute> T getAttribute(Class<T> category); - - /** - * Returns the attributes describing this print service. The returned - * attributes set is unmodifiable and represents the current state of - * the print service. As some print service attributes may change - * (depends on the print service implementation) a subsequent call to - * this method may return a different set. To monitor changes a - * <code>PrintServiceAttributeListener</code> may be registered. - * - * @return All the description attributes of this print service. - * @see #addPrintServiceAttributeListener(PrintServiceAttributeListener) - */ - PrintServiceAttributeSet getAttributes(); - - /** - * Determines and returns the default value for a given attribute category - * of this print service. - * <p> - * A return value of <code>null</code> means either that the print service - * does not support the attribute category or there is no default value - * available for this category. To distinguish these two case one can test - * with {@link #isAttributeCategorySupported(Class)} if the category is - * supported. - * </p> - * - * @param category the category of the attribute - * - * @return The default value, or <code>null</code>. - * - * @throws NullPointerException if <code>category</code> is <code>null</code> - * @throws IllegalArgumentException if <code>category</code> is a class - * not implementing <code>Attribute</code> - */ - Object getDefaultAttributeValue(Class<? extends Attribute> category); - - /** - * Returns the name of this print service. - * This may be the value of the <code>PrinterName</code> attribute. - * - * @return The print service name. - */ - String getName(); - - /** - * Returns a factory for UI components if supported by the print service. - * - * @return A factory for UI components or <code>null</code>. - */ - ServiceUIFactory getServiceUIFactory(); - - /** - * Returns all supported attribute categories. - * - * @return The class array of all supported attribute categories. - */ - Class<?>[] getSupportedAttributeCategories(); - - /** - * Determines and returns all supported attribute values of a given - * attribute category a client can use when setting up a print job - * for this print service. - * <p> - * The returned object may be one of the following types: - * <ul> - * <li>A single instance of the attribute category to indicate that any - * value will be supported.</li> - * <li>An array of the same type as the attribute category to test, - * containing all the supported values for this category.</li> - * <li>A single object (of any other type than the attribute category) - * which indicates bounds on the supported values.</li> - * </ul> - * </p> - * - * @param category the attribute category to test - * @param flavor the document flavor to use, or <code>null</code> - * @param attributes set of attributes for a supposed job, - * or <code>null</code> - * - * @return A object (as defined above) indicating the supported values - * for the given attribute category, or <code>null</code> if this print - * service doesn't support the given attribute category at all. - * - * @throws NullPointerException if <code>category</code> is null - * @throws IllegalArgumentException if <code>category</code> is a class not - * implementing <code>Attribute</code>, or if <code>flavor</code> is not - * supported - */ - Object getSupportedAttributeValues(Class<? extends Attribute> category, - DocFlavor flavor, - AttributeSet attributes); - - /** - * Determines and returns an array of all supported document flavors which - * can be used to supply print data to this print service. - * <p> - * The supported attribute categories may differ between the supported - * document flavors. To test for supported attributes one can use the - * {@link #getUnsupportedAttributes(DocFlavor, AttributeSet)} method with - * the specific doc flavor and attributes set. - * </p> - * - * @return the supported document flavors - */ - DocFlavor[] getSupportedDocFlavors(); - - /** - * Identifies all the unsupported attributes of the given set of attributes - * in the context of the specified document flavor. - * <p> - * The given flavor has to be supported by the print service (use - * {@link #isDocFlavorSupported(DocFlavor)} to verify). The method will - * return <code>null</code> if all given attributes are supported. Otherwise - * a set of unsupported attributes are returned. The attributes in the - * returned set may be completely unsupported or only the specific requested - * value. If flavor is <code>null</code> the default document flavor of the - * print service is used in the identification process. - * </p> - * - * @param flavor document flavor to test, or <code>null</code>. - * @param attributes set of printing attributes for a supposed job - * - * @return <code>null</code> if this print service supports all the given - * attributes for the specified doc flavor. Otherwise the set of unsupported - * attributes are returned. - * - * @throws IllegalArgumentException if <code>flavor</code> is unsupported - */ - AttributeSet getUnsupportedAttributes(DocFlavor flavor, AttributeSet attributes); - - - /** - * Returns a hashcode for this print service. - * - * @return The hashcode. - */ - int hashCode(); - - /** - * Determines a given attribute category is supported by this - * print service implementation. This only tests for the category - * not for any specific values of this category nor in the context - * of a specific document flavor. - * - * @param category the category to check - * - * @return <code>true</code> if <code>category</code> is supported, - * <code>false</code> otherwise. - * - * @throws NullPointerException if <code>category</code> is <code>null</code> - * @throws IllegalArgumentException if <code>category</code> is a class not - * implementing <code>Attribute</code>. - */ - boolean isAttributeCategorySupported(Class<? extends Attribute> category); - - /** - * Determines if a given attribute value is supported when creating a print - * job for this print service. - * <p> - * If either the document flavor or the provided attributes are - * <code>null</code> it is determined if the given attribute value is - * supported in some combination of the available document flavors and - * attributes of the print service. Otherwise it is checked for the - * specific context of the given document flavor/attributes set. - * </p> - * - * @param attrval the attribute value to check - * @param flavor the document flavor to use, or <code>null</code>. - * @param attributes set of attributes to use, or <code>null</code>. - * - * @return <code>true</code> if the attribute value is supported in the - * requested context, <code>false</code> otherwise. - * - * @throws NullPointerException if <code>attrval</code> is <code>null</code>. - * @throws IllegalArgumentException if <code>flavor</code> is not supported - * by this print service - */ - boolean isAttributeValueSupported(Attribute attrval, DocFlavor flavor, AttributeSet attributes); - - /** - * Determines if a given document flavor is supported or not. - * - * @param flavor the document flavor to check - * - * @return <code>true</code> if <code>flavor</code> is supported, - * <code>false</code> otherwise. - * - * @throws NullPointerException if <code>flavor</code> is null. - */ - boolean isDocFlavorSupported(DocFlavor flavor); - - /** - * Registers a print service attribute listener to this print service. - * - * @param listener the listener to add - */ - void addPrintServiceAttributeListener(PrintServiceAttributeListener listener); - - /** - * De-registers a print service attribute listener from this print service. - * - * @param listener the listener to remove - */ - void removePrintServiceAttributeListener(PrintServiceAttributeListener listener); -} |