1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140
/* * @(#)Severity.java 1.11 05/11/17 * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */ package javax.print.attribute.standard; import javax.print.attribute.EnumSyntax; import javax.print.attribute.Attribute; /** * Class Severity is a printing attribute class, an enumeration, that denotes * the severity of a {@link PrinterStateReason PrinterStateReason} attribute. * <P> * Instances of Severity do not appear in a Print Service's attribute set * directly. Rather, a {@link PrinterStateReasons PrinterStateReasons} * attribute appears in the Print Service's attribute set. * The {@link PrinterStateReasons * PrinterStateReasons} attribute contains zero, one, or more than one {@link * PrinterStateReason PrinterStateReason} objects which pertain to the Print * Service's status, and each {@link PrinterStateReason PrinterStateReason} * object is associated with a Severity level of REPORT (least severe), * WARNING, or ERROR (most severe). * The printer adds a {@link PrinterStateReason * PrinterStateReason} object to the Print Service's * {@link PrinterStateReasons PrinterStateReasons} attribute when the * corresponding condition becomes true * of the printer, and the printer removes the {@link PrinterStateReason * PrinterStateReason} object again when the corresponding condition becomes * false, regardless of whether the Print Service's overall * {@link PrinterState PrinterState} also changed. * <P> * <B>IPP Compatibility:</B> * <code>Severity.toString()</code> returns either "error", "warning", or * "report". The string values returned by * each individual {@link PrinterStateReason} and * associated {@link Severity} object's <CODE>toString()</CODE> * methods, concatenated together with a hyphen (<CODE>"-"</CODE>) in * between, gives the IPP keyword value for a {@link PrinterStateReasons}. * The category name returned by <CODE>getName()</CODE> gives the IPP * attribute name. * <P> * * @author Alan Kaminsky */ public final class Severity extends EnumSyntax implements Attribute { private static final long serialVersionUID = 8781881462717925380L; /** * Indicates that the {@link PrinterStateReason PrinterStateReason} is a * "report" (least severe). An implementation may choose to omit some or * all reports. * Some reports specify finer granularity about the printer state; * others serve as a precursor to a warning. A report must contain nothing * that could affect the printed output. */ public static final Severity REPORT = new Severity (0); /** * Indicates that the {@link PrinterStateReason PrinterStateReason} is a * "warning." An implementation may choose to omit some or all warnings. * Warnings serve as a precursor to an error. A warning must contain * nothing that prevents a job from completing, though in some cases the * output may be of lower quality. */ public static final Severity WARNING = new Severity (1); /** * Indicates that the {@link PrinterStateReason PrinterStateReason} is an * "error" (most severe). An implementation must include all errors. * If this attribute contains one or more errors, the printer's * {@link PrinterState PrinterState} must be STOPPED. */ public static final Severity ERROR = new Severity (2); /** * Construct a new severity enumeration value with the given integer * value. * * @param value Integer value. */ protected Severity(int value) { super (value); } private static final String[] myStringTable = { "report", "warning", "error" }; private static final Severity[] myEnumValueTable = { REPORT, WARNING, ERROR }; /** * Returns the string table for class Severity. */ protected String[] getStringTable() { return myStringTable; } /** * Returns the enumeration value table for class Severity. */ protected EnumSyntax[] getEnumValueTable() { return myEnumValueTable; } /** * Get the printing attribute class which is to be used as the "category" * for this printing attribute value. * <P> * For class Severity, the category is class Severity itself. * * @return Printing attribute class (category), an instance of class * {@link java.lang.Class java.lang.Class}. */ public final Class<? extends Attribute> getCategory() { return Severity.class; } /** * Get the name of the category of which this attribute value is an * instance. * <P> * For class Severit, the category name is <CODE>"severity"</CODE>. * * @return Attribute category name. */ public final String getName() { return "severity"; } }