1 /*
2  * Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * This code is free software; you can redistribute it and/or modify it
6  * under the terms of the GNU General Public License version 2 only, as
7  * published by the Free Software Foundation.  Oracle designates this
8  * particular file as subject to the "Classpath" exception as provided
9  * by Oracle in the LICENSE file that accompanied this code.
10  *
11  * This code is distributed in the hope that it will be useful, but WITHOUT
12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
14  * version 2 for more details (a copy is included in the LICENSE file that
15  * accompanied this code).
16  *
17  * You should have received a copy of the GNU General Public License version
18  * 2 along with this work; if not, write to the Free Software Foundation,
19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20  *
21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22  * or visit www.oracle.com if you need additional information or have any
23  * questions.
24  */
25 package javax.print.attribute.standard;
26 
27 import java.util.Locale;
28 
29 import javax.print.attribute.EnumSyntax;
30 import javax.print.attribute.Attribute;
31 
32 /**
33  * Class MediaSizeName is a subclass of Media.
34  * <P>
35  * This attribute can be used instead of specifying MediaName or MediaTray.
36  * <p>
37  * Class MediaSizeName currently declares a few standard media
38  * name values.
39  * <P>
40  * <B>IPP Compatibility:</B> MediaSizeName is a representation class for
41  * values of the IPP "media" attribute which names media sizes.
42  * The names of the media sizes correspond to those in the IPP 1.1 RFC
43  * <a HREF="http://www.ietf.org/rfc/rfc2911.txt">RFC 2911</a>
44  * <P>
45  *
46  */
47 public class MediaSizeName extends Media {
48 
49     private static final long serialVersionUID = 2778798329756942747L;
50 
51     /**
52      * A0 size.
53      */
54     public static final MediaSizeName ISO_A0 = new MediaSizeName(0);
55     /**
56      * A1 size.
57      */
58     public static final MediaSizeName ISO_A1 = new MediaSizeName(1);
59     /**
60      * A2 size.
61      */
62     public static final MediaSizeName ISO_A2 = new MediaSizeName(2);
63     /**
64      * A3 size.
65      */
66     public static final MediaSizeName ISO_A3 = new MediaSizeName(3);
67     /**
68      * A4 size.
69      */
70     public static final MediaSizeName ISO_A4 = new MediaSizeName(4);
71     /**
72      * A5 size.
73      */
74     public static final MediaSizeName ISO_A5 = new MediaSizeName(5);
75     /**
76      * A6 size.
77      */
78     public static final MediaSizeName ISO_A6 = new MediaSizeName(6);
79     /**
80      * A7 size.
81      */
82     public static final MediaSizeName ISO_A7 = new MediaSizeName(7);
83     /**
84      * A8 size.
85      */
86     public static final MediaSizeName ISO_A8 = new MediaSizeName(8);
87     /**
88      * A9 size.
89      */
90     public static final MediaSizeName ISO_A9 = new MediaSizeName(9);
91     /**
92      * A10 size.
93      */
94     public static final MediaSizeName ISO_A10 = new MediaSizeName(10);
95 
96    /**
97      * ISO B0 size.
98      */
99     public static final MediaSizeName ISO_B0 = new MediaSizeName(11);
100     /**
101      * ISO B1 size.
102      */
103     public static final MediaSizeName ISO_B1 = new MediaSizeName(12);
104     /**
105      * ISO B2 size.
106      */
107     public static final MediaSizeName ISO_B2 = new MediaSizeName(13);
108     /**
109      * ISO B3 size.
110      */
111     public static final MediaSizeName ISO_B3 = new MediaSizeName(14);
112     /**
113      * ISO B4 size.
114      */
115     public static final MediaSizeName ISO_B4 = new MediaSizeName(15);
116     /**
117      * ISO B5 size.
118      */
119     public static final MediaSizeName ISO_B5 = new MediaSizeName(16);
120     /**
121      * ISO B6 size.
122      */
123     public static final MediaSizeName ISO_B6 = new MediaSizeName(17);
124     /**
125      * ISO B7 size.
126      */
127     public static final MediaSizeName ISO_B7 = new MediaSizeName(18);
128     /**
129      * ISO B8 size.
130      */
131     public static final MediaSizeName ISO_B8 = new MediaSizeName(19);
132     /**
133      * ISO B9 size.
134      */
135     public static final MediaSizeName ISO_B9 = new MediaSizeName(20);
136     /**
137      * ISO B10 size.
138      */
139     public static final MediaSizeName ISO_B10 = new MediaSizeName(21);
140 
141    /**
142      * JIS B0 size.
143      */
144     public static final MediaSizeName JIS_B0 = new MediaSizeName(22);
145     /**
146      * JIS B1 size.
147      */
148     public static final MediaSizeName JIS_B1 = new MediaSizeName(23);
149     /**
150      * JIS B2 size.
151      */
152     public static final MediaSizeName JIS_B2 = new MediaSizeName(24);
153     /**
154      * JIS B3 size.
155      */
156     public static final MediaSizeName JIS_B3 = new MediaSizeName(25);
157     /**
158      * JIS B4 size.
159      */
160     public static final MediaSizeName JIS_B4 = new MediaSizeName(26);
161     /**
162      * JIS B5 size.
163      */
164     public static final MediaSizeName JIS_B5 = new MediaSizeName(27);
165     /**
166      * JIS B6 size.
167      */
168     public static final MediaSizeName JIS_B6 = new MediaSizeName(28);
169     /**
170      * JIS B7 size.
171      */
172     public static final MediaSizeName JIS_B7 = new MediaSizeName(29);
173     /**
174      * JIS B8 size.
175      */
176     public static final MediaSizeName JIS_B8 = new MediaSizeName(30);
177     /**
178      * JIS B9 size.
179      */
180     public static final MediaSizeName JIS_B9 = new MediaSizeName(31);
181     /**
182      * JIS B10 size.
183      */
184     public static final MediaSizeName JIS_B10 = new MediaSizeName(32);
185 
186     /**
187      * ISO C0 size.
188      */
189     public static final MediaSizeName ISO_C0 = new MediaSizeName(33);
190     /**
191      * ISO C1 size.
192      */
193     public static final MediaSizeName ISO_C1 = new MediaSizeName(34);
194     /**
195      * ISO C2 size.
196      */
197     public static final MediaSizeName ISO_C2 = new MediaSizeName(35);
198     /**
199      * ISO C3 size.
200      */
201     public static final MediaSizeName ISO_C3 = new MediaSizeName(36);
202     /**
203      * ISO C4 size.
204      */
205     public static final MediaSizeName ISO_C4 = new MediaSizeName(37);
206     /**
207      * ISO C5 size.
208      */
209     public static final MediaSizeName ISO_C5 = new MediaSizeName(38);
210     /**
211      *   letter size.
212      */
213     public static final MediaSizeName ISO_C6 = new MediaSizeName(39);
214     /**
215      *   letter size.
216      */
217     public static final MediaSizeName NA_LETTER = new MediaSizeName(40);
218 
219     /**
220      *  legal size .
221      */
222     public static final MediaSizeName NA_LEGAL = new MediaSizeName(41);
223 
224     /**
225      *  executive size .
226      */
227     public static final MediaSizeName EXECUTIVE = new MediaSizeName(42);
228 
229     /**
230      *  ledger size .
231      */
232     public static final MediaSizeName LEDGER = new MediaSizeName(43);
233 
234     /**
235      *  tabloid size .
236      */
237     public static final MediaSizeName TABLOID = new MediaSizeName(44);
238 
239     /**
240      *  invoice size .
241      */
242     public static final MediaSizeName INVOICE = new MediaSizeName(45);
243 
244     /**
245      *  folio size .
246      */
247     public static final MediaSizeName FOLIO = new MediaSizeName(46);
248 
249     /**
250      *  quarto size .
251      */
252     public static final MediaSizeName QUARTO = new MediaSizeName(47);
253 
254     /**
255      *  Japanese Postcard size.
256      */
257     public static final MediaSizeName
258         JAPANESE_POSTCARD = new MediaSizeName(48);
259    /**
260      *  Japanese Double Postcard size.
261      */
262     public static final MediaSizeName
263         JAPANESE_DOUBLE_POSTCARD = new MediaSizeName(49);
264 
265     /**
266      *  A size .
267      */
268     public static final MediaSizeName A = new MediaSizeName(50);
269 
270     /**
271      *  B size .
272      */
273     public static final MediaSizeName B = new MediaSizeName(51);
274 
275     /**
276      *  C size .
277      */
278     public static final MediaSizeName C = new MediaSizeName(52);
279 
280     /**
281      *  D size .
282      */
283     public static final MediaSizeName D = new MediaSizeName(53);
284 
285     /**
286      *  E size .
287      */
288     public static final MediaSizeName E = new MediaSizeName(54);
289 
290     /**
291      *  ISO designated long size .
292      */
293     public static final MediaSizeName
294         ISO_DESIGNATED_LONG = new MediaSizeName(55);
295 
296     /**
297      *  Italy envelope size .
298      */
299     public static final MediaSizeName
300         ITALY_ENVELOPE = new MediaSizeName(56);  // DESIGNATED_LONG?
301 
302     /**
303      *  monarch envelope size .
304      */
305     public static final MediaSizeName
306         MONARCH_ENVELOPE = new MediaSizeName(57);
307     /**
308      * personal envelope size .
309      */
310     public static final MediaSizeName
311         PERSONAL_ENVELOPE = new MediaSizeName(58);
312     /**
313      *  number 9 envelope size .
314      */
315     public static final MediaSizeName
316         NA_NUMBER_9_ENVELOPE = new MediaSizeName(59);
317     /**
318      *  number 10 envelope size .
319      */
320     public static final MediaSizeName
321         NA_NUMBER_10_ENVELOPE = new MediaSizeName(60);
322     /**
323      *  number 11 envelope size .
324      */
325     public static final MediaSizeName
326         NA_NUMBER_11_ENVELOPE = new MediaSizeName(61);
327     /**
328      *  number 12 envelope size .
329      */
330     public static final MediaSizeName
331         NA_NUMBER_12_ENVELOPE = new MediaSizeName(62);
332     /**
333      *  number 14 envelope size .
334      */
335     public static final MediaSizeName
336         NA_NUMBER_14_ENVELOPE = new MediaSizeName(63);
337    /**
338      *  6x9 North American envelope size.
339      */
340     public static final MediaSizeName
341         NA_6X9_ENVELOPE = new MediaSizeName(64);
342    /**
343      *  7x9 North American envelope size.
344      */
345     public static final MediaSizeName
346         NA_7X9_ENVELOPE = new MediaSizeName(65);
347    /**
348      *  9x11 North American envelope size.
349      */
350     public static final MediaSizeName
351         NA_9X11_ENVELOPE = new MediaSizeName(66);
352     /**
353      *  9x12 North American envelope size.
354      */
355     public static final MediaSizeName
356         NA_9X12_ENVELOPE = new MediaSizeName(67);
357 
358     /**
359      *  10x13 North American envelope size .
360      */
361     public static final MediaSizeName
362         NA_10X13_ENVELOPE = new MediaSizeName(68);
363     /**
364      *  10x14North American  envelope size .
365      */
366     public static final MediaSizeName
367         NA_10X14_ENVELOPE = new MediaSizeName(69);
368     /**
369      *  10x15 North American envelope size.
370      */
371     public static final MediaSizeName
372         NA_10X15_ENVELOPE = new MediaSizeName(70);
373 
374     /**
375      *  5x7 North American paper.
376      */
377     public static final MediaSizeName
378         NA_5X7 = new MediaSizeName(71);
379 
380     /**
381      *  8x10 North American paper.
382      */
383     public static final MediaSizeName
384         NA_8X10 = new MediaSizeName(72);
385 
386     /**
387      * Construct a new media size enumeration value with the given integer
388      * value.
389      *
390      * @param  value  Integer value.
391      */
MediaSizeName(int value)392     protected MediaSizeName(int value) {
393         super (value);
394     }
395 
396     private static final String[] myStringTable = {
397                 "iso-a0",
398                 "iso-a1",
399                 "iso-a2",
400                 "iso-a3",
401                 "iso-a4",
402                 "iso-a5",
403                 "iso-a6",
404                 "iso-a7",
405                 "iso-a8",
406                 "iso-a9",
407                 "iso-a10",
408                 "iso-b0",
409                 "iso-b1",
410                 "iso-b2",
411                 "iso-b3",
412                 "iso-b4",
413                 "iso-b5",
414                 "iso-b6",
415                 "iso-b7",
416                 "iso-b8",
417                 "iso-b9",
418                 "iso-b10",
419                 "jis-b0",
420                 "jis-b1",
421                 "jis-b2",
422                 "jis-b3",
423                 "jis-b4",
424                 "jis-b5",
425                 "jis-b6",
426                 "jis-b7",
427                 "jis-b8",
428                 "jis-b9",
429                 "jis-b10",
430                 "iso-c0",
431                 "iso-c1",
432                 "iso-c2",
433                 "iso-c3",
434                 "iso-c4",
435                 "iso-c5",
436                 "iso-c6",
437                 "na-letter",
438                 "na-legal",
439                 "executive",
440                 "ledger",
441                 "tabloid",
442                 "invoice",
443                 "folio",
444                 "quarto",
445                 "japanese-postcard",
446                 "oufuko-postcard",
447                 "a",
448                 "b",
449                 "c",
450                 "d",
451                 "e",
452                 "iso-designated-long",
453                 "italian-envelope",
454                 "monarch-envelope",
455                 "personal-envelope",
456                 "na-number-9-envelope",
457                 "na-number-10-envelope",
458                 "na-number-11-envelope",
459                 "na-number-12-envelope",
460                 "na-number-14-envelope",
461                 "na-6x9-envelope",
462                 "na-7x9-envelope",
463                 "na-9x11-envelope",
464                 "na-9x12-envelope",
465                 "na-10x13-envelope",
466                 "na-10x14-envelope",
467                 "na-10x15-envelope",
468                 "na-5x7",
469                 "na-8x10",
470         };
471 
472     private static final MediaSizeName[] myEnumValueTable = {
473                 ISO_A0,
474                 ISO_A1,
475                 ISO_A2,
476                 ISO_A3,
477                 ISO_A4,
478                 ISO_A5,
479                 ISO_A6,
480                 ISO_A7,
481                 ISO_A8,
482                 ISO_A9,
483                 ISO_A10,
484                 ISO_B0,
485                 ISO_B1,
486                 ISO_B2,
487                 ISO_B3,
488                 ISO_B4,
489                 ISO_B5,
490                 ISO_B6,
491                 ISO_B7,
492                 ISO_B8,
493                 ISO_B9,
494                 ISO_B10,
495                 JIS_B0,
496                 JIS_B1,
497                 JIS_B2,
498                 JIS_B3,
499                 JIS_B4,
500                 JIS_B5,
501                 JIS_B6,
502                 JIS_B7,
503                 JIS_B8,
504                 JIS_B9,
505                 JIS_B10,
506                 ISO_C0,
507                 ISO_C1,
508                 ISO_C2,
509                 ISO_C3,
510                 ISO_C4,
511                 ISO_C5,
512                 ISO_C6,
513                 NA_LETTER,
514                 NA_LEGAL,
515                 EXECUTIVE,
516                 LEDGER,
517                 TABLOID,
518                 INVOICE,
519                 FOLIO,
520                 QUARTO,
521                 JAPANESE_POSTCARD,
522                 JAPANESE_DOUBLE_POSTCARD,
523                 A,
524                 B,
525                 C,
526                 D,
527                 E,
528                 ISO_DESIGNATED_LONG,
529                 ITALY_ENVELOPE,
530                 MONARCH_ENVELOPE,
531                 PERSONAL_ENVELOPE,
532                 NA_NUMBER_9_ENVELOPE,
533                 NA_NUMBER_10_ENVELOPE,
534                 NA_NUMBER_11_ENVELOPE,
535                 NA_NUMBER_12_ENVELOPE,
536                 NA_NUMBER_14_ENVELOPE,
537                 NA_6X9_ENVELOPE,
538                 NA_7X9_ENVELOPE,
539                 NA_9X11_ENVELOPE,
540                 NA_9X12_ENVELOPE,
541                 NA_10X13_ENVELOPE,
542                 NA_10X14_ENVELOPE,
543                 NA_10X15_ENVELOPE,
544                 NA_5X7,
545                 NA_8X10,
546         };
547 
548 
549     /**
550      * Returns the string table for class MediaSizeName.
551      */
getStringTable()552     protected String[] getStringTable()
553     {
554         return (String[])myStringTable.clone();
555     }
556 
557     /**
558      * Returns the enumeration value table for class MediaSizeName.
559      */
getEnumValueTable()560     protected EnumSyntax[] getEnumValueTable() {
561         return (EnumSyntax[])myEnumValueTable.clone();
562     }
563 
564 
565 }
566