1/* 2 * Copyright (c) 2012, 2016, 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 26package sun.util.locale; 27 28import java.util.HashMap; 29import java.util.Map; 30 31/** 32 * Locale equivalent map for BCP47 Locale matching 33 */ 34final class LocaleEquivalentMaps { 35 36 static final Map<String, String> singleEquivMap; 37 static final Map<String, String[]> multiEquivsMap; 38 static final Map<String, String> regionVariantEquivMap; 39 40 static { 41 singleEquivMap = new HashMap<>(); 42 multiEquivsMap = new HashMap<>(); 43 regionVariantEquivMap = new HashMap<>(); 44 45 // This is an auto-generated file and should not be manually edited. 46 // LSR Revision: 2016-02-10 47 singleEquivMap.put("aam", "aas"); 48 singleEquivMap.put("aas", "aam"); 49 singleEquivMap.put("acn", "xia"); 50 singleEquivMap.put("adp", "dz"); 51 singleEquivMap.put("adx", "pcr"); 52 singleEquivMap.put("ami", "i-ami"); 53 singleEquivMap.put("art-lojban", "jbo"); 54 singleEquivMap.put("ase", "sgn-us"); 55 singleEquivMap.put("aue", "ktz"); 56 singleEquivMap.put("ayx", "nun"); 57 singleEquivMap.put("bfi", "sgn-gb"); 58 singleEquivMap.put("bjd", "drl"); 59 singleEquivMap.put("bnn", "i-bnn"); 60 singleEquivMap.put("bzs", "sgn-br"); 61 singleEquivMap.put("cir", "meg"); 62 singleEquivMap.put("cjr", "mom"); 63 singleEquivMap.put("cka", "cmr"); 64 singleEquivMap.put("cmk", "xch"); 65 singleEquivMap.put("cmn-hans", "zh-cmn-hans"); 66 singleEquivMap.put("cmn-hant", "zh-cmn-hant"); 67 singleEquivMap.put("cmr", "cka"); 68 singleEquivMap.put("csn", "sgn-co"); 69 singleEquivMap.put("dev", "gav"); 70 singleEquivMap.put("drh", "khk"); 71 singleEquivMap.put("drl", "bjd"); 72 singleEquivMap.put("dse", "sgn-nl"); 73 singleEquivMap.put("dsl", "sgn-dk"); 74 singleEquivMap.put("dz", "adp"); 75 singleEquivMap.put("ema", "uok"); 76 singleEquivMap.put("en-gb-oed", "en-gb-oxendict"); 77 singleEquivMap.put("en-gb-oxendict", "en-gb-oed"); 78 singleEquivMap.put("fsl", "sgn-fr"); 79 singleEquivMap.put("gal", "ilw"); 80 singleEquivMap.put("gan", "zh-gan"); 81 singleEquivMap.put("gav", "dev"); 82 singleEquivMap.put("gsg", "sgn-de"); 83 singleEquivMap.put("gss", "sgn-gr"); 84 singleEquivMap.put("gti", "nyc"); 85 singleEquivMap.put("he", "iw"); 86 singleEquivMap.put("hle", "sca"); 87 singleEquivMap.put("hrr", "jal"); 88 singleEquivMap.put("hsn", "zh-xiang"); 89 singleEquivMap.put("i-ami", "ami"); 90 singleEquivMap.put("i-bnn", "bnn"); 91 singleEquivMap.put("i-klingon", "tlh"); 92 singleEquivMap.put("i-lux", "lb"); 93 singleEquivMap.put("i-navajo", "nv"); 94 singleEquivMap.put("i-pwn", "pwn"); 95 singleEquivMap.put("i-tao", "tao"); 96 singleEquivMap.put("i-tay", "tay"); 97 singleEquivMap.put("i-tsu", "tsu"); 98 singleEquivMap.put("ibi", "opa"); 99 singleEquivMap.put("id", "in"); 100 singleEquivMap.put("ilw", "gal"); 101 singleEquivMap.put("in", "id"); 102 singleEquivMap.put("ise", "sgn-it"); 103 singleEquivMap.put("isg", "sgn-ie"); 104 singleEquivMap.put("iw", "he"); 105 singleEquivMap.put("jal", "hrr"); 106 singleEquivMap.put("jbo", "art-lojban"); 107 singleEquivMap.put("ji", "yi"); 108 singleEquivMap.put("jsl", "sgn-jp"); 109 singleEquivMap.put("jv", "jw"); 110 singleEquivMap.put("jw", "jv"); 111 singleEquivMap.put("kgh", "kml"); 112 singleEquivMap.put("khk", "drh"); 113 singleEquivMap.put("kml", "kgh"); 114 singleEquivMap.put("koj", "kwv"); 115 singleEquivMap.put("ktz", "aue"); 116 singleEquivMap.put("kwq", "yam"); 117 singleEquivMap.put("kwv", "koj"); 118 singleEquivMap.put("kxe", "tvd"); 119 singleEquivMap.put("lb", "i-lux"); 120 singleEquivMap.put("lcq", "ppr"); 121 singleEquivMap.put("lii", "raq"); 122 singleEquivMap.put("lmm", "rmx"); 123 singleEquivMap.put("lrr", "yma"); 124 singleEquivMap.put("meg", "cir"); 125 singleEquivMap.put("mfs", "sgn-mx"); 126 singleEquivMap.put("mo", "ro"); 127 singleEquivMap.put("mom", "cjr"); 128 singleEquivMap.put("mtm", "ymt"); 129 singleEquivMap.put("nan", "zh-min-nan"); 130 singleEquivMap.put("nb", "no-bok"); 131 singleEquivMap.put("ncs", "sgn-ni"); 132 singleEquivMap.put("ngv", "nnx"); 133 singleEquivMap.put("nn", "no-nyn"); 134 singleEquivMap.put("nnx", "ngv"); 135 singleEquivMap.put("no-bok", "nb"); 136 singleEquivMap.put("no-nyn", "nn"); 137 singleEquivMap.put("nsl", "sgn-no"); 138 singleEquivMap.put("nun", "ayx"); 139 singleEquivMap.put("nv", "i-navajo"); 140 singleEquivMap.put("nyc", "gti"); 141 singleEquivMap.put("opa", "ibi"); 142 singleEquivMap.put("oyb", "thx"); 143 singleEquivMap.put("pcr", "adx"); 144 singleEquivMap.put("phr", "pmu"); 145 singleEquivMap.put("pmu", "phr"); 146 singleEquivMap.put("ppr", "lcq"); 147 singleEquivMap.put("psr", "sgn-pt"); 148 singleEquivMap.put("pub", "puz"); 149 singleEquivMap.put("puz", "pub"); 150 singleEquivMap.put("pwn", "i-pwn"); 151 singleEquivMap.put("raq", "lii"); 152 singleEquivMap.put("ras", "tie"); 153 singleEquivMap.put("rmx", "lmm"); 154 singleEquivMap.put("ro", "mo"); 155 singleEquivMap.put("sca", "hle"); 156 singleEquivMap.put("sfb", "sgn-be-fr"); 157 singleEquivMap.put("sfs", "sgn-za"); 158 singleEquivMap.put("sgg", "sgn-ch-de"); 159 singleEquivMap.put("sgn-be-fr", "sfb"); 160 singleEquivMap.put("sgn-be-nl", "vgt"); 161 singleEquivMap.put("sgn-br", "bzs"); 162 singleEquivMap.put("sgn-ch-de", "sgg"); 163 singleEquivMap.put("sgn-co", "csn"); 164 singleEquivMap.put("sgn-de", "gsg"); 165 singleEquivMap.put("sgn-dk", "dsl"); 166 singleEquivMap.put("sgn-es", "ssp"); 167 singleEquivMap.put("sgn-fr", "fsl"); 168 singleEquivMap.put("sgn-gb", "bfi"); 169 singleEquivMap.put("sgn-gr", "gss"); 170 singleEquivMap.put("sgn-ie", "isg"); 171 singleEquivMap.put("sgn-it", "ise"); 172 singleEquivMap.put("sgn-jp", "jsl"); 173 singleEquivMap.put("sgn-mx", "mfs"); 174 singleEquivMap.put("sgn-ni", "ncs"); 175 singleEquivMap.put("sgn-nl", "dse"); 176 singleEquivMap.put("sgn-no", "nsl"); 177 singleEquivMap.put("sgn-pt", "psr"); 178 singleEquivMap.put("sgn-se", "swl"); 179 singleEquivMap.put("sgn-us", "ase"); 180 singleEquivMap.put("sgn-za", "sfs"); 181 singleEquivMap.put("ssp", "sgn-es"); 182 singleEquivMap.put("suj", "xsj"); 183 singleEquivMap.put("swl", "sgn-se"); 184 singleEquivMap.put("taj", "tsf"); 185 singleEquivMap.put("tao", "i-tao"); 186 singleEquivMap.put("tay", "i-tay"); 187 singleEquivMap.put("thx", "oyb"); 188 singleEquivMap.put("tie", "ras"); 189 singleEquivMap.put("tkk", "twm"); 190 singleEquivMap.put("tlh", "i-klingon"); 191 singleEquivMap.put("tlw", "weo"); 192 singleEquivMap.put("tsf", "taj"); 193 singleEquivMap.put("tsu", "i-tsu"); 194 singleEquivMap.put("tvd", "kxe"); 195 singleEquivMap.put("twm", "tkk"); 196 singleEquivMap.put("uok", "ema"); 197 singleEquivMap.put("vgt", "sgn-be-nl"); 198 singleEquivMap.put("weo", "tlw"); 199 singleEquivMap.put("wuu", "zh-wuu"); 200 singleEquivMap.put("xch", "cmk"); 201 singleEquivMap.put("xia", "acn"); 202 singleEquivMap.put("xsj", "suj"); 203 singleEquivMap.put("yam", "kwq"); 204 singleEquivMap.put("yi", "ji"); 205 singleEquivMap.put("yma", "lrr"); 206 singleEquivMap.put("ymt", "mtm"); 207 singleEquivMap.put("yos", "zom"); 208 singleEquivMap.put("yue", "zh-yue"); 209 singleEquivMap.put("yug", "yuu"); 210 singleEquivMap.put("yuu", "yug"); 211 singleEquivMap.put("zh-cmn-hans", "cmn-hans"); 212 singleEquivMap.put("zh-cmn-hant", "cmn-hant"); 213 singleEquivMap.put("zh-gan", "gan"); 214 singleEquivMap.put("zh-min-nan", "nan"); 215 singleEquivMap.put("zh-wuu", "wuu"); 216 singleEquivMap.put("zh-xiang", "hsn"); 217 singleEquivMap.put("zh-yue", "yue"); 218 singleEquivMap.put("zom", "yos"); 219 220 multiEquivsMap.put("ccq", new String[] {"rki", "ybd"}); 221 multiEquivsMap.put("cmn", new String[] {"zh-guoyu", "zh-cmn"}); 222 multiEquivsMap.put("drw", new String[] {"prs", "tnf"}); 223 multiEquivsMap.put("gfx", new String[] {"vaj", "mwj", "oun"}); 224 multiEquivsMap.put("hak", new String[] {"i-hak", "zh-hakka"}); 225 multiEquivsMap.put("i-hak", new String[] {"hak", "zh-hakka"}); 226 multiEquivsMap.put("mry", new String[] {"mst", "myt"}); 227 multiEquivsMap.put("mst", new String[] {"mry", "myt"}); 228 multiEquivsMap.put("mwj", new String[] {"vaj", "gfx", "oun"}); 229 multiEquivsMap.put("myt", new String[] {"mry", "mst"}); 230 multiEquivsMap.put("oun", new String[] {"vaj", "gfx", "mwj"}); 231 multiEquivsMap.put("prs", new String[] {"drw", "tnf"}); 232 multiEquivsMap.put("rki", new String[] {"ccq", "ybd"}); 233 multiEquivsMap.put("tnf", new String[] {"prs", "drw"}); 234 multiEquivsMap.put("vaj", new String[] {"gfx", "mwj", "oun"}); 235 multiEquivsMap.put("ybd", new String[] {"rki", "ccq"}); 236 multiEquivsMap.put("zh-cmn", new String[] {"cmn", "zh-guoyu"}); 237 multiEquivsMap.put("zh-guoyu", new String[] {"cmn", "zh-cmn"}); 238 multiEquivsMap.put("zh-hakka", new String[] {"hak", "i-hak"}); 239 240 regionVariantEquivMap.put("-alalc97", "-heploc"); 241 regionVariantEquivMap.put("-bu", "-mm"); 242 regionVariantEquivMap.put("-cd", "-zr"); 243 regionVariantEquivMap.put("-dd", "-de"); 244 regionVariantEquivMap.put("-de", "-dd"); 245 regionVariantEquivMap.put("-fr", "-fx"); 246 regionVariantEquivMap.put("-fx", "-fr"); 247 regionVariantEquivMap.put("-heploc", "-alalc97"); 248 regionVariantEquivMap.put("-mm", "-bu"); 249 regionVariantEquivMap.put("-tl", "-tp"); 250 regionVariantEquivMap.put("-tp", "-tl"); 251 regionVariantEquivMap.put("-yd", "-ye"); 252 regionVariantEquivMap.put("-ye", "-yd"); 253 regionVariantEquivMap.put("-zr", "-cd"); 254 } 255 256} 257