/// <summary> /// Constructor /// </summary> /// <param name="config">Config</param> public FiatProviderBase(Config.FiatProviderConfig config) { Coin = config.FiatCoin; if (Coin != ECoin.EUR && Coin != ECoin.USD) { throw new ArgumentException(nameof(Coin)); } CacheFile = "marketCache.json"; if (File.Exists(CacheFile)) { // Load cache try { var data = JsonConvert.DeserializeObject <Dictionary <ECoin, Dictionary <ECoin, Dictionary <DateTime, decimal> > > >(File.ReadAllText(CacheFile)); if (data != null) { _cache = data; } #if DEBUG Debugger.Log(0, "MarketCache", "Loaded " + data.Values.Sum(u => u.Values.Sum(x => x.Count)) + " entries"); #endif } catch { } } if (_cache == null) { _cache = new Dictionary <ECoin, Dictionary <ECoin, Dictionary <DateTime, decimal> > >(); } }
/// <summary> /// Constructor /// </summary> /// <param name="config">Config</param> public CoinPaprikaPriceProvider(Config.FiatProviderConfig config) : base(config) { }
/// <summary> /// Constructor /// </summary> /// <param name="config">Config</param> public ManualPriceProvider(Config.FiatProviderConfig config) : base(config) { }
/// <summary> /// Constructor /// </summary> /// <param name="config">Config</param> public CoinLayerDotComPriceProvider(Config.FiatProviderConfig config) : base(config) { ApiKey = config.ApiKey; }