8154797: Localization data for "GMT"
Reviewed-by: naoto, okutsu
This commit is contained in:
parent
1a75a21846
commit
4e8a2de21a
@ -693,6 +693,8 @@ public class CLDRConverter {
|
||||
"field.weekday",
|
||||
"field.dayperiod",
|
||||
"field.hour",
|
||||
"timezone.hourFormat",
|
||||
"timezone.gmtFormat",
|
||||
"field.minute",
|
||||
"field.second",
|
||||
"field.zone",
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -41,12 +41,12 @@ class CopyrightHeaders {
|
||||
" * Copyright (c) 2012, %d, Oracle and/or its affiliates. All rights reserved.\n" +
|
||||
" */\n";
|
||||
|
||||
// Last updated: - 1/16/2015, 1:42:31 PM
|
||||
// Last updated: - 6/06/2016, 1:42:31 PM
|
||||
private static final String UNICODE =
|
||||
"/*\n" +
|
||||
" * COPYRIGHT AND PERMISSION NOTICE\n" +
|
||||
" *\n" +
|
||||
" * Copyright (C) 1991-2015 Unicode, Inc. All rights reserved.\n" +
|
||||
" * Copyright (C) 1991-2016 Unicode, Inc. All rights reserved.\n" +
|
||||
" * Distributed under the Terms of Use in \n" +
|
||||
" * http://www.unicode.org/copyright.html.\n" +
|
||||
" *\n" +
|
||||
|
@ -417,6 +417,12 @@ class LDMLParseHandler extends AbstractLDMLHandler<Object> {
|
||||
case "timeZoneNames":
|
||||
pushContainer(qName, attributes);
|
||||
break;
|
||||
case "hourFormat":
|
||||
pushStringEntry(qName, attributes, "timezone.hourFormat");
|
||||
break;
|
||||
case "gmtFormat":
|
||||
pushStringEntry(qName, attributes, "timezone.gmtFormat");
|
||||
break;
|
||||
case "zone":
|
||||
{
|
||||
String tzid = attributes.getValue("type"); // Olson tz id
|
||||
|
@ -343,6 +343,10 @@ public class JavaTimeSupplementary extends OpenListResourceBundle {
|
||||
sharedShortEras },
|
||||
{ "roc.short.Eras",
|
||||
sharedShortEras },
|
||||
{ "timezone.gmtFormat",
|
||||
"GMT{0}" },
|
||||
{ "timezone.hourFormat",
|
||||
"+HH:mm;-HH:mm" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -371,6 +371,8 @@ public class JavaTimeSupplementary_ar extends OpenListResourceBundle {
|
||||
sharedShortEras },
|
||||
{ "roc.short.Eras",
|
||||
sharedShortEras },
|
||||
{ "timezone.gmtFormat",
|
||||
"\u062c\u0631\u064a\u0646\u062a\u0634{0}" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -308,6 +308,8 @@ public class JavaTimeSupplementary_be extends OpenListResourceBundle {
|
||||
sharedAbbreviatedAmPmMarkers },
|
||||
{ "roc.narrow.AmPmMarkers",
|
||||
sharedNarrowAmPmMarkers },
|
||||
{ "timezone.hourFormat",
|
||||
"+HH.mm;-HH.mm" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -309,6 +309,8 @@ public class JavaTimeSupplementary_bg extends OpenListResourceBundle {
|
||||
sharedAmPmMarkers },
|
||||
{ "roc.narrow.AmPmMarkers",
|
||||
sharedAmPmMarkers },
|
||||
{ "timezone.gmtFormat",
|
||||
"\u0413\u0440\u0438\u043d\u0443\u0438\u0447{0}" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -298,6 +298,8 @@ public class JavaTimeSupplementary_cs extends OpenListResourceBundle {
|
||||
sharedEras },
|
||||
{ "roc.short.Eras",
|
||||
sharedEras },
|
||||
{ "timezone.hourFormat",
|
||||
"+H:mm;-H:mm" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -308,6 +308,8 @@ public class JavaTimeSupplementary_da extends OpenListResourceBundle {
|
||||
sharedEras },
|
||||
{ "roc.short.Eras",
|
||||
sharedEras },
|
||||
{ "timezone.hourFormat",
|
||||
"+HH.mm;-HH.mm" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -280,6 +280,8 @@ public class JavaTimeSupplementary_et extends OpenListResourceBundle {
|
||||
sharedTimePatterns },
|
||||
{ "roc.narrow.AmPmMarkers",
|
||||
sharedNarrowAmPmMarkers },
|
||||
{ "timezone.hourFormat",
|
||||
"+HH:mm;\u2212HH:mm" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -324,6 +324,10 @@ public class JavaTimeSupplementary_fi extends OpenListResourceBundle {
|
||||
sharedEras },
|
||||
{ "roc.short.Eras",
|
||||
sharedEras },
|
||||
{ "timezone.gmtFormat",
|
||||
"UTC{0}" },
|
||||
{ "timezone.hourFormat",
|
||||
"+H.mm;-H.mm" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -329,6 +329,10 @@ public class JavaTimeSupplementary_fr extends OpenListResourceBundle {
|
||||
sharedEras },
|
||||
{ "roc.short.Eras",
|
||||
sharedEras },
|
||||
{ "timezone.gmtFormat",
|
||||
"UTC{0}" },
|
||||
{ "timezone.hourFormat",
|
||||
"+HH:mm;\u2212HH:mm" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -284,6 +284,8 @@ public class JavaTimeSupplementary_ga extends OpenListResourceBundle {
|
||||
sharedAmPmMarkers },
|
||||
{ "roc.narrow.AmPmMarkers",
|
||||
sharedNarrowAmPmMarkers },
|
||||
{ "timezone.gmtFormat",
|
||||
"MAG{0}" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -335,6 +335,8 @@ public class JavaTimeSupplementary_hr extends OpenListResourceBundle {
|
||||
sharedEras },
|
||||
{ "roc.short.Eras",
|
||||
sharedEras },
|
||||
{ "timezone.hourFormat",
|
||||
"+HH:mm; -HH:mm" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -347,6 +347,8 @@ public class JavaTimeSupplementary_in extends OpenListResourceBundle {
|
||||
sharedEras },
|
||||
{ "roc.short.Eras",
|
||||
sharedEras },
|
||||
{ "timezone.hourFormat",
|
||||
"+HH.mm;-HH.mm" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -324,6 +324,10 @@ public class JavaTimeSupplementary_iw extends OpenListResourceBundle {
|
||||
sharedAmPmMarkers },
|
||||
{ "roc.narrow.AmPmMarkers",
|
||||
sharedAmPmMarkers },
|
||||
{ "timezone.gmtFormat",
|
||||
"GMT{0}\u200e" },
|
||||
{ "timezone.hourFormat",
|
||||
"\u200e+HH:mm;-HH:mm\u200e" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -325,6 +325,8 @@ public class JavaTimeSupplementary_lt extends OpenListResourceBundle {
|
||||
sharedEras },
|
||||
{ "roc.short.Eras",
|
||||
sharedEras },
|
||||
{ "timezone.hourFormat",
|
||||
"+HH:mm;\u2212HH:mm" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -389,6 +389,8 @@ public class JavaTimeSupplementary_no extends OpenListResourceBundle {
|
||||
sharedEras },
|
||||
{ "roc.short.Eras",
|
||||
sharedEras },
|
||||
{ "timezone.hourFormat",
|
||||
"+HH.mm;-HH.mm" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -286,6 +286,8 @@ public class JavaTimeSupplementary_sl extends OpenListResourceBundle {
|
||||
sharedAmPmMarkers },
|
||||
{ "roc.narrow.AmPmMarkers",
|
||||
sharedNarrowAmPmMarkers },
|
||||
{ "timezone.hourFormat",
|
||||
"+HH.mm;-HH.mm" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -294,6 +294,8 @@ public class JavaTimeSupplementary_sq extends OpenListResourceBundle {
|
||||
sharedAmPmMarkers },
|
||||
{ "roc.narrow.AmPmMarkers",
|
||||
sharedAmPmMarkers },
|
||||
{ "timezone.gmtFormat",
|
||||
"Ora e Grenui\u00e7it: {0}" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -386,6 +386,8 @@ public class JavaTimeSupplementary_sr extends OpenListResourceBundle {
|
||||
sharedShortEras },
|
||||
{ "roc.short.Eras",
|
||||
sharedShortEras },
|
||||
{ "timezone.hourFormat",
|
||||
"+HHmm;-HHmm" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -345,6 +345,8 @@ public class JavaTimeSupplementary_sv extends OpenListResourceBundle {
|
||||
sharedEras },
|
||||
{ "roc.short.Eras",
|
||||
sharedEras },
|
||||
{ "timezone.hourFormat",
|
||||
"+HH:mm;\u2212HH:mm" },
|
||||
};
|
||||
}
|
||||
}
|
||||
|
99
jdk/test/java/util/Locale/Bug8154797.java
Normal file
99
jdk/test/java/util/Locale/Bug8154797.java
Normal file
@ -0,0 +1,99 @@
|
||||
/*
|
||||
* Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @bug 8154797
|
||||
* @modules java.base/sun.util.locale.provider
|
||||
* java.base/sun.util.resources
|
||||
* jdk.localedata
|
||||
* @summary Test for checking HourFormat and GmtFormat resources are retrieved from
|
||||
* COMPAT and CLDR Providers.
|
||||
*/
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
import java.util.ResourceBundle;
|
||||
import sun.util.locale.provider.LocaleProviderAdapter.Type;
|
||||
import sun.util.locale.provider.LocaleProviderAdapter;
|
||||
|
||||
public class Bug8154797 {
|
||||
static Map<String, String> expectedResourcesMap = new HashMap<>();
|
||||
static final String GMT_RESOURCE_KEY = "timezone.gmtFormat";
|
||||
static final String HMT_RESOURCE_KEY = "timezone.hourFormat";
|
||||
static final String GMT = "Gmt";
|
||||
static final String HMT = "Hmt";
|
||||
|
||||
static void generateExpectedValues() {
|
||||
expectedResourcesMap.put("FR" + GMT, "UTC{0}");
|
||||
expectedResourcesMap.put("FR" + HMT, "+HH:mm;\u2212HH:mm");
|
||||
expectedResourcesMap.put("FI" + HMT, "+H.mm;-H.mm");
|
||||
expectedResourcesMap.put("FI" + GMT, "UTC{0}");
|
||||
/* For root locale, en_US, de_DE, hi_IN, ja_JP,Root locale resources
|
||||
* should be returned.
|
||||
*/
|
||||
expectedResourcesMap.put(GMT, "GMT{0}"); //Root locale resource
|
||||
expectedResourcesMap.put(HMT, "+HH:mm;-HH:mm"); //Root locale resource
|
||||
}
|
||||
|
||||
static void compareResources(Locale loc) {
|
||||
String mapKeyHourFormat = HMT, mapKeyGmtFormat = GMT;
|
||||
ResourceBundle compatBundle, cldrBundle;
|
||||
compatBundle = LocaleProviderAdapter.forJRE().getLocaleResources(loc)
|
||||
.getJavaTimeFormatData();
|
||||
cldrBundle = LocaleProviderAdapter.forType(Type.CLDR)
|
||||
.getLocaleResources(loc).getJavaTimeFormatData();
|
||||
if (loc.getCountry() == "FR" || loc.getCountry() == "FI") {
|
||||
mapKeyHourFormat = loc.getCountry() + HMT;
|
||||
mapKeyGmtFormat = loc.getCountry() + GMT;
|
||||
}
|
||||
|
||||
if (!(expectedResourcesMap.get(mapKeyGmtFormat)
|
||||
.equals(compatBundle.getString(GMT_RESOURCE_KEY))
|
||||
&& expectedResourcesMap.get(mapKeyHourFormat)
|
||||
.equals(compatBundle.getString(HMT_RESOURCE_KEY))
|
||||
&& expectedResourcesMap.get(mapKeyGmtFormat)
|
||||
.equals(cldrBundle.getString(GMT_RESOURCE_KEY))
|
||||
&& expectedResourcesMap.get(mapKeyHourFormat)
|
||||
.equals(cldrBundle.getString(HMT_RESOURCE_KEY)))) {
|
||||
|
||||
throw new RuntimeException("Retrieved resource does not match with "
|
||||
+ " expected string for Locale " + compatBundle.getLocale());
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static void main(String args[]) {
|
||||
Bug8154797.generateExpectedValues();
|
||||
Locale[] locArr = {new Locale("hi", "IN"), Locale.UK, new Locale("fi", "FI"),
|
||||
Locale.ROOT, Locale.GERMAN, Locale.JAPANESE,
|
||||
Locale.ENGLISH, Locale.FRANCE};
|
||||
for (Locale loc : locArr) {
|
||||
Bug8154797.compareResources(loc);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -23,7 +23,7 @@
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @bug 8159943
|
||||
* @bug 8159943 8154797
|
||||
* @modules java.base/sun.util.locale.provider
|
||||
* java.base/sun.util.resources
|
||||
* jdk.localedata
|
||||
@ -65,6 +65,7 @@ public class JavaTimeSupplementaryTest {
|
||||
"field.",
|
||||
"islamic.",
|
||||
"roc.",
|
||||
"timezone."
|
||||
};
|
||||
|
||||
// All available locales for the COMPAT FormatData resource bundles
|
||||
|
Loading…
Reference in New Issue
Block a user