| //--------------------------------------------------------- |
| // Copyright (C) 2005, International Business Machines |
| // Corporation and others. All Rights Reserved. |
| //--------------------------------------------------------- |
| |
| // >>> This data was generated from CLDR by Mark's tools |
| // >>> as a temporary measure for the 3.4 release. |
| |
| package com.ibm.icu.dev.tool; |
| |
| import com.ibm.icu.impl.ZoneMetaData; |
| |
| import java.util.*; |
| |
| public final class ZoneMetaCLDR { |
| /* Generated by org.unicode.cldr.tool.CountItems */ |
| private static final String[][] CANONICAL_REMAP = { |
| /* zoneID, canonical zoneID */ |
| {"America/Argentina/Buenos_Aires", "America/Buenos_Aires"}, |
| {"America/Argentina/Catamarca", "America/Catamarca"}, |
| {"America/Argentina/Cordoba", "America/Cordoba"}, |
| {"America/Argentina/Jujuy", "America/Jujuy"}, |
| {"America/Argentina/Mendoza", "America/Mendoza"}, |
| {"America/Atka", "America/Adak"}, |
| {"America/Ensenada", "America/Tijuana"}, |
| {"America/Fort_Wayne", "America/Indianapolis"}, |
| {"America/Indiana/Indianapolis", "America/Indianapolis"}, |
| {"America/Kentucky/Louisville", "America/Louisville"}, |
| {"America/Knox_IN", "America/Indiana/Knox"}, |
| {"America/Porto_Acre", "America/Rio_Branco"}, |
| {"America/Rosario", "America/Cordoba"}, |
| {"America/Virgin", "America/St_Thomas"}, |
| {"Asia/Ashkhabad", "Asia/Ashgabat"}, |
| {"Asia/Chungking", "Asia/Chongqing"}, |
| {"Asia/Dacca", "Asia/Dhaka"}, |
| {"Asia/Istanbul", "Europe/Istanbul"}, |
| {"Asia/Macao", "Asia/Macau"}, |
| {"Asia/Tel_Aviv", "Asia/Jerusalem"}, |
| {"Asia/Thimbu", "Asia/Thimphu"}, |
| {"Asia/Ujung_Pandang", "Asia/Makassar"}, |
| {"Asia/Ulan_Bator", "Asia/Ulaanbaatar"}, |
| {"Australia/ACT", "Australia/Sydney"}, |
| {"Australia/Canberra", "Australia/Sydney"}, |
| {"Australia/LHI", "Australia/Lord_Howe"}, |
| {"Australia/NSW", "Australia/Sydney"}, |
| {"Australia/North", "Australia/Darwin"}, |
| {"Australia/Queensland", "Australia/Brisbane"}, |
| {"Australia/South", "Australia/Adelaide"}, |
| {"Australia/Tasmania", "Australia/Hobart"}, |
| {"Australia/Victoria", "Australia/Melbourne"}, |
| {"Australia/West", "Australia/Perth"}, |
| {"Australia/Yancowinna", "Australia/Broken_Hill"}, |
| {"Brazil/Acre", "America/Rio_Branco"}, |
| {"Brazil/DeNoronha", "America/Noronha"}, |
| {"Brazil/East", "America/Sao_Paulo"}, |
| {"Brazil/West", "America/Manaus"}, |
| {"CST6CDT", "America/Chicago"}, |
| {"Canada/Atlantic", "America/Halifax"}, |
| {"Canada/Central", "America/Winnipeg"}, |
| {"Canada/East-Saskatchewan", "America/Regina"}, |
| {"Canada/Eastern", "America/Toronto"}, |
| {"Canada/Mountain", "America/Edmonton"}, |
| {"Canada/Newfoundland", "America/St_Johns"}, |
| {"Canada/Pacific", "America/Vancouver"}, |
| {"Canada/Saskatchewan", "America/Regina"}, |
| {"Canada/Yukon", "America/Whitehorse"}, |
| {"Chile/Continental", "America/Santiago"}, |
| {"Chile/EasterIsland", "Pacific/Easter"}, |
| {"Cuba", "America/Havana"}, |
| {"EST", "America/Indianapolis"}, |
| {"EST5EDT", "America/New_York"}, |
| {"Egypt", "Africa/Cairo"}, |
| {"Eire", "Europe/Dublin"}, |
| {"Etc/GMT+0", "Etc/GMT"}, |
| {"Etc/GMT-0", "Etc/GMT"}, |
| {"Etc/GMT0", "Etc/GMT"}, |
| {"Etc/Greenwich", "Etc/GMT"}, |
| {"Etc/UCT", "Etc/GMT"}, |
| {"Etc/UTC", "Etc/GMT"}, |
| {"Etc/Universal", "Etc/GMT"}, |
| {"Etc/Zulu", "Etc/GMT"}, |
| {"Europe/Nicosia", "Asia/Nicosia"}, |
| {"Europe/Tiraspol", "Europe/Chisinau"}, |
| {"GB", "Europe/London"}, |
| {"GB-Eire", "Europe/London"}, |
| {"GMT", "Etc/GMT"}, |
| {"GMT+0", "Etc/GMT"}, |
| {"GMT-0", "Etc/GMT"}, |
| {"GMT0", "Etc/GMT"}, |
| {"Greenwich", "Etc/GMT"}, |
| {"HST", "Pacific/Honolulu"}, |
| {"Hongkong", "Asia/Hong_Kong"}, |
| {"Iceland", "Atlantic/Reykjavik"}, |
| {"Iran", "Asia/Tehran"}, |
| {"Israel", "Asia/Jerusalem"}, |
| {"Jamaica", "America/Jamaica"}, |
| {"Japan", "Asia/Tokyo"}, |
| {"Kwajalein", "Pacific/Kwajalein"}, |
| {"Libya", "Africa/Tripoli"}, |
| {"MST", "America/Phoenix"}, |
| {"MST7MDT", "America/Denver"}, |
| {"Mexico/BajaNorte", "America/Tijuana"}, |
| {"Mexico/BajaSur", "America/Mazatlan"}, |
| {"Mexico/General", "America/Mexico_City"}, |
| {"NZ", "Pacific/Auckland"}, |
| {"NZ-CHAT", "Pacific/Chatham"}, |
| {"Navajo", "America/Shiprock"}, |
| {"PRC", "Asia/Shanghai"}, |
| {"PST8PDT", "America/Los_Angeles"}, |
| {"Pacific/Samoa", "Pacific/Pago_Pago"}, |
| {"Poland", "Europe/Warsaw"}, |
| {"Portugal", "Europe/Lisbon"}, |
| {"ROC", "Asia/Taipei"}, |
| {"ROK", "Asia/Seoul"}, |
| {"Singapore", "Asia/Singapore"}, |
| {"SystemV/AST4", "America/Puerto_Rico"}, |
| {"SystemV/AST4ADT", "America/Halifax"}, |
| {"SystemV/CST6", "America/Regina"}, |
| {"SystemV/CST6CDT", "America/Chicago"}, |
| {"SystemV/EST5", "America/Indianapolis"}, |
| {"SystemV/EST5EDT", "America/New_York"}, |
| {"SystemV/HST10", "Pacific/Honolulu"}, |
| {"SystemV/MST7", "America/Phoenix"}, |
| {"SystemV/MST7MDT", "America/Denver"}, |
| {"SystemV/PST8", "Pacific/Pitcairn"}, |
| {"SystemV/PST8PDT", "America/Los_Angeles"}, |
| {"SystemV/YST9", "Pacific/Gambier"}, |
| {"SystemV/YST9YDT", "America/Anchorage"}, |
| {"Turkey", "Europe/Istanbul"}, |
| {"UCT", "Etc/GMT"}, |
| {"US/Alaska", "America/Anchorage"}, |
| {"US/Aleutian", "America/Adak"}, |
| {"US/Arizona", "America/Phoenix"}, |
| {"US/Central", "America/Chicago"}, |
| {"US/East-Indiana", "America/Indianapolis"}, |
| {"US/Eastern", "America/New_York"}, |
| {"US/Hawaii", "Pacific/Honolulu"}, |
| {"US/Indiana-Starke", "America/Indiana/Knox"}, |
| {"US/Michigan", "America/Detroit"}, |
| {"US/Mountain", "America/Denver"}, |
| {"US/Pacific", "America/Los_Angeles"}, |
| {"US/Pacific-New", "America/Los_Angeles"}, |
| {"US/Samoa", "Pacific/Pago_Pago"}, |
| {"UTC", "Etc/GMT"}, |
| {"Universal", "Etc/GMT"}, |
| {"W-SU", "Europe/Moscow"}, |
| {"Zulu", "Etc/GMT"}, |
| }; |
| |
| /* All canonical zoneIDs */ |
| private static final String[] CANONICAL_LIST = { |
| "Africa/Abidjan", |
| "Africa/Accra", |
| "Africa/Addis_Ababa", |
| "Africa/Algiers", |
| "Africa/Asmera", |
| "Africa/Bamako", |
| "Africa/Bangui", |
| "Africa/Banjul", |
| "Africa/Bissau", |
| "Africa/Blantyre", |
| "Africa/Brazzaville", |
| "Africa/Bujumbura", |
| "Africa/Cairo", |
| "Africa/Casablanca", |
| "Africa/Ceuta", |
| "Africa/Conakry", |
| "Africa/Dakar", |
| "Africa/Dar_es_Salaam", |
| "Africa/Djibouti", |
| "Africa/Douala", |
| "Africa/El_Aaiun", |
| "Africa/Freetown", |
| "Africa/Gaborone", |
| "Africa/Harare", |
| "Africa/Johannesburg", |
| "Africa/Kampala", |
| "Africa/Khartoum", |
| "Africa/Kigali", |
| "Africa/Kinshasa", |
| "Africa/Lagos", |
| "Africa/Libreville", |
| "Africa/Lome", |
| "Africa/Luanda", |
| "Africa/Lubumbashi", |
| "Africa/Lusaka", |
| "Africa/Malabo", |
| "Africa/Maputo", |
| "Africa/Maseru", |
| "Africa/Mbabane", |
| "Africa/Mogadishu", |
| "Africa/Monrovia", |
| "Africa/Nairobi", |
| "Africa/Ndjamena", |
| "Africa/Niamey", |
| "Africa/Nouakchott", |
| "Africa/Ouagadougou", |
| "Africa/Porto-Novo", |
| "Africa/Sao_Tome", |
| "Africa/Timbuktu", |
| "Africa/Tripoli", |
| "Africa/Tunis", |
| "Africa/Windhoek", |
| "America/Adak", |
| "America/Anchorage", |
| "America/Anguilla", |
| "America/Antigua", |
| "America/Araguaina", |
| "America/Argentina/ComodRivadavia", |
| "America/Argentina/La_Rioja", |
| "America/Argentina/Rio_Gallegos", |
| "America/Argentina/San_Juan", |
| "America/Argentina/Tucuman", |
| "America/Argentina/Ushuaia", |
| "America/Aruba", |
| "America/Asuncion", |
| "America/Bahia", |
| "America/Barbados", |
| "America/Belem", |
| "America/Belize", |
| "America/Boa_Vista", |
| "America/Bogota", |
| "America/Boise", |
| "America/Buenos_Aires", |
| "America/Cambridge_Bay", |
| "America/Campo_Grande", |
| "America/Cancun", |
| "America/Caracas", |
| "America/Catamarca", |
| "America/Cayenne", |
| "America/Cayman", |
| "America/Chicago", |
| "America/Chihuahua", |
| "America/Cordoba", |
| "America/Costa_Rica", |
| "America/Cuiaba", |
| "America/Curacao", |
| "America/Danmarkshavn", |
| "America/Dawson", |
| "America/Dawson_Creek", |
| "America/Denver", |
| "America/Detroit", |
| "America/Dominica", |
| "America/Edmonton", |
| "America/Eirunepe", |
| "America/El_Salvador", |
| "America/Fortaleza", |
| "America/Glace_Bay", |
| "America/Godthab", |
| "America/Goose_Bay", |
| "America/Grand_Turk", |
| "America/Grenada", |
| "America/Guadeloupe", |
| "America/Guatemala", |
| "America/Guayaquil", |
| "America/Guyana", |
| "America/Halifax", |
| "America/Havana", |
| "America/Hermosillo", |
| "America/Indiana/Knox", |
| "America/Indiana/Marengo", |
| "America/Indiana/Vevay", |
| "America/Indianapolis", |
| "America/Inuvik", |
| "America/Iqaluit", |
| "America/Jamaica", |
| "America/Jujuy", |
| "America/Juneau", |
| "America/Kentucky/Monticello", |
| "America/La_Paz", |
| "America/Lima", |
| "America/Los_Angeles", |
| "America/Louisville", |
| "America/Maceio", |
| "America/Managua", |
| "America/Manaus", |
| "America/Martinique", |
| "America/Mazatlan", |
| "America/Mendoza", |
| "America/Menominee", |
| "America/Merida", |
| "America/Mexico_City", |
| "America/Miquelon", |
| "America/Monterrey", |
| "America/Montevideo", |
| "America/Montreal", |
| "America/Montserrat", |
| "America/Nassau", |
| "America/New_York", |
| "America/Nipigon", |
| "America/Nome", |
| "America/Noronha", |
| "America/North_Dakota/Center", |
| "America/Panama", |
| "America/Pangnirtung", |
| "America/Paramaribo", |
| "America/Phoenix", |
| "America/Port-au-Prince", |
| "America/Port_of_Spain", |
| "America/Porto_Velho", |
| "America/Puerto_Rico", |
| "America/Rainy_River", |
| "America/Rankin_Inlet", |
| "America/Recife", |
| "America/Regina", |
| "America/Rio_Branco", |
| "America/Santiago", |
| "America/Santo_Domingo", |
| "America/Sao_Paulo", |
| "America/Scoresbysund", |
| "America/Shiprock", |
| "America/St_Johns", |
| "America/St_Kitts", |
| "America/St_Lucia", |
| "America/St_Thomas", |
| "America/St_Vincent", |
| "America/Swift_Current", |
| "America/Tegucigalpa", |
| "America/Thule", |
| "America/Thunder_Bay", |
| "America/Tijuana", |
| "America/Toronto", |
| "America/Tortola", |
| "America/Vancouver", |
| "America/Whitehorse", |
| "America/Winnipeg", |
| "America/Yakutat", |
| "America/Yellowknife", |
| "Antarctica/Casey", |
| "Antarctica/Davis", |
| "Antarctica/DumontDUrville", |
| "Antarctica/Mawson", |
| "Antarctica/McMurdo", |
| "Antarctica/Palmer", |
| "Antarctica/Rothera", |
| "Antarctica/South_Pole", |
| "Antarctica/Syowa", |
| "Antarctica/Vostok", |
| "Arctic/Longyearbyen", |
| "Asia/Aden", |
| "Asia/Almaty", |
| "Asia/Amman", |
| "Asia/Anadyr", |
| "Asia/Aqtau", |
| "Asia/Aqtobe", |
| "Asia/Ashgabat", |
| "Asia/Baghdad", |
| "Asia/Bahrain", |
| "Asia/Baku", |
| "Asia/Bangkok", |
| "Asia/Beirut", |
| "Asia/Bishkek", |
| "Asia/Brunei", |
| "Asia/Calcutta", |
| "Asia/Choibalsan", |
| "Asia/Chongqing", |
| "Asia/Colombo", |
| "Asia/Damascus", |
| "Asia/Dhaka", |
| "Asia/Dili", |
| "Asia/Dubai", |
| "Asia/Dushanbe", |
| "Asia/Gaza", |
| "Asia/Harbin", |
| "Asia/Hong_Kong", |
| "Asia/Hovd", |
| "Asia/Irkutsk", |
| "Asia/Jakarta", |
| "Asia/Jayapura", |
| "Asia/Jerusalem", |
| "Asia/Kabul", |
| "Asia/Kamchatka", |
| "Asia/Karachi", |
| "Asia/Kashgar", |
| "Asia/Katmandu", |
| "Asia/Krasnoyarsk", |
| "Asia/Kuala_Lumpur", |
| "Asia/Kuching", |
| "Asia/Kuwait", |
| "Asia/Macau", |
| "Asia/Magadan", |
| "Asia/Makassar", |
| "Asia/Manila", |
| "Asia/Muscat", |
| "Asia/Nicosia", |
| "Asia/Novosibirsk", |
| "Asia/Omsk", |
| "Asia/Oral", |
| "Asia/Phnom_Penh", |
| "Asia/Pontianak", |
| "Asia/Pyongyang", |
| "Asia/Qatar", |
| "Asia/Qyzylorda", |
| "Asia/Rangoon", |
| "Asia/Riyadh", |
| "Asia/Saigon", |
| "Asia/Sakhalin", |
| "Asia/Samarkand", |
| "Asia/Seoul", |
| "Asia/Shanghai", |
| "Asia/Singapore", |
| "Asia/Taipei", |
| "Asia/Tashkent", |
| "Asia/Tbilisi", |
| "Asia/Tehran", |
| "Asia/Thimphu", |
| "Asia/Tokyo", |
| "Asia/Ulaanbaatar", |
| "Asia/Urumqi", |
| "Asia/Vientiane", |
| "Asia/Vladivostok", |
| "Asia/Yakutsk", |
| "Asia/Yekaterinburg", |
| "Asia/Yerevan", |
| "Atlantic/Azores", |
| "Atlantic/Bermuda", |
| "Atlantic/Canary", |
| "Atlantic/Cape_Verde", |
| "Atlantic/Faeroe", |
| "Atlantic/Jan_Mayen", |
| "Atlantic/Madeira", |
| "Atlantic/Reykjavik", |
| "Atlantic/South_Georgia", |
| "Atlantic/St_Helena", |
| "Atlantic/Stanley", |
| "Australia/Adelaide", |
| "Australia/Brisbane", |
| "Australia/Broken_Hill", |
| "Australia/Darwin", |
| "Australia/Hobart", |
| "Australia/Lindeman", |
| "Australia/Lord_Howe", |
| "Australia/Melbourne", |
| "Australia/Perth", |
| "Australia/Sydney", |
| "Etc/GMT", |
| "Etc/GMT+1", |
| "Etc/GMT+10", |
| "Etc/GMT+11", |
| "Etc/GMT+12", |
| "Etc/GMT+2", |
| "Etc/GMT+3", |
| "Etc/GMT+4", |
| "Etc/GMT+5", |
| "Etc/GMT+6", |
| "Etc/GMT+7", |
| "Etc/GMT+8", |
| "Etc/GMT+9", |
| "Etc/GMT-1", |
| "Etc/GMT-10", |
| "Etc/GMT-11", |
| "Etc/GMT-12", |
| "Etc/GMT-13", |
| "Etc/GMT-14", |
| "Etc/GMT-2", |
| "Etc/GMT-3", |
| "Etc/GMT-4", |
| "Etc/GMT-5", |
| "Etc/GMT-6", |
| "Etc/GMT-7", |
| "Etc/GMT-8", |
| "Etc/GMT-9", |
| "Europe/Amsterdam", |
| "Europe/Andorra", |
| "Europe/Athens", |
| "Europe/Belfast", |
| "Europe/Belgrade", |
| "Europe/Berlin", |
| "Europe/Bratislava", |
| "Europe/Brussels", |
| "Europe/Bucharest", |
| "Europe/Budapest", |
| "Europe/Chisinau", |
| "Europe/Copenhagen", |
| "Europe/Dublin", |
| "Europe/Gibraltar", |
| "Europe/Helsinki", |
| "Europe/Istanbul", |
| "Europe/Kaliningrad", |
| "Europe/Kiev", |
| "Europe/Lisbon", |
| "Europe/Ljubljana", |
| "Europe/London", |
| "Europe/Luxembourg", |
| "Europe/Madrid", |
| "Europe/Malta", |
| "Europe/Mariehamn", |
| "Europe/Minsk", |
| "Europe/Monaco", |
| "Europe/Moscow", |
| "Europe/Oslo", |
| "Europe/Paris", |
| "Europe/Prague", |
| "Europe/Riga", |
| "Europe/Rome", |
| "Europe/Samara", |
| "Europe/San_Marino", |
| "Europe/Sarajevo", |
| "Europe/Simferopol", |
| "Europe/Skopje", |
| "Europe/Sofia", |
| "Europe/Stockholm", |
| "Europe/Tallinn", |
| "Europe/Tirane", |
| "Europe/Uzhgorod", |
| "Europe/Vaduz", |
| "Europe/Vatican", |
| "Europe/Vienna", |
| "Europe/Vilnius", |
| "Europe/Warsaw", |
| "Europe/Zagreb", |
| "Europe/Zaporozhye", |
| "Europe/Zurich", |
| "Indian/Antananarivo", |
| "Indian/Chagos", |
| "Indian/Christmas", |
| "Indian/Cocos", |
| "Indian/Comoro", |
| "Indian/Kerguelen", |
| "Indian/Mahe", |
| "Indian/Maldives", |
| "Indian/Mauritius", |
| "Indian/Mayotte", |
| "Indian/Reunion", |
| "Pacific/Apia", |
| "Pacific/Auckland", |
| "Pacific/Chatham", |
| "Pacific/Easter", |
| "Pacific/Efate", |
| "Pacific/Enderbury", |
| "Pacific/Fakaofo", |
| "Pacific/Fiji", |
| "Pacific/Funafuti", |
| "Pacific/Galapagos", |
| "Pacific/Gambier", |
| "Pacific/Guadalcanal", |
| "Pacific/Guam", |
| "Pacific/Honolulu", |
| "Pacific/Johnston", |
| "Pacific/Kiritimati", |
| "Pacific/Kosrae", |
| "Pacific/Kwajalein", |
| "Pacific/Majuro", |
| "Pacific/Marquesas", |
| "Pacific/Midway", |
| "Pacific/Nauru", |
| "Pacific/Niue", |
| "Pacific/Norfolk", |
| "Pacific/Noumea", |
| "Pacific/Pago_Pago", |
| "Pacific/Palau", |
| "Pacific/Pitcairn", |
| "Pacific/Ponape", |
| "Pacific/Port_Moresby", |
| "Pacific/Rarotonga", |
| "Pacific/Saipan", |
| "Pacific/Tahiti", |
| "Pacific/Tarawa", |
| "Pacific/Tongatapu", |
| "Pacific/Truk", |
| "Pacific/Wake", |
| "Pacific/Wallis", |
| "Pacific/Yap", |
| |
| // Riyadh hack |
| "Asia/Riyadh87", |
| "Asia/Riyadh88", |
| "Asia/Riyadh89", |
| }; |
| |
| private static final String[][] COUNTRY_INFO = { |
| /* canonical zoneID, country, isSingle */ |
| {"Etc/GMT+12", "001", "F"}, |
| {"Etc/GMT-12", "001", "F"}, |
| {"Etc/GMT+11", "001", "F"}, |
| {"Etc/GMT-13", "001", "F"}, |
| {"Etc/GMT+10", "001", "F"}, |
| {"Etc/GMT-14", "001", "F"}, |
| {"Etc/GMT+9", "001", "F"}, |
| {"Etc/GMT+8", "001", "F"}, |
| {"Etc/GMT+7", "001", "F"}, |
| {"Etc/GMT+6", "001", "F"}, |
| {"Etc/GMT+5", "001", "F"}, |
| {"Etc/GMT+4", "001", "F"}, |
| {"Etc/GMT+3", "001", "F"}, |
| {"Etc/GMT+2", "001", "F"}, |
| {"Etc/GMT+1", "001", "F"}, |
| {"Etc/GMT", "001", "F"}, |
| {"Etc/GMT-1", "001", "F"}, |
| {"Etc/GMT-2", "001", "F"}, |
| {"Etc/GMT-3", "001", "F"}, |
| {"Etc/GMT-4", "001", "F"}, |
| {"Etc/GMT-5", "001", "F"}, |
| {"Etc/GMT-6", "001", "F"}, |
| {"Etc/GMT-7", "001", "F"}, |
| {"Etc/GMT-8", "001", "F"}, |
| {"Etc/GMT-9", "001", "F"}, |
| {"Etc/GMT-10", "001", "F"}, |
| {"Etc/GMT-11", "001", "F"}, |
| {"Europe/Andorra", "AD", "T"}, |
| {"Asia/Dubai", "AE", "T"}, |
| {"Asia/Kabul", "AF", "T"}, |
| {"America/Antigua", "AG", "T"}, |
| {"America/Anguilla", "AI", "T"}, |
| {"Europe/Tirane", "AL", "T"}, |
| {"Asia/Yerevan", "AM", "T"}, |
| {"America/Curacao", "AN", "T"}, |
| {"Africa/Luanda", "AO", "T"}, |
| {"Antarctica/Rothera", "AQ", "F"}, |
| {"Antarctica/Palmer", "AQ", "F"}, |
| {"Antarctica/South_Pole", "AQ", "F"}, |
| {"Antarctica/Syowa", "AQ", "F"}, |
| {"Antarctica/Mawson", "AQ", "F"}, |
| {"Antarctica/Davis", "AQ", "F"}, |
| {"Antarctica/Vostok", "AQ", "F"}, |
| {"Antarctica/Casey", "AQ", "F"}, |
| {"Antarctica/DumontDUrville", "AQ", "F"}, |
| {"Antarctica/McMurdo", "AQ", "F"}, |
| {"America/Argentina/Rio_Gallegos", "AR", "F"}, |
| {"America/Mendoza", "AR", "F"}, |
| {"America/Argentina/San_Juan", "AR", "F"}, |
| {"America/Argentina/Ushuaia", "AR", "F"}, |
| {"America/Argentina/ComodRivadavia", "AR", "F"}, |
| {"America/Argentina/La_Rioja", "AR", "F"}, |
| {"America/Catamarca", "AR", "F"}, |
| {"America/Jujuy", "AR", "F"}, |
| {"America/Argentina/Tucuman", "AR", "F"}, |
| {"America/Cordoba", "AR", "F"}, |
| {"America/Buenos_Aires", "AR", "F"}, |
| {"Pacific/Pago_Pago", "AS", "T"}, |
| {"Europe/Vienna", "AT", "T"}, |
| {"Australia/Perth", "AU", "F"}, |
| {"Australia/Darwin", "AU", "F"}, |
| {"Australia/Adelaide", "AU", "F"}, |
| {"Australia/Broken_Hill", "AU", "F"}, |
| {"Australia/Melbourne", "AU", "F"}, |
| {"Australia/Hobart", "AU", "F"}, |
| {"Australia/Lindeman", "AU", "F"}, |
| {"Australia/Sydney", "AU", "F"}, |
| {"Australia/Brisbane", "AU", "F"}, |
| {"Australia/Lord_Howe", "AU", "F"}, |
| {"America/Aruba", "AW", "T"}, |
| {"Europe/Mariehamn", "AX", "T"}, |
| {"Asia/Baku", "AZ", "T"}, |
| {"Europe/Sarajevo", "BA", "T"}, |
| {"America/Barbados", "BB", "T"}, |
| {"Asia/Dhaka", "BD", "T"}, |
| {"Europe/Brussels", "BE", "T"}, |
| {"Africa/Ouagadougou", "BF", "T"}, |
| {"Europe/Sofia", "BG", "T"}, |
| {"Asia/Bahrain", "BH", "T"}, |
| {"Africa/Bujumbura", "BI", "T"}, |
| {"Africa/Porto-Novo", "BJ", "T"}, |
| {"Atlantic/Bermuda", "BM", "T"}, |
| {"Asia/Brunei", "BN", "T"}, |
| {"America/La_Paz", "BO", "T"}, |
| {"America/Eirunepe", "BR", "F"}, |
| {"America/Rio_Branco", "BR", "F"}, |
| {"America/Porto_Velho", "BR", "F"}, |
| {"America/Boa_Vista", "BR", "F"}, |
| {"America/Manaus", "BR", "F"}, |
| {"America/Cuiaba", "BR", "F"}, |
| {"America/Campo_Grande", "BR", "F"}, |
| {"America/Belem", "BR", "F"}, |
| {"America/Araguaina", "BR", "F"}, |
| {"America/Sao_Paulo", "BR", "F"}, |
| {"America/Bahia", "BR", "F"}, |
| {"America/Fortaleza", "BR", "F"}, |
| {"America/Maceio", "BR", "F"}, |
| {"America/Recife", "BR", "F"}, |
| {"America/Noronha", "BR", "F"}, |
| {"America/Nassau", "BS", "T"}, |
| {"Asia/Thimphu", "BT", "T"}, |
| {"Africa/Gaborone", "BW", "T"}, |
| {"Europe/Minsk", "BY", "T"}, |
| {"America/Belize", "BZ", "T"}, |
| {"America/Dawson", "CA", "F"}, |
| {"America/Whitehorse", "CA", "F"}, |
| {"America/Vancouver", "CA", "F"}, |
| {"America/Dawson_Creek", "CA", "F"}, |
| {"America/Yellowknife", "CA", "F"}, |
| {"America/Inuvik", "CA", "F"}, |
| {"America/Edmonton", "CA", "F"}, |
| {"America/Swift_Current", "CA", "F"}, |
| {"America/Cambridge_Bay", "CA", "F"}, |
| {"America/Regina", "CA", "F"}, |
| {"America/Winnipeg", "CA", "F"}, |
| {"America/Rainy_River", "CA", "F"}, |
| {"America/Rankin_Inlet", "CA", "F"}, |
| {"America/Thunder_Bay", "CA", "F"}, |
| {"America/Nipigon", "CA", "F"}, |
| {"America/Toronto", "CA", "F"}, |
| {"America/Montreal", "CA", "F"}, |
| {"America/Iqaluit", "CA", "F"}, |
| {"America/Pangnirtung", "CA", "F"}, |
| {"America/Halifax", "CA", "F"}, |
| {"America/Goose_Bay", "CA", "F"}, |
| {"America/Glace_Bay", "CA", "F"}, |
| {"America/St_Johns", "CA", "F"}, |
| {"Indian/Cocos", "CC", "T"}, |
| {"Africa/Kinshasa", "CD", "F"}, |
| {"Africa/Lubumbashi", "CD", "F"}, |
| {"Africa/Bangui", "CF", "T"}, |
| {"Africa/Brazzaville", "CG", "T"}, |
| {"Europe/Zurich", "CH", "T"}, |
| {"Africa/Abidjan", "CI", "T"}, |
| {"Pacific/Rarotonga", "CK", "T"}, |
| {"Pacific/Easter", "CL", "F"}, |
| {"America/Santiago", "CL", "T"}, |
| {"Africa/Douala", "CM", "T"}, |
| {"Asia/Kashgar", "CN", "F"}, |
| {"Asia/Urumqi", "CN", "F"}, |
| {"Asia/Chongqing", "CN", "F"}, |
| {"Asia/Shanghai", "CN", "T"}, |
| {"Asia/Harbin", "CN", "F"}, |
| {"America/Bogota", "CO", "T"}, |
| {"America/Costa_Rica", "CR", "T"}, |
| {"Europe/Belgrade", "CS", "T"}, |
| {"America/Havana", "CU", "T"}, |
| {"Atlantic/Cape_Verde", "CV", "T"}, |
| {"Indian/Christmas", "CX", "T"}, |
| {"Asia/Nicosia", "CY", "T"}, |
| {"Europe/Prague", "CZ", "T"}, |
| {"Europe/Berlin", "DE", "T"}, |
| {"Africa/Djibouti", "DJ", "T"}, |
| {"Europe/Copenhagen", "DK", "T"}, |
| {"America/Dominica", "DM", "T"}, |
| {"America/Santo_Domingo", "DO", "T"}, |
| {"Africa/Algiers", "DZ", "T"}, |
| {"Pacific/Galapagos", "EC", "F"}, |
| {"America/Guayaquil", "EC", "T"}, |
| {"Europe/Tallinn", "EE", "T"}, |
| {"Africa/Cairo", "EG", "T"}, |
| {"Africa/El_Aaiun", "EH", "T"}, |
| {"Africa/Asmera", "ER", "T"}, |
| {"Atlantic/Canary", "ES", "F"}, |
| {"Africa/Ceuta", "ES", "F"}, |
| {"Europe/Madrid", "ES", "T"}, |
| {"Africa/Addis_Ababa", "ET", "T"}, |
| {"Europe/Helsinki", "FI", "T"}, |
| {"Pacific/Fiji", "FJ", "T"}, |
| {"Atlantic/Stanley", "FK", "T"}, |
| {"Pacific/Yap", "FM", "F"}, |
| {"Pacific/Truk", "FM", "F"}, |
| {"Pacific/Ponape", "FM", "F"}, |
| {"Pacific/Kosrae", "FM", "F"}, |
| {"Atlantic/Faeroe", "FO", "T"}, |
| {"Europe/Paris", "FR", "T"}, |
| {"Africa/Libreville", "GA", "T"}, |
| {"Europe/Belfast", "GB", "F"}, |
| {"Europe/London", "GB", "T"}, |
| {"America/Grenada", "GD", "T"}, |
| {"Asia/Tbilisi", "GE", "T"}, |
| {"America/Cayenne", "GF", "T"}, |
| {"Africa/Accra", "GH", "T"}, |
| {"Europe/Gibraltar", "GI", "T"}, |
| {"America/Thule", "GL", "F"}, |
| {"America/Godthab", "GL", "T"}, |
| {"America/Scoresbysund", "GL", "F"}, |
| {"America/Danmarkshavn", "GL", "F"}, |
| {"Africa/Banjul", "GM", "T"}, |
| {"Africa/Conakry", "GN", "T"}, |
| {"America/Guadeloupe", "GP", "T"}, |
| {"Africa/Malabo", "GQ", "T"}, |
| {"Europe/Athens", "GR", "T"}, |
| {"Atlantic/South_Georgia", "GS", "T"}, |
| {"America/Guatemala", "GT", "T"}, |
| {"Pacific/Guam", "GU", "T"}, |
| {"Africa/Bissau", "GW", "T"}, |
| {"America/Guyana", "GY", "T"}, |
| {"Asia/Hong_Kong", "HK", "T"}, |
| {"America/Tegucigalpa", "HN", "T"}, |
| {"Europe/Zagreb", "HR", "T"}, |
| {"America/Port-au-Prince", "HT", "T"}, |
| {"Europe/Budapest", "HU", "T"}, |
| {"Asia/Jakarta", "ID", "F"}, |
| {"Asia/Pontianak", "ID", "F"}, |
| {"Asia/Makassar", "ID", "F"}, |
| {"Asia/Jayapura", "ID", "F"}, |
| {"Europe/Dublin", "IE", "T"}, |
| {"Asia/Jerusalem", "IL", "T"}, |
| {"Asia/Calcutta", "IN", "T"}, |
| {"Indian/Chagos", "IO", "T"}, |
| {"Asia/Baghdad", "IQ", "T"}, |
| {"Asia/Tehran", "IR", "T"}, |
| {"Atlantic/Reykjavik", "IS", "T"}, |
| {"Europe/Rome", "IT", "T"}, |
| {"America/Jamaica", "JM", "T"}, |
| {"Asia/Amman", "JO", "T"}, |
| {"Asia/Tokyo", "JP", "T"}, |
| {"Africa/Nairobi", "KE", "T"}, |
| {"Asia/Bishkek", "KG", "T"}, |
| {"Asia/Phnom_Penh", "KH", "T"}, |
| {"Pacific/Enderbury", "KI", "F"}, |
| {"Pacific/Kiritimati", "KI", "F"}, |
| {"Pacific/Tarawa", "KI", "F"}, |
| {"Indian/Comoro", "KM", "T"}, |
| {"America/St_Kitts", "KN", "T"}, |
| {"Asia/Pyongyang", "KP", "T"}, |
| {"Asia/Seoul", "KR", "T"}, |
| {"Asia/Kuwait", "KW", "T"}, |
| {"America/Cayman", "KY", "T"}, |
| {"Asia/Aqtau", "KZ", "F"}, |
| {"Asia/Oral", "KZ", "F"}, |
| {"Asia/Aqtobe", "KZ", "F"}, |
| {"Asia/Qyzylorda", "KZ", "F"}, |
| {"Asia/Almaty", "KZ", "F"}, |
| {"Asia/Vientiane", "LA", "T"}, |
| {"Asia/Beirut", "LB", "T"}, |
| {"America/St_Lucia", "LC", "T"}, |
| {"Europe/Vaduz", "LI", "T"}, |
| {"Asia/Colombo", "LK", "T"}, |
| {"Africa/Monrovia", "LR", "T"}, |
| {"Africa/Maseru", "LS", "T"}, |
| {"Europe/Vilnius", "LT", "T"}, |
| {"Europe/Luxembourg", "LU", "T"}, |
| {"Europe/Riga", "LV", "T"}, |
| {"Africa/Tripoli", "LY", "T"}, |
| {"Africa/Casablanca", "MA", "T"}, |
| {"Europe/Monaco", "MC", "T"}, |
| {"Europe/Chisinau", "MD", "T"}, |
| {"Indian/Antananarivo", "MG", "T"}, |
| {"Pacific/Kwajalein", "MH", "F"}, |
| {"Pacific/Majuro", "MH", "F"}, |
| {"Europe/Skopje", "MK", "T"}, |
| {"Africa/Bamako", "ML", "T"}, |
| {"Africa/Timbuktu", "ML", "F"}, |
| {"Asia/Rangoon", "MM", "T"}, |
| {"Asia/Hovd", "MN", "F"}, |
| {"Asia/Ulaanbaatar", "MN", "F"}, |
| {"Asia/Choibalsan", "MN", "F"}, |
| {"Asia/Macau", "MO", "T"}, |
| {"Pacific/Saipan", "MP", "T"}, |
| {"America/Martinique", "MQ", "T"}, |
| {"Africa/Nouakchott", "MR", "T"}, |
| {"America/Montserrat", "MS", "T"}, |
| {"Europe/Malta", "MT", "T"}, |
| {"Indian/Mauritius", "MU", "T"}, |
| {"Indian/Maldives", "MV", "T"}, |
| {"Africa/Blantyre", "MW", "T"}, |
| {"America/Tijuana", "MX", "F"}, |
| {"America/Hermosillo", "MX", "F"}, |
| {"America/Mazatlan", "MX", "F"}, |
| {"America/Chihuahua", "MX", "F"}, |
| {"America/Monterrey", "MX", "F"}, |
| {"America/Mexico_City", "MX", "F"}, |
| {"America/Merida", "MX", "F"}, |
| {"America/Cancun", "MX", "F"}, |
| {"Asia/Kuala_Lumpur", "MY", "T"}, |
| {"Asia/Kuching", "MY", "F"}, |
| {"Africa/Maputo", "MZ", "T"}, |
| {"Africa/Windhoek", "NA", "T"}, |
| {"Pacific/Noumea", "NC", "T"}, |
| {"Africa/Niamey", "NE", "T"}, |
| {"Pacific/Norfolk", "NF", "T"}, |
| {"Africa/Lagos", "NG", "T"}, |
| {"America/Managua", "NI", "T"}, |
| {"Europe/Amsterdam", "NL", "T"}, |
| {"Europe/Oslo", "NO", "T"}, |
| {"Asia/Katmandu", "NP", "T"}, |
| {"Pacific/Nauru", "NR", "T"}, |
| {"Pacific/Niue", "NU", "T"}, |
| {"Pacific/Chatham", "NZ", "F"}, |
| {"Pacific/Auckland", "NZ", "T"}, |
| {"Asia/Muscat", "OM", "T"}, |
| {"America/Panama", "PA", "T"}, |
| {"America/Lima", "PE", "T"}, |
| {"Pacific/Tahiti", "PF", "T"}, |
| {"Pacific/Marquesas", "PF", "F"}, |
| {"Pacific/Gambier", "PF", "F"}, |
| {"Pacific/Port_Moresby", "PG", "T"}, |
| {"Asia/Manila", "PH", "T"}, |
| {"Asia/Karachi", "PK", "T"}, |
| {"Europe/Warsaw", "PL", "T"}, |
| {"America/Miquelon", "PM", "T"}, |
| {"Pacific/Pitcairn", "PN", "T"}, |
| {"America/Puerto_Rico", "PR", "T"}, |
| {"Asia/Gaza", "PS", "T"}, |
| {"Atlantic/Azores", "PT", "F"}, |
| {"Atlantic/Madeira", "PT", "F"}, |
| {"Europe/Lisbon", "PT", "T"}, |
| {"Pacific/Palau", "PW", "T"}, |
| {"America/Asuncion", "PY", "T"}, |
| {"Asia/Qatar", "QA", "T"}, |
| {"Indian/Reunion", "RE", "T"}, |
| {"Europe/Bucharest", "RO", "T"}, |
| {"Europe/Kaliningrad", "RU", "F"}, |
| {"Europe/Moscow", "RU", "F"}, |
| {"Europe/Samara", "RU", "F"}, |
| {"Asia/Yekaterinburg", "RU", "F"}, |
| {"Asia/Omsk", "RU", "F"}, |
| {"Asia/Novosibirsk", "RU", "F"}, |
| {"Asia/Krasnoyarsk", "RU", "F"}, |
| {"Asia/Irkutsk", "RU", "F"}, |
| {"Asia/Yakutsk", "RU", "F"}, |
| {"Asia/Vladivostok", "RU", "F"}, |
| {"Asia/Sakhalin", "RU", "F"}, |
| {"Asia/Magadan", "RU", "F"}, |
| {"Asia/Kamchatka", "RU", "F"}, |
| {"Asia/Anadyr", "RU", "F"}, |
| {"Africa/Kigali", "RW", "T"}, |
| {"Asia/Riyadh", "SA", "T"}, |
| {"Pacific/Guadalcanal", "SB", "T"}, |
| {"Indian/Mahe", "SC", "T"}, |
| {"Africa/Khartoum", "SD", "T"}, |
| {"Europe/Stockholm", "SE", "T"}, |
| {"Asia/Singapore", "SG", "T"}, |
| {"Atlantic/St_Helena", "SH", "T"}, |
| {"Europe/Ljubljana", "SI", "T"}, |
| {"Atlantic/Jan_Mayen", "SJ", "F"}, |
| {"Arctic/Longyearbyen", "SJ", "F"}, |
| {"Europe/Bratislava", "SK", "T"}, |
| {"Africa/Freetown", "SL", "T"}, |
| {"Europe/San_Marino", "SM", "T"}, |
| {"Africa/Dakar", "SN", "T"}, |
| {"Africa/Mogadishu", "SO", "T"}, |
| {"America/Paramaribo", "SR", "T"}, |
| {"Africa/Sao_Tome", "ST", "T"}, |
| {"America/El_Salvador", "SV", "T"}, |
| {"Asia/Damascus", "SY", "T"}, |
| {"Africa/Mbabane", "SZ", "T"}, |
| {"America/Grand_Turk", "TC", "T"}, |
| {"Africa/Ndjamena", "TD", "T"}, |
| {"Indian/Kerguelen", "TF", "T"}, |
| {"Africa/Lome", "TG", "T"}, |
| {"Asia/Bangkok", "TH", "T"}, |
| {"Asia/Dushanbe", "TJ", "T"}, |
| {"Pacific/Fakaofo", "TK", "T"}, |
| {"Asia/Dili", "TL", "T"}, |
| {"Asia/Ashgabat", "TM", "T"}, |
| {"Africa/Tunis", "TN", "T"}, |
| {"Pacific/Tongatapu", "TO", "T"}, |
| {"Europe/Istanbul", "TR", "T"}, |
| {"America/Port_of_Spain", "TT", "T"}, |
| {"Pacific/Funafuti", "TV", "T"}, |
| {"Asia/Taipei", "TW", "T"}, |
| {"Africa/Dar_es_Salaam", "TZ", "T"}, |
| {"Europe/Uzhgorod", "UA", "F"}, |
| {"Europe/Kiev", "UA", "F"}, |
| {"Europe/Simferopol", "UA", "F"}, |
| {"Europe/Zaporozhye", "UA", "F"}, |
| {"Africa/Kampala", "UG", "T"}, |
| {"Pacific/Midway", "UM", "F"}, |
| {"Pacific/Johnston", "UM", "F"}, |
| {"Pacific/Wake", "UM", "F"}, |
| {"America/Adak", "US", "F"}, |
| {"America/Nome", "US", "F"}, |
| {"Pacific/Honolulu", "US", "F"}, |
| {"America/Anchorage", "US", "F"}, |
| {"America/Yakutat", "US", "F"}, |
| {"America/Juneau", "US", "F"}, |
| {"America/Los_Angeles", "US", "F"}, |
| {"America/Boise", "US", "F"}, |
| {"America/Phoenix", "US", "F"}, |
| {"America/Shiprock", "US", "F"}, |
| {"America/Denver", "US", "F"}, |
| {"America/North_Dakota/Center", "US", "F"}, |
| {"America/Chicago", "US", "F"}, |
| {"America/Menominee", "US", "F"}, |
| {"America/Indiana/Knox", "US", "F"}, |
| {"America/Indiana/Marengo", "US", "F"}, |
| {"America/Indianapolis", "US", "F"}, |
| {"America/Louisville", "US", "F"}, |
| {"America/Indiana/Vevay", "US", "F"}, |
| {"America/Kentucky/Monticello", "US", "F"}, |
| {"America/Detroit", "US", "F"}, |
| {"America/New_York", "US", "F"}, |
| {"America/Montevideo", "UY", "T"}, |
| {"Asia/Samarkand", "UZ", "F"}, |
| {"Asia/Tashkent", "UZ", "T"}, |
| {"Europe/Vatican", "VA", "T"}, |
| {"America/St_Vincent", "VC", "T"}, |
| {"America/Caracas", "VE", "T"}, |
| {"America/Tortola", "VG", "T"}, |
| {"America/St_Thomas", "VI", "T"}, |
| {"Asia/Saigon", "VN", "T"}, |
| {"Pacific/Efate", "VU", "T"}, |
| {"Pacific/Wallis", "WF", "T"}, |
| {"Pacific/Apia", "WS", "T"}, |
| {"Asia/Aden", "YE", "T"}, |
| {"Indian/Mayotte", "YT", "T"}, |
| {"Africa/Johannesburg", "ZA", "T"}, |
| {"Africa/Lusaka", "ZM", "T"}, |
| {"Africa/Harare", "ZW", "T"}, |
| |
| // Riyadh hack |
| {"Asia/Riyadh87", "SA", "T"}, |
| {"Asia/Riyadh88", "SA", "T"}, |
| {"Asia/Riyadh89", "SA", "T"}, |
| }; |
| |
| public static void main(String[] args) { |
| // validate, and generate single combined table |
| |
| // start with country info |
| Map m = new TreeMap(); |
| for (int i = 0; i < COUNTRY_INFO.length; ++i) { |
| String[] info = COUNTRY_INFO[i]; |
| String canonical = info[0]; |
| if (m.keySet().contains(canonical)) { |
| System.err.println("duplicate country: " + canonical); |
| } else { |
| ArrayList al = new ArrayList(); |
| for (int j = 0; j < info.length; ++j) { |
| al.add(info[j]); |
| } |
| m.put(canonical, al); |
| } |
| } |
| |
| // verify that everything in the canonical list is there |
| if (CANONICAL_LIST.length != COUNTRY_INFO.length) { |
| System.err.println("Canonical and Country info lists differ in length."); |
| } |
| |
| for (int i = 0; i < CANONICAL_LIST.length; ++i) { |
| String canonical = CANONICAL_LIST[i]; |
| if (!m.keySet().contains(canonical)) { |
| System.err.println("missing canonical item: " + canonical); |
| } |
| } |
| |
| // verify that canonical targets of remappings are all in the map, and add them. |
| HashSet aliases = new HashSet(); |
| for (int i = 0; i < CANONICAL_REMAP.length; ++i) { |
| String[] equiv = CANONICAL_REMAP[i]; |
| String alias = equiv[0]; |
| String canonical = equiv[1]; |
| |
| ArrayList al = (ArrayList)m.get(canonical); |
| if (al == null) { |
| System.err.println("remap to item not in canonical list: " + canonical); |
| } else { |
| if (m.keySet().contains(alias)) { |
| System.err.println("alias is actually canonical: " + alias); |
| } else if (aliases.contains(alias)) { |
| System.err.println("alias is listed twice: " + alias); |
| } else { |
| aliases.add(alias); |
| al.add(alias); |
| } |
| } |
| } |
| |
| // look for ids that in EQUIV that are neither canonical nor aliases, and |
| // warn about them |
| ArrayList canonicals = new ArrayList(); |
| ArrayList unlisted = new ArrayList(); |
| for (int i = 0; i < ZoneMetaData.EQUIV.length; ++i) { |
| canonicals.clear(); |
| unlisted.clear(); |
| |
| String[] record = ZoneMetaData.EQUIV[i]; |
| for (int j = 0; j < record.length; ++j) { |
| String s = record[j]; |
| if (m.keySet().contains(s)) { |
| canonicals.add(s); |
| } else if (!aliases.contains(s)) { |
| // not listed as an alias |
| unlisted.add(s); |
| } |
| } |
| boolean report = false; |
| if (unlisted.size() > 0) { // have some unknown aliases |
| report = true; |
| if (canonicals.size() == 0) { |
| System.err.println("no canonicals for unknown alises"); |
| } else if (canonicals.size() == 1) { |
| report = false; |
| // quietly fix |
| // System.err.println("suggest canonical for unknown aliases: " + canonicals.get(0)); |
| |
| // add another alias mapping for the canonical |
| ArrayList al = (ArrayList)m.get(canonicals.get(0)); |
| for (int k = 0; k < unlisted.size(); ++k) { |
| al.add(unlisted.get(k)); |
| } |
| } else { |
| System.err.print("multiple canonicals for unknown aliases: "); |
| for (int k = 0; k < canonicals.size(); ++k) { |
| if (k != 0) { |
| System.err.print(", "); |
| } |
| System.err.print(canonicals.get(k)); |
| } |
| System.err.println(); |
| } |
| |
| if (report) { |
| System.err.print(" " + unlisted.get(0)); |
| for (int k = 1; k < unlisted.size(); ++k) { |
| System.err.print(", " + unlisted.get(k)); |
| } |
| System.err.println(); |
| } |
| } |
| } |
| |
| System.out.println(HEADER); |
| |
| // generate combined table |
| // map territory == 001 to null |
| // map isSingle == F to null |
| System.out.println(" private static final String[][] CLDR_INFO = {"); |
| Iterator i = m.entrySet().iterator(); |
| while (i.hasNext()) { |
| ArrayList records = (ArrayList)(((Map.Entry)i.next()).getValue()); |
| System.out.print(" { \""); |
| System.out.print(records.get(0)); |
| System.out.print("\""); |
| for (int j = 1; j < records.size(); ++j) { |
| System.out.print(", "); |
| String record = (String)records.get(j); |
| if ((j == 1 && record.equals("001")) |
| || j == 2 && record.equals("F")) { |
| record = null; |
| } else { |
| record = '"' + record + '"'; |
| } |
| System.out.print(record); |
| } |
| System.out.println(" },"); |
| } |
| System.out.println(" };"); |
| |
| System.out.println(FOOTER); |
| |
| // done |
| System.out.flush(); |
| } |
| |
| private static final String HEADER = |
| "//---------------------------------------------------------\n" + |
| "// Copyright (C) 2005, International Business Machines\n" + |
| "// Corporation and others. All Rights Reserved.\n" + |
| "//---------------------------------------------------------\n" + |
| "\n" + |
| "// >>> This data was generated by ZoneMetaCLDR\n" + |
| "// >>> as a temporary measure for the 3.4 release.\n" + |
| "\n" + |
| "package com.ibm.icu.impl;\n" + |
| "\n" + |
| "public final class ZoneInfoExt {\n" + |
| "\n" + |
| " // table is sorted by canonical time zone id\n" + |
| " // aliases are not sorted\n" + |
| "\n" + |
| " // [0] canonical time zone id\n" + |
| " // [1] country code, or null if no country\n" + |
| " // [2] \"T\" if isSingle, null if not\n" + |
| " // [n...] aliases for canonical time zone id\n"; |
| |
| private static final String FOOTER = |
| "}"; |
| } |