public class ECBHistoricRateProvider extends AbstractRateProvider implements LoaderService.LoaderListener
ExchangeRateProvider
that loads data from
the European Central Bank data feed (XML). It loads the current exchange
rates, as well as historic rates for the past 90 days. The provider loads all data up to 1999 into its
historic data cache.Modifier and Type | Field and Description |
---|---|
static javax.money.CurrencyUnit |
BASE_CURRENCY
Base currency of the loaded rates is always EUR.
|
LOGGER
Constructor and Description |
---|
ECBHistoricRateProvider()
Constructor, also loads initial data.
|
Modifier and Type | Method and Description |
---|---|
protected javax.money.convert.ExchangeRate |
getExchangeRateInternal(javax.money.CurrencyUnit base,
javax.money.CurrencyUnit term,
javax.money.convert.ConversionContext context) |
javax.money.convert.ProviderContext |
getProviderContext()
Access the
ConversionContext for this
ExchangeRateProvider . |
void |
newDataLoaded(java.lang.String data,
java.io.InputStream is)
Callback called from the
LoaderService , when new data was
read for a given data item. |
divide, divide, getCurrencyConversion, getCurrencyConversion, getCurrencyConversion, getCurrencyConversion, getExchangeRate, getExchangeRate, getExchangeRate, getExchangeRate, getReversed, isAvailable, isAvailable, isAvailable, isAvailable, multiply
public static final javax.money.CurrencyUnit BASE_CURRENCY
public ECBHistoricRateProvider() throws java.net.MalformedURLException
java.net.MalformedURLException
protected javax.money.convert.ExchangeRate getExchangeRateInternal(javax.money.CurrencyUnit base, javax.money.CurrencyUnit term, javax.money.convert.ConversionContext context)
getExchangeRateInternal
in class AbstractRateProvider
public javax.money.convert.ProviderContext getProviderContext()
javax.money.convert.ExchangeRateProvider
ConversionContext
for this
ExchangeRateProvider
. Each instance of
ExchangeRateProvider
provides conversion data for exact one
ConversionContext
.getProviderContext
in interface javax.money.convert.ExchangeRateProvider
getProviderContext
in class AbstractRateProvider
null
.public void newDataLoaded(java.lang.String data, java.io.InputStream is)
LoaderService.LoaderListener
LoaderService
, when new data was
read for a given data item.newDataLoaded
in interface LoaderService.LoaderListener
data
- the resource idis
- the input stream for accessing the data