001/* PrinterStateReason.java -- 002 Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc. 003 004This file is part of GNU Classpath. 005 006GNU Classpath is free software; you can redistribute it and/or modify 007it under the terms of the GNU General Public License as published by 008the Free Software Foundation; either version 2, or (at your option) 009any later version. 010 011GNU Classpath is distributed in the hope that it will be useful, but 012WITHOUT ANY WARRANTY; without even the implied warranty of 013MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 014General Public License for more details. 015 016You should have received a copy of the GNU General Public License 017along with GNU Classpath; see the file COPYING. If not, write to the 018Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 01902110-1301 USA. 020 021Linking this library statically or dynamically with other modules is 022making a combined work based on this library. Thus, the terms and 023conditions of the GNU General Public License cover the whole 024combination. 025 026As a special exception, the copyright holders of this library give you 027permission to link this library with independent modules to produce an 028executable, regardless of the license terms of these independent 029modules, and to copy and distribute the resulting executable under 030terms of your choice, provided that you also meet, for each linked 031independent module, the terms and conditions of the license of that 032module. An independent module is a module which is not derived from 033or based on this library. If you modify this library, you may extend 034this exception to your version of the library, but you are not 035obligated to do so. If you do not wish to do so, delete this 036exception statement from your version. */ 037 038 039package javax.print.attribute.standard; 040 041import javax.print.attribute.Attribute; 042import javax.print.attribute.EnumSyntax; 043 044/** 045 * The <code>PrinterStateReason</code> attribute provides additional 046 * information about the current state of the printer device. Its always part 047 * of the {@link javax.print.attribute.standard.PrinterStateReasons} 048 * printing attribute. 049 * <p> 050 * <b>IPP Compatibility:</b> PrinterStateReason is not an IPP 1.1 051 * attribute itself but used inside the <code>PrinterStateReasons</code> 052 * attribute. 053 * </p> 054 * 055 * @author Michael Koch (konqueror@gmx.de) 056 * @author Wolfgang Baer (WBaer@gmx.de) 057 */ 058public class PrinterStateReason extends EnumSyntax 059 implements Attribute 060{ 061 private static final long serialVersionUID = -1623720656201472593L; 062 063 /** 064 * Any state other state not listed here. 065 */ 066 public static final PrinterStateReason OTHER = new PrinterStateReason(0); 067 068 /** 069 * A media tray has run out of media. 070 */ 071 public static final PrinterStateReason MEDIA_NEEDED = 072 new PrinterStateReason(1); 073 074 /** 075 * A media jam occured in the printer device. 076 */ 077 public static final PrinterStateReason MEDIA_JAM = new PrinterStateReason(2); 078 079 /** 080 * Indicates that the printer has been paused by the pause printer 081 * operation and is currently moving to the pause state. 082 */ 083 public static final PrinterStateReason MOVING_TO_PAUSED = 084 new PrinterStateReason(3); 085 086 /** 087 * The printer device has be paused by the pause printer operation. 088 */ 089 public static final PrinterStateReason PAUSED = new PrinterStateReason(4); 090 091 /** 092 * The printer device has been shutdown or removed from service. 093 */ 094 public static final PrinterStateReason SHUTDOWN = new PrinterStateReason(5); 095 096 /** 097 * The printer object is connecting to the device. If a printer 098 * device is on the network the printer object may be unable to connect. 099 */ 100 public static final PrinterStateReason CONNECTING_TO_DEVICE = 101 new PrinterStateReason(6); 102 103 /** 104 * The connection to the device has timed out. 105 */ 106 public static final PrinterStateReason TIMED_OUT = new PrinterStateReason(7); 107 108 /** 109 * The printer object is stopping the printer device. 110 */ 111 public static final PrinterStateReason STOPPING = new PrinterStateReason(8); 112 113 /** 114 * The printer object has stopped partly. A printer object may control 115 * several physical output devices (e.g. a printer class in CUPS) and 116 * stop only some of the devices. 117 */ 118 public static final PrinterStateReason STOPPED_PARTLY = 119 new PrinterStateReason(9); 120 121 /** 122 * The printer device is low on toner. 123 */ 124 public static final PrinterStateReason TONER_LOW = 125 new PrinterStateReason(10); 126 127 /** 128 * The printer device is out of toner. 129 */ 130 public static final PrinterStateReason TONER_EMPTY = 131 new PrinterStateReason(11); 132 133 /** 134 * The printers spool area is currently full. The printer is 135 * currently not able to accept jobs. 136 */ 137 public static final PrinterStateReason SPOOL_AREA_FULL = 138 new PrinterStateReason(12); 139 140 /** 141 * One or more covers of the printer device are open. 142 */ 143 public static final PrinterStateReason COVER_OPEN = 144 new PrinterStateReason(13); 145 146 /** 147 * One or more interlocks of the printer device are open. 148 */ 149 public static final PrinterStateReason INTERLOCK_OPEN = 150 new PrinterStateReason(14); 151 152 /** 153 * One or more doors of the printer device are open. 154 */ 155 public static final PrinterStateReason DOOR_OPEN = 156 new PrinterStateReason(15); 157 158 /** 159 * One or more input trays are missing in the printer device. 160 */ 161 public static final PrinterStateReason INPUT_TRAY_MISSING = 162 new PrinterStateReason(16); 163 164 /** 165 * The printer device is low on media. 166 */ 167 public static final PrinterStateReason MEDIA_LOW = 168 new PrinterStateReason(17); 169 170 /** 171 * The printer device is out of media. 172 */ 173 public static final PrinterStateReason MEDIA_EMPTY = 174 new PrinterStateReason(18); 175 176 /** 177 * One or more output trays are missing in the printer device. 178 */ 179 public static final PrinterStateReason OUTPUT_TRAY_MISSING = 180 new PrinterStateReason(19); 181 182 /** 183 * One or more output areas of the printer device are almost full. 184 */ 185 public static final PrinterStateReason OUTPUT_AREA_ALMOST_FULL = 186 new PrinterStateReason(20); 187 188 /** 189 * One or more output areas of the printer device are full. 190 */ 191 public static final PrinterStateReason OUTPUT_AREA_FULL = 192 new PrinterStateReason(21); 193 194 /** 195 * The printer device is low on marker supply. 196 */ 197 public static final PrinterStateReason MARKER_SUPPLY_LOW = 198 new PrinterStateReason(22); 199 200 /** 201 * The printer device is out of marker supply. 202 */ 203 public static final PrinterStateReason MARKER_SUPPLY_EMPTY = 204 new PrinterStateReason(23); 205 206 /** 207 * The marker waste bin of the printer device is almost full. 208 */ 209 public static final PrinterStateReason MARKER_WASTE_ALMOST_FULL = 210 new PrinterStateReason(24); 211 212 /** 213 * The marker waste bin of the printer device is full. 214 */ 215 public static final PrinterStateReason MARKER_WASTE_FULL = 216 new PrinterStateReason(25); 217 218 /** 219 * The fuser of the printer device is over temperature. 220 */ 221 public static final PrinterStateReason FUSER_OVER_TEMP = 222 new PrinterStateReason(26); 223 224 /** 225 * The fuser of the printer device is under the needed temperature. 226 */ 227 public static final PrinterStateReason FUSER_UNDER_TEMP = 228 new PrinterStateReason(27); 229 230 /** 231 * The optical photo conductor is near its end of life (EOL). 232 */ 233 public static final PrinterStateReason OPC_NEAR_EOL = 234 new PrinterStateReason(28); 235 236 /** 237 * The optical photo conductor has reached its end of life. 238 */ 239 public static final PrinterStateReason OPC_LIFE_OVER = 240 new PrinterStateReason(29); 241 242 /** 243 * The printer device is low on developer. 244 */ 245 public static final PrinterStateReason DEVELOPER_LOW = 246 new PrinterStateReason(30); 247 248 /** 249 * The printer device is out of developer. 250 */ 251 public static final PrinterStateReason DEVELOPER_EMPTY = 252 new PrinterStateReason(31); 253 254 /** 255 * An interpreter resource (e.g. font) is unavailable. 256 */ 257 public static final PrinterStateReason INTERPRETER_RESOURCE_UNAVAILABLE = 258 new PrinterStateReason(32); 259 260 private static final String[] stringTable = 261 { "other", "media-needed", "media-jam", "moving-to-paused", "paused", 262 "shutdown", "connecting-to-device", "timed-out", "stopping", 263 "stopped-partly", "toner-low", "toner-empty", "spool-area-full", 264 "cover-open", "interlock-open", "door-open", "input-tray-missing", 265 "media-low", "media-empty", "output-tray-missing", "output-area-almost-full", 266 "output-area-full", "marker-supply-low", "marker-supply-empty", 267 "marker-waste-almost-full", "marker-waste-full", "fuser-over-temp", 268 "fuser-under-temp", "opc-near-eol", "opc-life-over", "developer-low", 269 "developer-empty", "interpreter-resource-unavailable" }; 270 271 private static final PrinterStateReason[] enumValueTable = 272 { OTHER, MEDIA_NEEDED, MEDIA_JAM, MOVING_TO_PAUSED, PAUSED, SHUTDOWN, 273 CONNECTING_TO_DEVICE, TIMED_OUT, STOPPING, STOPPED_PARTLY, TONER_LOW, 274 TONER_EMPTY, SPOOL_AREA_FULL, COVER_OPEN, INTERLOCK_OPEN, DOOR_OPEN, 275 INPUT_TRAY_MISSING, MEDIA_LOW, MEDIA_EMPTY, OUTPUT_TRAY_MISSING, 276 OUTPUT_AREA_ALMOST_FULL, OUTPUT_AREA_FULL, MARKER_SUPPLY_LOW, 277 MARKER_SUPPLY_EMPTY, MARKER_WASTE_ALMOST_FULL, MARKER_WASTE_FULL, 278 FUSER_OVER_TEMP, FUSER_UNDER_TEMP, OPC_NEAR_EOL, OPC_LIFE_OVER, 279 DEVELOPER_LOW, DEVELOPER_EMPTY, INTERPRETER_RESOURCE_UNAVAILABLE }; 280 281 /** 282 * Constructs a <code>PrinterStateReason</code> object. 283 * 284 * @param value the enum value. 285 */ 286 protected PrinterStateReason(int value) 287 { 288 super(value); 289 } 290 291 /** 292 * Returns category of this class. 293 * 294 * @return The class <code>PrintStateReason</code> itself. 295 */ 296 public Class< ? extends Attribute> getCategory() 297 { 298 return PrinterStateReason.class; 299 } 300 301 /** 302 * Returns the name of this attribute. 303 * 304 * @return The name "printer-state-reason". 305 */ 306 public final String getName() 307 { 308 return "printer-state-reason"; 309 } 310 311 /** 312 * Returns a table with the enumeration values represented as strings 313 * for this object. 314 * 315 * @return The enumeration values as strings. 316 */ 317 protected String[] getStringTable() 318 { 319 return stringTable; 320 } 321 322 /** 323 * Returns a table with the enumeration values for this object. 324 * 325 * @return The enumeration values. 326 */ 327 protected EnumSyntax[] getEnumValueTable() 328 { 329 return enumValueTable; 330 } 331}