private void initialize ( ULocale locale ) { ICUResourceBundle bundle = ( ICUResourceBundle ) ICUResourceBundle . getBundleInstance ( ICUData . ICU_ZONE_BASE_NAME , locale ) ; _zoneStrings = ( ICUResourceBundle ) bundle . get ( ZONE_STRINGS_BUNDLE ) ; // TODO: Access is synchronized, can we use a non-concurrent map? _tzNamesMap = new ConcurrentHashMap < String , ZNames > ( ) ; _mzNamesMap = new ConcurrentHashMap < String , ZNames > ( ) ; _namesFullyLoaded = false ; _namesTrie = new TextTrieMap < NameInfo > ( true ) ; _namesTrieFullyLoaded = false ; // Preload zone strings for the default time zone TimeZone tz = TimeZone . getDefault ( ) ; String tzCanonicalID = ZoneMeta . getCanonicalCLDRID ( tz ) ; if ( tzCanonicalID != null ) { loadStrings ( tzCanonicalID ) ; } }
Initialize the transient fields called from the constructor and readObject .