1/* 2 * Copyright (c) 2015, 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. 8 * 9 * This code is distributed in the hope that it will be useful, but WITHOUT 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 12 * version 2 for more details (a copy is included in the LICENSE file that 13 * accompanied this code). 14 * 15 * You should have received a copy of the GNU General Public License version 16 * 2 along with this work; if not, write to the Free Software Foundation, 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 18 * 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 20 * or visit www.oracle.com if you need additional information or have any 21 * questions. 22 */ 23 24package jdk.test; 25 26import java.util.Locale; 27import java.util.ResourceBundle; 28import java.util.ResourceBundle.Control; 29import java.util.MissingResourceException; 30 31public class Main { 32 public static void main(String[] args) throws Exception { 33 int errors = 0; 34 for (String loctag : args) { 35 Locale locale = Locale.forLanguageTag(loctag); 36 if (locale.equals(Locale.ROOT)) { 37 continue; 38 } 39 ResourceBundle rb = ResourceBundle.getBundle("jdk.test.resources.MyResources", 40 locale); 41 String tag = locale.toLanguageTag(); // normalized 42 String value = rb.getString("key"); 43 System.out.println("locale = " + tag + ", value = " + value); 44 if (!value.startsWith(tag + ':')) { 45 System.out.println("ERROR: " + value + " expected: " + tag); 46 errors++; 47 } 48 } 49 50 // Make sure ResourceBundle.getBundle throws an UnsupportedOperationException with 51 // a ResourceBundle.Control. 52 try { 53 ResourceBundle rb; 54 rb = ResourceBundle.getBundle("jdk.test.resources.MyResources", 55 Locale.ENGLISH, 56 Control.getControl(Control.FORMAT_DEFAULT)); 57 System.out.println("ERROR: no UnsupportedOperationException thrown with a ResourceBundle.Control"); 58 errors++; 59 } catch (UnsupportedOperationException e) { 60 // OK 61 } 62 63 if (errors > 0) { 64 throw new RuntimeException(errors + " errors"); 65 } 66 } 67} 68