Imported GNU Classpath 0.90
[official-gcc.git] / libjava / classpath / gnu / javax / print / ipp / attribute / supported / OperationsSupported.java
blob81e2e34cd05bbb7efa29694ae11538fe6f8d7cea
1 /* OperationsSupported.java --
2 Copyright (C) 2006 Free Software Foundation, Inc.
4 This file is part of GNU Classpath.
6 GNU Classpath is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2, or (at your option)
9 any later version.
11 GNU Classpath is distributed in the hope that it will be useful, but
12 WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with GNU Classpath; see the file COPYING. If not, write to the
18 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
19 02110-1301 USA.
21 Linking this library statically or dynamically with other modules is
22 making a combined work based on this library. Thus, the terms and
23 conditions of the GNU General Public License cover the whole
24 combination.
26 As a special exception, the copyright holders of this library give you
27 permission to link this library with independent modules to produce an
28 executable, regardless of the license terms of these independent
29 modules, and to copy and distribute the resulting executable under
30 terms of your choice, provided that you also meet, for each linked
31 independent module, the terms and conditions of the license of that
32 module. An independent module is a module which is not derived from
33 or based on this library. If you modify this library, you may extend
34 this exception to your version of the library, but you are not
35 obligated to do so. If you do not wish to do so, delete this
36 exception statement from your version. */
39 package gnu.javax.print.ipp.attribute.supported;
41 import javax.print.attribute.EnumSyntax;
42 import javax.print.attribute.SupportedValuesAttribute;
44 /**
45 * <code>OperationsSupported</code> specifies the enums of the operations
46 * supported by a given printer or job object. The attribute is further
47 * specified in RFC 2911 section 4.4.15.
49 * @author Wolfgang Baer (WBaer@gmx.de)
51 public final class OperationsSupported extends EnumSyntax
52 implements SupportedValuesAttribute
55 * Value Operation Name
56 ----------------- -------------------------------------
57 0x0000 reserved, not used
58 0x0001 reserved, not used
59 0x0002 Print-Job
60 0x0003 Print-URI
61 0x0004 Validate-Job
62 0x0005 Create-Job
63 0x0006 Send-Document
64 0x0007 Send-URI
65 0x0008 Cancel-Job
66 0x0009 Get-Job-Attributes
67 0x000A Get-Jobs
68 0x000B Get-Printer-Attributes
69 0x000C Hold-Job
70 0x000D Release-Job
71 0x000E Restart-Job
72 0x000F reserved for a future operation
73 0x0010 Pause-Printer
74 0x0011 Resume-Printer
75 0x0012 Purge-Jobs
76 0x0013-0x3FFF reserved for future IETF standards track operations
77 0x4000-0x8FFF reserved for vendor extensions
80 // standard ipp 1.1 operations
82 /**
83 * Operation to print a job in one request/response. */
84 public static final OperationsSupported PRINT_JOB =
85 new OperationsSupported(0x02);
87 /** Operation to print a document from an URI */
88 public static final OperationsSupported PRINT_URI =
89 new OperationsSupported(0x03);
91 /** Operation to validate a job before submission. */
92 public static final OperationsSupported VALIDATE_JOB =
93 new OperationsSupported(0x04);
95 /**
96 * Operation to create an initial job for use with multiple document per job.
98 public static final OperationsSupported CREATE_JOB =
99 new OperationsSupported(0x05);
101 /**
102 * Operation to send a document to a multidoc job created via CREATE_JOB
104 public static final OperationsSupported SEND_DOCUMENT =
105 new OperationsSupported(0x06);
107 /**
108 * Operation to send a document uri to a multidoc job created
109 * via CREATE_JOB. The document accessible from this URI will be printed.
111 public static final OperationsSupported SEND_URI =
112 new OperationsSupported(0x07);
114 /** Operation to cancel a job by its ID or name. */
115 public static final OperationsSupported CANCEL_JOB =
116 new OperationsSupported(0x08);
118 /** Operation to get job attributes of a current job. */
119 public static final OperationsSupported GET_JOB_ATTRIBUTES =
120 new OperationsSupported(0x09);
122 /** Operation to pause a printer. */
123 public static final OperationsSupported PAUSE_PRINTER =
124 new OperationsSupported(0x10);
126 /** Operation to get all currently queued or processed jobs. */
127 public static final OperationsSupported GET_JOBS =
128 new OperationsSupported(0x0A);
130 /** Operation to get the attributes of a printer. */
131 public static final OperationsSupported GET_PRINTER_ATTRIBUTES =
132 new OperationsSupported(0x0B);
134 /** Operation to put a job on hold by its ID or name. */
135 public static final OperationsSupported HOLD_JOB =
136 new OperationsSupported(0x0C);
138 /** Operation to release a job by its ID or name. */
139 public static final OperationsSupported RELEASE_JOB =
140 new OperationsSupported(0x0D);
142 /** Operation to restart a job by its ID or name. */
143 public static final OperationsSupported RESTART_JOB =
144 new OperationsSupported(0x0E);
146 /** Not yet an operation - reserved for futher use. */
147 public static final OperationsSupported RESERVED =
148 new OperationsSupported(0x0F);
150 /** Operation to resume a printer. */
151 public static final OperationsSupported RESUME_PRINTER =
152 new OperationsSupported(0x11);
154 /** Operation to remove all jobs from a printer regardless of state. */
155 public static final OperationsSupported PURGE_JOBS =
156 new OperationsSupported(0x12);
159 private static final String[] stringTable = { "print-job", "print-uri",
160 "validate-job", "create-job",
161 "send-document", "send-uri",
162 "cancel-job", "get-job-attributes",
163 "pause-printer", "get-jobs",
164 "get-printer-attributes", "hold-job",
165 "release-job", "restart-job", "reserved",
166 "resume-printer", "purge-job"};
168 private static final OperationsSupported[] enumValueTable =
169 { PRINT_JOB, PRINT_URI, VALIDATE_JOB, CREATE_JOB, SEND_DOCUMENT, SEND_URI,
170 CANCEL_JOB, GET_JOB_ATTRIBUTES, PAUSE_PRINTER, GET_JOBS, GET_PRINTER_ATTRIBUTES,
171 HOLD_JOB, RELEASE_JOB, RESTART_JOB, RESERVED, RESUME_PRINTER, PURGE_JOBS};
175 * Constructs a <code>OperationsSupported</code> object.
177 * @param value the enum value
179 protected OperationsSupported(int value)
181 super(value);
185 * Returns category of this class.
187 * @return The class <code>OperationsSupported</code> itself.
189 public Class getCategory()
191 return OperationsSupported.class;
195 * Returns the name of this attribute.
197 * @return The name "operations-supported".
199 public String getName()
201 return "operations-supported";
205 * Returns a table with the enumeration values represented as strings
206 * for this object.
208 * @return The enumeration values as strings.
210 protected String[] getStringTable()
212 return stringTable;
216 * Returns a table with the enumeration values for this object.
218 * @return The enumeration values.
220 protected EnumSyntax[] getEnumValueTable()
222 return enumValueTable;
225 // we start with 2
226 protected int getOffset()
228 return 2;