Source for javax.print.attribute.standard.PrinterStateReason

   1: /* PrinterStateReason.java --
   2:    Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc.
   3: 
   4: This file is part of GNU Classpath.
   5: 
   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.
  10: 
  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.
  15: 
  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.
  20: 
  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.
  25: 
  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. */
  37: 
  38: 
  39: package javax.print.attribute.standard;
  40: 
  41: import javax.print.attribute.Attribute;
  42: import javax.print.attribute.EnumSyntax;
  43: 
  44: /**
  45:  * The <code>PrinterStateReason</code> attribute provides additional
  46:  * information about the current state of the printer device. Its always part
  47:  * of the {@link javax.print.attribute.standard.PrinterStateReasons}
  48:  * printing attribute. 
  49:  * <p>
  50:  * <b>IPP Compatibility:</b> PrinterStateReason is not an IPP 1.1 
  51:  * attribute itself but used inside the <code>PrinterStateReasons</code>
  52:  * attribute.
  53:  * </p>
  54:  * 
  55:  * @author Michael Koch (konqueror@gmx.de)
  56:  * @author Wolfgang Baer (WBaer@gmx.de)
  57:  */
  58: public class PrinterStateReason extends EnumSyntax
  59:   implements Attribute
  60: {
  61:   private static final long serialVersionUID = -1623720656201472593L;
  62: 
  63:   /**
  64:    * Any state other state not listed here.
  65:    */
  66:   public static final PrinterStateReason OTHER = new PrinterStateReason(0);
  67:   
  68:   /**
  69:    * A media tray has run out of media.
  70:    */
  71:   public static final PrinterStateReason MEDIA_NEEDED =
  72:     new PrinterStateReason(1);
  73:   
  74:   /**
  75:    * A media jam occured in the printer device.
  76:    */
  77:   public static final PrinterStateReason MEDIA_JAM = new PrinterStateReason(2);
  78:   
  79:   /**
  80:    * Indicates that the printer has been paused by the pause printer
  81:    * operation and is currently moving to the pause state.
  82:    */
  83:   public static final PrinterStateReason MOVING_TO_PAUSED =
  84:     new PrinterStateReason(3);
  85:   
  86:   /**
  87:    * The printer device has be paused by the pause printer operation.
  88:    */
  89:   public static final PrinterStateReason PAUSED = new PrinterStateReason(4);
  90:   
  91:   /**
  92:    * The printer device has been shutdown or removed from service.
  93:    */
  94:   public static final PrinterStateReason SHUTDOWN = new PrinterStateReason(5);
  95:   
  96:   /**
  97:    * The printer object is connecting to the device. If a printer
  98:    * device is on the network the printer object may be unable to connect. 
  99:    */
 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: }