Example #1
0
        public async Task Execute(IJobExecutionContext context)
        {
            var provider = _exchangeProviderFactory.GetProvider(Constants.Providers.OERProvider);

            if (provider == null)
            {
                return;
            }

            foreach (var baseType in ExchangeExtensions.GetExchangeTypes())
            {
                try
                {
                    var exchangeInfo = provider.GetExchangeInfo(baseType);

                    await _mongoRepository.SaveExchangeInfo(exchangeInfo.ToStoreExchangeInfo(provider.ProviderName));

                    await _redisRepository.SetCacheExchangeInfo(exchangeInfo.ToCacheExchangeInfo(provider.ExpiredInMsec), provider.ExpiredInMsec);
                }
                catch (Exception ex)
                {
                    _logger.LogWarning(ex, ex.Message);
                }
            }
        }
Example #2
0
 public ExchangeInfo GetExchangeInfo(ExchangeType baseType)
 {
     return(new ExchangeInfo()
     {
         BaseType = baseType,
         Published = DateTime.Now,
         Rates = ExchangeExtensions.GetExchangeTypes()
                 .Select(et => new ExchangeRateInfo
         {
             Type = et,
             Rate = new Random().Next(1, 100)
         })
                 .ToList()
     });
 }