1 /* 2 * Copyright (c) 1996, 2014, 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 26 /* 27 */ 28 29 /* 30 * (C) Copyright Taligent, Inc. 1996, 1997 - All Rights Reserved 31 * (C) Copyright IBM Corp. 1996 - 1999 - All Rights Reserved 32 * 33 * The original version of this source code and documentation 34 * is copyrighted and owned by Taligent, Inc., a wholly-owned 35 * subsidiary of IBM. These materials are provided under terms 36 * of a License Agreement between Taligent and Sun. This technology 37 * is protected by multiple US and International patents. 38 * 39 * This notice and attribution to Taligent may not be removed. 40 * Taligent is a registered trademark of Taligent, Inc. 41 * 42 */ 43 44 /* 45 * COPYRIGHT AND PERMISSION NOTICE 46 * 47 * Copyright (C) 1991-2012 Unicode, Inc. All rights reserved. Distributed under 48 * the Terms of Use in http://www.unicode.org/copyright.html. 49 * 50 * Permission is hereby granted, free of charge, to any person obtaining a copy 51 * of the Unicode data files and any associated documentation (the "Data 52 * Files") or Unicode software and any associated documentation (the 53 * "Software") to deal in the Data Files or Software without restriction, 54 * including without limitation the rights to use, copy, modify, merge, 55 * publish, distribute, and/or sell copies of the Data Files or Software, and 56 * to permit persons to whom the Data Files or Software are furnished to do so, 57 * provided that (a) the above copyright notice(s) and this permission notice 58 * appear with all copies of the Data Files or Software, (b) both the above 59 * copyright notice(s) and this permission notice appear in associated 60 * documentation, and (c) there is clear notice in each modified Data File or 61 * in the Software as well as in the documentation associated with the Data 62 * File(s) or Software that the data or software has been modified. 63 * 64 * THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY 65 * KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 66 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF 67 * THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS 68 * INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR 69 * CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 70 * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 71 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE 72 * OF THE DATA FILES OR SOFTWARE. 73 * 74 * Except as contained in this notice, the name of a copyright holder shall not 75 * be used in advertising or otherwise to promote the sale, use or other 76 * dealings in these Data Files or Software without prior written authorization 77 * of the copyright holder. 78 */ 79 80 package sun.text.resources; 81 82 import sun.util.resources.ParallelListResourceBundle; 83 84 public class FormatData extends ParallelListResourceBundle { 85 /** 86 * Overrides ListResourceBundle 87 */ 88 @Override 89 protected final Object[][] getContents() { 90 // Julian calendar era strings 91 final String[] julianEras = { 92 "BC", 93 "AD" 94 }; 95 96 // Thai Buddhist calendar era strings 97 final String[] buddhistEras = { 98 "BC", // BC 99 "B.E." // Buddhist Era 100 }; 101 102 // Japanese imperial calendar era abbreviations 103 final String[] japaneseEraAbbrs = { 104 "", 105 "M", 106 "T", 107 "S", 108 "H", 109 }; 110 111 // Japanese imperial calendar era strings 112 final String[] japaneseEras = { 113 "", 114 "Meiji", 115 "Taisho", 116 "Showa", 117 "Heisei", 118 }; 119 120 return new Object[][] { 121 { "MonthNames", 122 new String[] { 123 "January", // january 124 "February", // february 125 "March", // march 126 "April", // april 127 "May", // may 128 "June", // june 129 "July", // july 130 "August", // august 131 "September", // september 132 "October", // october 133 "November", // november 134 "December", // december 135 "" // month 13 if applicable 136 } 137 }, 138 { "MonthAbbreviations", 139 new String[] { 140 "Jan", // abb january 141 "Feb", // abb february 142 "Mar", // abb march 143 "Apr", // abb april 144 "May", // abb may 145 "Jun", // abb june 146 "Jul", // abb july 147 "Aug", // abb august 148 "Sep", // abb september 149 "Oct", // abb october 150 "Nov", // abb november 151 "Dec", // abb december 152 "" // abb month 13 if applicable 153 } 154 }, 155 { "MonthNarrows", 156 new String[] { 157 "1", 158 "2", 159 "3", 160 "4", 161 "5", 162 "6", 163 "7", 164 "8", 165 "9", 166 "10", 167 "11", 168 "12", 169 "", 170 } 171 }, 172 { "DayNames", 173 new String[] { 174 "Sunday", // Sunday 175 "Monday", // Monday 176 "Tuesday", // Tuesday 177 "Wednesday", // Wednesday 178 "Thursday", // Thursday 179 "Friday", // Friday 180 "Saturday" // Saturday 181 } 182 }, 183 { "DayAbbreviations", 184 new String[] { 185 "Sun", // abb Sunday 186 "Mon", // abb Monday 187 "Tue", // abb Tuesday 188 "Wed", // abb Wednesday 189 "Thu", // abb Thursday 190 "Fri", // abb Friday 191 "Sat" // abb Saturday 192 } 193 }, 194 { "DayNarrows", 195 new String[] { 196 "S", 197 "M", 198 "T", 199 "W", 200 "T", 201 "F", 202 "S", 203 } 204 }, 205 { "AmPmMarkers", 206 new String[] { 207 "AM", // am marker 208 "PM" // pm marker 209 } 210 }, 211 { "narrow.AmPmMarkers", 212 new String[] { 213 "a", // am marker 214 "p" // pm marker 215 } 216 }, 217 { "Eras", 218 julianEras }, 219 { "short.Eras", 220 julianEras }, 221 { "narrow.Eras", 222 new String[] { 223 "B", 224 "A", 225 } 226 }, 227 { "buddhist.Eras", 228 buddhistEras 229 }, 230 { "buddhist.short.Eras", 231 buddhistEras 232 }, 233 { "buddhist.narrow.Eras", 234 buddhistEras 235 }, 236 { "japanese.Eras", 237 japaneseEras }, 238 { "japanese.short.Eras", 239 japaneseEraAbbrs 240 }, 241 { "japanese.narrow.Eras", 242 japaneseEraAbbrs 243 }, 244 { "japanese.FirstYear", 245 new String[] { // Japanese imperial calendar year name 246 // empty in English 247 } 248 }, 249 { "NumberPatterns", 250 new String[] { 251 "#,##0.###;-#,##0.###", // decimal pattern 252 "\u00a4 #,##0.00;-\u00a4 #,##0.00", // currency pattern 253 "#,##0%" // percent pattern 254 } 255 }, 256 { "DefaultNumberingSystem", "" }, 257 { "NumberElements", 258 new String[] { 259 ".", // decimal separator 260 ",", // group (thousands) separator 261 ";", // list separator 262 "%", // percent sign 263 "0", // native 0 digit 264 "#", // pattern digit 265 "-", // minus sign 266 "E", // exponential 267 "\u2030", // per mille 268 "\u221e", // infinity 269 "\ufffd" // NaN 270 } 271 }, 272 { "arab.NumberElements", 273 new String[] { 274 "\u066b", 275 "\u066c", 276 "\u061b", 277 "\u066a", 278 "\u0660", 279 "#", 280 "-", 281 "\u0627\u0633", 282 "\u0609", 283 "\u221e", 284 "NaN", 285 } 286 }, 287 { "arabext.NumberElements", 288 new String[] { 289 "\u066b", 290 "\u066c", 291 "\u061b", 292 "\u066a", 293 "\u06f0", 294 "#", 295 "-", 296 "\u00d7\u06f1\u06f0^", 297 "\u0609", 298 "\u221e", 299 "NaN", 300 } 301 }, 302 { "bali.NumberElements", 303 new String[] { 304 ".", 305 ",", 306 ";", 307 "%", 308 "\u1b50", 309 "#", 310 "-", 311 "E", 312 "\u2030", 313 "\u221e", 314 "NaN", 315 } 316 }, 317 { "beng.NumberElements", 318 new String[] { 319 ".", 320 ",", 321 ";", 322 "%", 323 "\u09e6", 324 "#", 325 "-", 326 "E", 327 "\u2030", 328 "\u221e", 329 "NaN", 330 } 331 }, 332 { "cham.NumberElements", 333 new String[] { 334 ".", 335 ",", 336 ";", 337 "%", 338 "\uaa50", 339 "#", 340 "-", 341 "E", 342 "\u2030", 343 "\u221e", 344 "NaN", 345 } 346 }, 347 { "deva.NumberElements", 348 new String[] { 349 ".", 350 ",", 351 ";", 352 "%", 353 "\u0966", 354 "#", 355 "-", 356 "E", 357 "\u2030", 358 "\u221e", 359 "NaN", 360 } 361 }, 362 { "fullwide.NumberElements", 363 new String[] { 364 ".", 365 ",", 366 ";", 367 "%", 368 "\uff10", 369 "#", 370 "-", 371 "E", 372 "\u2030", 373 "\u221e", 374 "NaN", 375 } 376 }, 377 { "gujr.NumberElements", 378 new String[] { 379 ".", 380 ",", 381 ";", 382 "%", 383 "\u0ae6", 384 "#", 385 "-", 386 "E", 387 "\u2030", 388 "\u221e", 389 "NaN", 390 } 391 }, 392 { "guru.NumberElements", 393 new String[] { 394 ".", 395 ",", 396 ";", 397 "%", 398 "\u0a66", 399 "#", 400 "-", 401 "E", 402 "\u2030", 403 "\u221e", 404 "NaN", 405 } 406 }, 407 { "java.NumberElements", 408 new String[] { 409 ".", 410 ",", 411 ";", 412 "%", 413 "\ua9d0", 414 "#", 415 "-", 416 "E", 417 "\u2030", 418 "\u221e", 419 "NaN", 420 } 421 }, 422 { "kali.NumberElements", 423 new String[] { 424 ".", 425 ",", 426 ";", 427 "%", 428 "\ua900", 429 "#", 430 "-", 431 "E", 432 "\u2030", 433 "\u221e", 434 "NaN", 435 } 436 }, 437 { "khmr.NumberElements", 438 new String[] { 439 ".", 440 ",", 441 ";", 442 "%", 443 "\u17e0", 444 "#", 445 "-", 446 "E", 447 "\u2030", 448 "\u221e", 449 "NaN", 450 } 451 }, 452 { "knda.NumberElements", 453 new String[] { 454 ".", 455 ",", 456 ";", 457 "%", 458 "\u0ce6", 459 "#", 460 "-", 461 "E", 462 "\u2030", 463 "\u221e", 464 "NaN", 465 } 466 }, 467 { "laoo.NumberElements", 468 new String[] { 469 ".", 470 ",", 471 ";", 472 "%", 473 "\u0ed0", 474 "#", 475 "-", 476 "E", 477 "\u2030", 478 "\u221e", 479 "NaN", 480 } 481 }, 482 { "lana.NumberElements", 483 new String[] { 484 ".", 485 ",", 486 ";", 487 "%", 488 "\u1a80", 489 "#", 490 "-", 491 "E", 492 "\u2030", 493 "\u221e", 494 "NaN", 495 } 496 }, 497 { "lanatham.NumberElements", 498 new String[] { 499 ".", 500 ",", 501 ";", 502 "%", 503 "\u1a90", 504 "#", 505 "-", 506 "E", 507 "\u2030", 508 "\u221e", 509 "NaN", 510 } 511 }, 512 { "latn.NumberElements", 513 new String[] { 514 ".", // decimal separator 515 ",", // group (thousands) separator 516 ";", // list separator 517 "%", // percent sign 518 "0", // native 0 digit 519 "#", // pattern digit 520 "-", // minus sign 521 "E", // exponential 522 "\u2030", // per mille 523 "\u221e", // infinity 524 "\ufffd" // NaN 525 } 526 }, 527 { "lepc.NumberElements", 528 new String[] { 529 ".", 530 ",", 531 ";", 532 "%", 533 "\u1c40", 534 "#", 535 "-", 536 "E", 537 "\u2030", 538 "\u221e", 539 "NaN", 540 } 541 }, 542 { "limb.NumberElements", 543 new String[] { 544 ".", 545 ",", 546 ";", 547 "%", 548 "\u1946", 549 "#", 550 "-", 551 "E", 552 "\u2030", 553 "\u221e", 554 "NaN", 555 } 556 }, 557 { "mlym.NumberElements", 558 new String[] { 559 ".", 560 ",", 561 ";", 562 "%", 563 "\u0d66", 564 "#", 565 "-", 566 "E", 567 "\u2030", 568 "\u221e", 569 "NaN", 570 } 571 }, 572 { "mong.NumberElements", 573 new String[] { 574 ".", 575 ",", 576 ";", 577 "%", 578 "\u1810", 579 "#", 580 "-", 581 "E", 582 "\u2030", 583 "\u221e", 584 "NaN", 585 } 586 }, 587 { "mtei.NumberElements", 588 new String[] { 589 ".", 590 ",", 591 ";", 592 "%", 593 "\uabf0", 594 "#", 595 "-", 596 "E", 597 "\u2030", 598 "\u221e", 599 "NaN", 600 } 601 }, 602 { "mymr.NumberElements", 603 new String[] { 604 ".", 605 ",", 606 ";", 607 "%", 608 "\u1040", 609 "#", 610 "-", 611 "E", 612 "\u2030", 613 "\u221e", 614 "NaN", 615 } 616 }, 617 { "mymrshan.NumberElements", 618 new String[] { 619 ".", 620 ",", 621 ";", 622 "%", 623 "\u1090", 624 "#", 625 "-", 626 "E", 627 "\u2030", 628 "\u221e", 629 "NaN", 630 } 631 }, 632 { "nkoo.NumberElements", 633 new String[] { 634 ".", 635 ",", 636 ";", 637 "%", 638 "\u07c0", 639 "#", 640 "-", 641 "E", 642 "\u2030", 643 "\u221e", 644 "NaN", 645 } 646 }, 647 { "olck.NumberElements", 648 new String[] { 649 ".", 650 ",", 651 ";", 652 "%", 653 "\u1c50", 654 "#", 655 "-", 656 "E", 657 "\u2030", 658 "\u221e", 659 "NaN", 660 } 661 }, 662 { "orya.NumberElements", 663 new String[] { 664 ".", 665 ",", 666 ";", 667 "%", 668 "\u0b66", 669 "#", 670 "-", 671 "E", 672 "\u2030", 673 "\u221e", 674 "NaN", 675 } 676 }, 677 { "saur.NumberElements", 678 new String[] { 679 ".", 680 ",", 681 ";", 682 "%", 683 "\ua8d0", 684 "#", 685 "-", 686 "E", 687 "\u2030", 688 "\u221e", 689 "NaN", 690 } 691 }, 692 { "sund.NumberElements", 693 new String[] { 694 ".", 695 ",", 696 ";", 697 "%", 698 "\u1bb0", 699 "#", 700 "-", 701 "E", 702 "\u2030", 703 "\u221e", 704 "NaN", 705 } 706 }, 707 { "talu.NumberElements", 708 new String[] { 709 ".", 710 ",", 711 ";", 712 "%", 713 "\u19d0", 714 "#", 715 "-", 716 "E", 717 "\u2030", 718 "\u221e", 719 "NaN", 720 } 721 }, 722 { "tamldec.NumberElements", 723 new String[] { 724 ".", 725 ",", 726 ";", 727 "%", 728 "\u0be6", 729 "#", 730 "-", 731 "E", 732 "\u2030", 733 "\u221e", 734 "NaN", 735 } 736 }, 737 { "telu.NumberElements", 738 new String[] { 739 ".", 740 ",", 741 ";", 742 "%", 743 "\u0c66", 744 "#", 745 "-", 746 "E", 747 "\u2030", 748 "\u221e", 749 "NaN", 750 } 751 }, 752 { "thai.NumberElements", 753 new String[] { 754 ".", // decimal separator 755 ",", // group (thousands) separator 756 ";", // list separator 757 "%", // percent sign 758 "\u0E50", // native 0 digit 759 "#", // pattern digit 760 "-", // minus sign 761 "E", // exponential 762 "\u2030", // per mille 763 "\u221e", // infinity 764 "\ufffd" // NaN 765 } 766 }, 767 { "tibt.NumberElements", 768 new String[] { 769 ".", 770 ",", 771 ";", 772 "%", 773 "\u0f20", 774 "#", 775 "-", 776 "E", 777 "\u2030", 778 "\u221e", 779 "NaN", 780 } 781 }, 782 { "vaii.NumberElements", 783 new String[] { 784 ".", 785 ",", 786 ";", 787 "%", 788 "\ua620", 789 "#", 790 "-", 791 "E", 792 "\u2030", 793 "\u221e", 794 "NaN", 795 } 796 }, 797 { "TimePatterns", 798 new String[] { 799 "h:mm:ss a z", // full time pattern 800 "h:mm:ss a z", // long time pattern 801 "h:mm:ss a", // medium time pattern 802 "h:mm a", // short time pattern 803 } 804 }, 805 { "DatePatterns", 806 new String[] { 807 "EEEE, MMMM d, yyyy", // full date pattern 808 "MMMM d, yyyy", // long date pattern 809 "MMM d, yyyy", // medium date pattern 810 "M/d/yy", // short date pattern 811 } 812 }, 813 { "DateTimePatterns", 814 new String[] { 815 "{1} {0}" // date-time pattern 816 } 817 }, 818 { "buddhist.TimePatterns", 819 new String[] { 820 "H:mm:ss z", // full time pattern 821 "H:mm:ss z", // long time pattern 822 "H:mm:ss", // medium time pattern 823 "H:mm", // short time pattern 824 } 825 }, 826 { "buddhist.DatePatterns", 827 new String[] { 828 "EEEE d MMMM G yyyy", // full date pattern 829 "d MMMM yyyy", // long date pattern 830 "d MMM yyyy", // medium date pattern 831 "d/M/yyyy", // short date pattern 832 } 833 }, 834 { "buddhist.DateTimePatterns", 835 new String[] { 836 "{1}, {0}" // date-time pattern 837 } 838 }, 839 { "japanese.TimePatterns", 840 new String[] { 841 "h:mm:ss a z", // full time pattern 842 "h:mm:ss a z", // long time pattern 843 "h:mm:ss a", // medium time pattern 844 "h:mm a", // short time pattern 845 } 846 }, 847 { "japanese.DatePatterns", 848 new String[] { 849 "GGGG yyyy MMMM d (EEEE)", // full date pattern 850 "GGGG yyyy MMMM d", // long date pattern 851 "GGGG yyyy MMM d", // medium date pattern 852 "Gy.MM.dd", // short date pattern 853 } 854 }, 855 { "japanese.DateTimePatterns", 856 new String[] { 857 "{1} {0}" // date-time pattern 858 } 859 }, 860 { "DateTimePatternChars", "GyMdkHmsSEDFwWahKzZ" }, 861 862 // Workaround for islamic-umalqura name support (JDK-8015986) 863 { "calendarname.islamic-umalqura", "Islamic Umm al-Qura Calendar" }, 864 }; 865 } 866 }