From 19e0f19721c62a97990b9e89a80fba8595f99c54 Mon Sep 17 00:00:00 2001 From: Norbert Runge Date: Tue, 24 Jul 2018 15:33:54 -0700 Subject: [PATCH 1/3] ICU-13829 Languagematcher: Fixes straightforward code issues. --- .../ibm/icu/impl/locale/XLikelySubtags.java | 21 +++++++++---------- .../ibm/icu/impl/locale/XLocaleDistance.java | 4 ++-- .../ibm/icu/impl/locale/XLocaleMatcher.java | 14 ++++++------- 3 files changed, 18 insertions(+), 21 deletions(-) diff --git a/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLikelySubtags.java b/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLikelySubtags.java index 22fd4d269e8..7a77b3185ab 100644 --- a/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLikelySubtags.java +++ b/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLikelySubtags.java @@ -3,14 +3,6 @@ package com.ibm.icu.impl.locale; import java.util.Collection; -import java.util.Collections; -import java.util.Enumeration; -import java.util.HashMap; -import java.util.Map; -import java.util.Map.Entry; -import java.util.Set; -import java.util.TreeMap; - import com.ibm.icu.impl.ICUData; import com.ibm.icu.impl.ICUResourceBundle; import com.ibm.icu.impl.Utility; @@ -21,6 +13,13 @@ import com.ibm.icu.util.ICUException; import com.ibm.icu.util.ULocale; import com.ibm.icu.util.ULocale.Minimize; import com.ibm.icu.util.UResourceBundle; +import java.util.Collections; +import java.util.Enumeration; +import java.util.HashMap; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; +import java.util.TreeMap; public class XLikelySubtags { @@ -143,8 +142,8 @@ public class XLikelySubtags { throw new ICUException("too many subtags"); } String lang = parts[0].toLowerCase(); - String p2 = parts.length < 2 ? "": parts[1]; - String p3 = parts.length < 3 ? "": parts[2]; + String p2 = parts.length < 2 ? "" : parts[1]; + String p3 = parts.length < 3 ? "" : parts[2]; return p2.length() < 4 ? new LSR(lang, "", p2) : new LSR(lang, p2, p3); // Matcher matcher = LANGUAGE_PATTERN.matcher(languageIdentifier); @@ -166,7 +165,7 @@ public class XLikelySubtags { public static LSR fromMaximalized(String language, String script, String region) { String canonicalLanguage = LANGUAGE_ALIASES.getCanonical(language); // script is ok - String canonicalRegion = REGION_ALIASES.getCanonical(region); // getCanonical(REGION_ALIASES.get(region)); + String canonicalRegion = REGION_ALIASES.getCanonical(region); return DEFAULT.maximize(canonicalLanguage, script, canonicalRegion); } diff --git a/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLocaleDistance.java b/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLocaleDistance.java index b24d70a2b33..5e07beafe2d 100644 --- a/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLocaleDistance.java +++ b/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLocaleDistance.java @@ -739,7 +739,7 @@ public class XLocaleDistance { * ULocales must be in canonical, addLikelySubtags format. Returns distance */ public int distanceRaw( - String desiredLang, String supportedlang, + String desiredLang, String supportedLang, String desiredScript, String supportedScript, String desiredRegion, String supportedRegion, int threshold, @@ -747,7 +747,7 @@ public class XLocaleDistance { Output subtable = new Output(); - int distance = languageDesired2Supported.getDistance(desiredLang, supportedlang, subtable, true); + int distance = languageDesired2Supported.getDistance(desiredLang, supportedLang, subtable, true); boolean scriptFirst = distanceOption == DistanceOption.SCRIPT_FIRST; if (scriptFirst) { distance >>= 2; diff --git a/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLocaleMatcher.java b/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLocaleMatcher.java index 4623884771a..8f7901a97cc 100644 --- a/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLocaleMatcher.java +++ b/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLocaleMatcher.java @@ -2,13 +2,6 @@ // License & terms of use: http://www.unicode.org/copyright.html#License package com.ibm.icu.impl.locale; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.Map; -import java.util.Map.Entry; -import java.util.Set; - import com.ibm.icu.impl.locale.XCldrStub.ImmutableMultimap; import com.ibm.icu.impl.locale.XCldrStub.ImmutableSet; import com.ibm.icu.impl.locale.XCldrStub.LinkedHashMultimap; @@ -18,6 +11,12 @@ import com.ibm.icu.impl.locale.XLocaleDistance.DistanceOption; import com.ibm.icu.util.LocalePriorityList; import com.ibm.icu.util.Output; import com.ibm.icu.util.ULocale; +import java.util.Arrays; +import java.util.Collection; +import java.util.LinkedHashSet; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; /** * Immutable class that picks best match between user's desired locales and application's supported locales. @@ -40,7 +39,6 @@ public class XLocaleMatcher { private final Set exactSupportedLocales; // the locales in the collection are ordered! private final ULocale defaultLanguage; - public static class Builder { private Set supportedLanguagesList; private int thresholdDistance = -1; From 3d773f4b09d8b40e33c5469770979ad2c56626fb Mon Sep 17 00:00:00 2001 From: Norbert Runge Date: Fri, 27 Jul 2018 15:18:13 -0700 Subject: [PATCH 2/3] Revert order of imports to conform with (almost all of) the other files in this directory. --- .../com/ibm/icu/impl/locale/XLikelySubtags.java | 16 +++++++++------- .../com/ibm/icu/impl/locale/XLocaleMatcher.java | 13 +++++++------ 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLikelySubtags.java b/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLikelySubtags.java index 7a77b3185ab..d70aca856bb 100644 --- a/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLikelySubtags.java +++ b/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLikelySubtags.java @@ -3,6 +3,15 @@ package com.ibm.icu.impl.locale; import java.util.Collection; +import java.util.Collection; +import java.util.Collections; +import java.util.Enumeration; +import java.util.HashMap; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; +import java.util.TreeMap; + import com.ibm.icu.impl.ICUData; import com.ibm.icu.impl.ICUResourceBundle; import com.ibm.icu.impl.Utility; @@ -13,13 +22,6 @@ import com.ibm.icu.util.ICUException; import com.ibm.icu.util.ULocale; import com.ibm.icu.util.ULocale.Minimize; import com.ibm.icu.util.UResourceBundle; -import java.util.Collections; -import java.util.Enumeration; -import java.util.HashMap; -import java.util.Map; -import java.util.Map.Entry; -import java.util.Set; -import java.util.TreeMap; public class XLikelySubtags { diff --git a/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLocaleMatcher.java b/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLocaleMatcher.java index 8f7901a97cc..09ef5f02d42 100644 --- a/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLocaleMatcher.java +++ b/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLocaleMatcher.java @@ -2,6 +2,13 @@ // License & terms of use: http://www.unicode.org/copyright.html#License package com.ibm.icu.impl.locale; +import java.util.Arrays; +import java.util.Collection; +import java.util.LinkedHashSet; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; + import com.ibm.icu.impl.locale.XCldrStub.ImmutableMultimap; import com.ibm.icu.impl.locale.XCldrStub.ImmutableSet; import com.ibm.icu.impl.locale.XCldrStub.LinkedHashMultimap; @@ -11,12 +18,6 @@ import com.ibm.icu.impl.locale.XLocaleDistance.DistanceOption; import com.ibm.icu.util.LocalePriorityList; import com.ibm.icu.util.Output; import com.ibm.icu.util.ULocale; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.Map; -import java.util.Map.Entry; -import java.util.Set; /** * Immutable class that picks best match between user's desired locales and application's supported locales. From a99dc97aa8fd08e28f90fd691fb5c80e55242c6b Mon Sep 17 00:00:00 2001 From: Norbert Runge Date: Fri, 27 Jul 2018 15:38:00 -0700 Subject: [PATCH 3/3] Removes duplicate import statement. --- .../classes/core/src/com/ibm/icu/impl/locale/XLikelySubtags.java | 1 - 1 file changed, 1 deletion(-) diff --git a/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLikelySubtags.java b/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLikelySubtags.java index d70aca856bb..b5dcd6cd073 100644 --- a/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLikelySubtags.java +++ b/icu4j/main/classes/core/src/com/ibm/icu/impl/locale/XLikelySubtags.java @@ -2,7 +2,6 @@ // License & terms of use: http://www.unicode.org/copyright.html#License package com.ibm.icu.impl.locale; -import java.util.Collection; import java.util.Collection; import java.util.Collections; import java.util.Enumeration;