equal
deleted
inserted
replaced
24 */ |
24 */ |
25 |
25 |
26 package sun.util.locale.provider; |
26 package sun.util.locale.provider; |
27 |
27 |
28 import java.util.Locale; |
28 import java.util.Locale; |
29 import java.util.MissingResourceException; |
29 import java.util.ResourceBundle; |
30 import java.util.Set; |
30 import java.util.Set; |
31 import java.util.spi.CurrencyNameProvider; |
31 import java.util.spi.CurrencyNameProvider; |
32 import sun.util.resources.OpenListResourceBundle; |
|
33 |
32 |
34 /** |
33 /** |
35 * Concrete implementation of the |
34 * Concrete implementation of the |
36 * {@link java.util.spi.CurrencyNameProvider CurrencyNameProvider} class |
35 * {@link java.util.spi.CurrencyNameProvider CurrencyNameProvider} class |
37 * for the JRE LocaleProviderAdapter. |
36 * for the JRE LocaleProviderAdapter. |
119 private String getString(String key, Locale locale) { |
118 private String getString(String key, Locale locale) { |
120 if (locale == null) { |
119 if (locale == null) { |
121 throw new NullPointerException(); |
120 throw new NullPointerException(); |
122 } |
121 } |
123 |
122 |
124 OpenListResourceBundle bundle = LocaleProviderAdapter.forType(type).getLocaleData().getCurrencyNames(locale); |
123 ResourceBundle bundle = LocaleProviderAdapter.forType(type).getLocaleData().getCurrencyNames(locale); |
125 LocaleServiceProviderPool pool = |
124 if (bundle.containsKey(key)) { |
126 LocaleServiceProviderPool.getPool(CurrencyNameProvider.class); |
|
127 try { |
|
128 if (!pool.hasProviders() || |
|
129 (bundle.getLocale().equals(locale) && |
|
130 bundle.handleGetKeys().contains(key))) { |
|
131 return bundle.getString(key); |
125 return bundle.getString(key); |
132 } |
126 } |
133 } catch (MissingResourceException mre) {} |
|
134 |
127 |
135 return null; |
128 return null; |
136 } |
129 } |
137 } |
130 } |