Naoto Sato wrote:
Stephen Colebourne wrote:
Unfortunately, not all currencies are associated with countries. Some,
like XAG for 'silver', XDR for 'IMF drawing rights' or XXX for 'no
currency' have no matching country. Thus, this file format is unable
to represent user overrides to those countries.

You meant "those currencies" here, right? If that's the case, yes it is true. We might need these currencies be updated in this properties file by enhancing the file format, however, the frequency for those currencies being updated is much less than the ones associated with particular countries.

Yes, thats what I meant. For the new Joda-Money I used this file format:
EUR,978,2,IEFRESPTFIBENLLUDEATITMTSKSIGRCYADMCMESMVA
FJD,242,2,FJ
FKP,238,2,FK
GBP,826,2,GBIMJEGGGSIO
XAG,961,-1,

The last column are the two letter country codes that the currency is applicable for (blank means pseduo curency).

Right now, there is no mechanism to update the ISO-3166 country codes in the JRE. So even though the format itself is capable of accepting any (new or old) country codes, it does not work for new ISO-3166 country codes.

Thats unfortunate.

I believe that we should also consider if Currency should implement
Comparable, sorting alphabetically on the currency code. While there
are many possible sort orders, having this as the default one makes a
lot of sense.

Having the class Comparable makes sense to me. Although the default may be arguable (ISO-3166 code has numeric values independent of the three letter codes).

Finally, I'd like to see a method isPsuedoCurrency() added. This would
return a boolean indicating if the currency is 'real' or not.

This one is also nice to have.

I also reckon that a method to get the country codes that the currency is valid for would be useful:

Set<String> getApplicableCountryCodes()

Stephen

Reply via email to