public class OpenExchangeRatesOrgProvider extends Object implements ExchangeRateProvider
 Exchange Rates Provider for CurrencyField and CurrencyFieldType capable of fetching & 
 parsing the freely available exchange rates from openexchangerates.org
 
Configuration Options:
ratesFileLocation - A file path or absolute URL specifying the JSON data to load (mandatory)refreshInterval - How frequently (in minutes) to reload the exchange rate data (default: 1440)Disclaimer: This data is collected from various providers and provided free of charge for informational purposes only, with no guarantee whatsoever of accuracy, validity, availability or fitness for any purpose; use at your own risk. Other than that - have fun, and please share/watch/fork if you think data like this should be free!
| Modifier and Type | Field and Description | 
|---|---|
protected static String | 
DEFAULT_REFRESH_INTERVAL  | 
protected static String | 
PARAM_RATES_FILE_LOCATION  | 
protected static String | 
PARAM_REFRESH_INTERVAL  | 
protected org.apache.solr.schema.OpenExchangeRatesOrgProvider.OpenExchangeRates | 
rates  | 
protected String | 
ratesFileLocation  | 
protected int | 
refreshIntervalSeconds  | 
protected ResourceLoader | 
resourceLoader  | 
| Constructor and Description | 
|---|
OpenExchangeRatesOrgProvider()  | 
| Modifier and Type | Method and Description | 
|---|---|
boolean | 
equals(Object o)  | 
double | 
getExchangeRate(String sourceCurrencyCode,
               String targetCurrencyCode)
Returns the currently known exchange rate between two currencies. 
 | 
int | 
hashCode()  | 
void | 
inform(ResourceLoader loader)
Passes a ResourceLoader, used to read config files from e.g. 
 | 
void | 
init(Map<String,String> params)
Initializes the provider by passing in a set of key/value configs as a map. 
 | 
Set<String> | 
listAvailableCurrencies()
List all configured currency codes which are valid as source/target for this Provider 
 | 
boolean | 
reload()
Ask the currency provider to explicitly reload/refresh its configuration. 
 | 
String | 
toString()  | 
protected static final String PARAM_RATES_FILE_LOCATION
protected static final String PARAM_REFRESH_INTERVAL
protected static final String DEFAULT_REFRESH_INTERVAL
protected String ratesFileLocation
protected int refreshIntervalSeconds
protected ResourceLoader resourceLoader
protected org.apache.solr.schema.OpenExchangeRatesOrgProvider.OpenExchangeRates rates
public double getExchangeRate(String sourceCurrencyCode, String targetCurrencyCode)
getExchangeRate in interface ExchangeRateProvidersourceCurrencyCode - The source currency being converted from.targetCurrencyCode - The target currency being converted to.SolrException - if the requested currency pair cannot be foundpublic Set<String> listAvailableCurrencies()
ExchangeRateProviderlistAvailableCurrencies in interface ExchangeRateProviderpublic boolean reload()
               throws SolrException
ExchangeRateProviderreload in interface ExchangeRateProviderSolrException - if there is a problem reloadingpublic void init(Map<String,String> params) throws SolrException
ExchangeRateProviderImportant: Custom config params must be removed from the map before returning
init in interface ExchangeRateProviderparams - a @Map of key/value config params to initialize the providerSolrExceptionpublic void inform(ResourceLoader loader) throws SolrException
ExchangeRateProviderTypically called after init
inform in interface ExchangeRateProviderloader - a @ResourceLoader instanceSolrExceptionCopyright © 2000-2021 Apache Software Foundation. All Rights Reserved.