Skip to content
This repository was archived by the owner on Jan 18, 2022. It is now read-only.

Commit ebda791

Browse files
committed
IMF currency name comparison done in lowercase now. Realigned changed IMF currency names.
1 parent 8dbd134 commit ebda791

File tree

6 files changed

+231
-243
lines changed

6 files changed

+231
-243
lines changed

src/main/java/org/javamoney/moneta/internal/convert/IMFRateProvider.java

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -93,27 +93,27 @@ public class IMFRateProvider extends AbstractRateProvider implements LoaderListe
9393

9494
static {
9595
for (Currency currency : Currency.getAvailableCurrencies()) {
96-
currenciesByName.put(currency.getDisplayName(Locale.ENGLISH),
96+
currenciesByName.put(currency.getDisplayName(Locale.ENGLISH).toLowerCase(Locale.ENGLISH),
9797
Monetary.getCurrency(currency.getCurrencyCode()));
9898
}
9999
// Additional IMF differing codes:
100100
// This mapping is required to fix data issues in the input stream, it has nothing to do with i18n
101-
currenciesByName.put("U.K. Pound Sterling", Monetary.getCurrency("GBP"));
102-
currenciesByName.put("U.S. Dollar", Monetary.getCurrency("USD"));
103-
currenciesByName.put("Bahrain Dinar", Monetary.getCurrency("BHD"));
104-
currenciesByName.put("Botswana Pula", Monetary.getCurrency("BWP"));
105-
currenciesByName.put("Czech Koruna", Monetary.getCurrency("CZK"));
106-
currenciesByName.put("Icelandic Krona", Monetary.getCurrency("ISK"));
107-
currenciesByName.put("Korean Won", Monetary.getCurrency("KRW"));
108-
currenciesByName.put("Rial Omani", Monetary.getCurrency("OMR"));
109-
currenciesByName.put("Nuevo Sol", Monetary.getCurrency("PEN"));
110-
currenciesByName.put("Qatar Riyal", Monetary.getCurrency("QAR"));
111-
currenciesByName.put("Saudi Arabian Riyal", Monetary.getCurrency("SAR"));
112-
currenciesByName.put("Sri Lanka Rupee", Monetary.getCurrency("LKR"));
113-
currenciesByName.put("Trinidad And Tobago Dollar", Monetary.getCurrency("TTD"));
114-
currenciesByName.put("U.A.E. Dirham", Monetary.getCurrency("AED"));
115-
currenciesByName.put("Peso Uruguayo", Monetary.getCurrency("UYU"));
116-
currenciesByName.put("Bolivar Fuerte", Monetary.getCurrency("VEF"));
101+
currenciesByName.put("U.K. pound".toLowerCase(Locale.ENGLISH), Monetary.getCurrency("GBP"));
102+
currenciesByName.put("U.S. dollar".toLowerCase(Locale.ENGLISH), Monetary.getCurrency("USD"));
103+
currenciesByName.put("Bahrain dinar".toLowerCase(Locale.ENGLISH), Monetary.getCurrency("BHD"));
104+
currenciesByName.put("Botswana pula".toLowerCase(Locale.ENGLISH), Monetary.getCurrency("BWP"));
105+
currenciesByName.put("Czech koruna".toLowerCase(Locale.ENGLISH), Monetary.getCurrency("CZK"));
106+
currenciesByName.put("Icelandic krona".toLowerCase(Locale.ENGLISH), Monetary.getCurrency("ISK"));
107+
currenciesByName.put("Korean won".toLowerCase(Locale.ENGLISH), Monetary.getCurrency("KRW"));
108+
currenciesByName.put("Omani rial".toLowerCase(Locale.ENGLISH), Monetary.getCurrency("OMR"));
109+
currenciesByName.put("Peruvian sol".toLowerCase(Locale.ENGLISH), Monetary.getCurrency("PEN"));
110+
currenciesByName.put("Qatari riyal".toLowerCase(Locale.ENGLISH), Monetary.getCurrency("QAR"));
111+
currenciesByName.put("Saudi Arabian riyal".toLowerCase(Locale.ENGLISH), Monetary.getCurrency("SAR"));
112+
currenciesByName.put("Sri Lankan rupee".toLowerCase(Locale.ENGLISH), Monetary.getCurrency("LKR"));
113+
currenciesByName.put("Trinidadian dollar".toLowerCase(Locale.ENGLISH), Monetary.getCurrency("TTD"));
114+
currenciesByName.put("U.A.E. dirham".toLowerCase(Locale.ENGLISH), Monetary.getCurrency("AED"));
115+
currenciesByName.put("Uruguayan peso".toLowerCase(Locale.ENGLISH), Monetary.getCurrency("UYU"));
116+
currenciesByName.put("Bolivar Fuerte".toLowerCase(Locale.ENGLISH), Monetary.getCurrency("VEF"));
117117
}
118118

119119
public IMFRateProvider() {
@@ -187,7 +187,7 @@ private void loadRatesTSV(InputStream inputStream) throws IOException, ParseExce
187187
continue;
188188
}
189189
String[] parts = line.split("\\t");
190-
CurrencyUnit currency = currenciesByName.get(parts[0]);
190+
CurrencyUnit currency = currenciesByName.get(parts[0].toLowerCase(Locale.ENGLISH));
191191
if (currency==null) {
192192
LOGGER.finest("Uninterpretable data from IMF data feed: " + parts[0]);
193193
line = pr.readLine();

src/main/resources/java-money/defaults/ECB/eurofxref-daily.xml

Lines changed: 32 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -5,38 +5,39 @@
55
<gesmes:name>European Central Bank</gesmes:name>
66
</gesmes:Sender>
77
<Cube>
8-
<Cube time='2016-01-08'>
9-
<Cube currency='USD' rate='1.0861'/>
10-
<Cube currency='JPY' rate='128.51'/>
8+
<Cube time='2018-05-31'>
9+
<Cube currency='USD' rate='1.1699'/>
10+
<Cube currency='JPY' rate='127.33'/>
1111
<Cube currency='BGN' rate='1.9558'/>
12-
<Cube currency='CZK' rate='27.022'/>
13-
<Cube currency='DKK' rate='7.4598'/>
14-
<Cube currency='GBP' rate='0.74519'/>
15-
<Cube currency='HUF' rate='315.53'/>
16-
<Cube currency='PLN' rate='4.3523'/>
17-
<Cube currency='RON' rate='4.5275'/>
18-
<Cube currency='SEK' rate='9.2640'/>
19-
<Cube currency='CHF' rate='1.0860'/>
20-
<Cube currency='NOK' rate='9.6810'/>
21-
<Cube currency='HRK' rate='7.6427'/>
22-
<Cube currency='RUB' rate='80.4134'/>
23-
<Cube currency='TRY' rate='3.2491'/>
24-
<Cube currency='AUD' rate='1.5495'/>
25-
<Cube currency='BRL' rate='4.3685'/>
26-
<Cube currency='CAD' rate='1.5321'/>
27-
<Cube currency='CNY' rate='7.1577'/>
28-
<Cube currency='HKD' rate='8.4312'/>
29-
<Cube currency='IDR' rate='15111.30'/>
30-
<Cube currency='ILS' rate='4.2597'/>
31-
<Cube currency='INR' rate='72.4206'/>
32-
<Cube currency='KRW' rate='1304.78'/>
33-
<Cube currency='MXN' rate='19.3231'/>
34-
<Cube currency='MYR' rate='4.7615'/>
35-
<Cube currency='NZD' rate='1.6450'/>
36-
<Cube currency='PHP' rate='51.204'/>
37-
<Cube currency='SGD' rate='1.5606'/>
38-
<Cube currency='THB' rate='39.387'/>
39-
<Cube currency='ZAR' rate='17.3870'/>
12+
<Cube currency='CZK' rate='25.797'/>
13+
<Cube currency='DKK' rate='7.4436'/>
14+
<Cube currency='GBP' rate='0.87680'/>
15+
<Cube currency='HUF' rate='318.89'/>
16+
<Cube currency='PLN' rate='4.3058'/>
17+
<Cube currency='RON' rate='4.6508'/>
18+
<Cube currency='SEK' rate='10.2683'/>
19+
<Cube currency='CHF' rate='1.1526'/>
20+
<Cube currency='ISK' rate='122.90'/>
21+
<Cube currency='NOK' rate='9.5375'/>
22+
<Cube currency='HRK' rate='7.3870'/>
23+
<Cube currency='RUB' rate='72.5759'/>
24+
<Cube currency='TRY' rate='5.2628'/>
25+
<Cube currency='AUD' rate='1.5414'/>
26+
<Cube currency='BRL' rate='4.3626'/>
27+
<Cube currency='CAD' rate='1.5038'/>
28+
<Cube currency='CNY' rate='7.4951'/>
29+
<Cube currency='HKD' rate='9.1818'/>
30+
<Cube currency='IDR' rate='16269.80'/>
31+
<Cube currency='ILS' rate='4.1810'/>
32+
<Cube currency='INR' rate='78.8020'/>
33+
<Cube currency='KRW' rate='1261.25'/>
34+
<Cube currency='MXN' rate='23.2461'/>
35+
<Cube currency='MYR' rate='4.6562'/>
36+
<Cube currency='NZD' rate='1.6681'/>
37+
<Cube currency='PHP' rate='61.507'/>
38+
<Cube currency='SGD' rate='1.5656'/>
39+
<Cube currency='THB' rate='37.472'/>
40+
<Cube currency='ZAR' rate='14.7031'/>
4041
</Cube>
4142
</Cube>
4243
</gesmes:Envelope>

0 commit comments

Comments
 (0)