public CurrencyRepository(ICurrencyDataWriter currencyDataWriter, ICurrencyDataReader currencyDataReader)
 {
     _currencyDataWriter = currencyDataWriter;
     _currencyDataReader = currencyDataReader;
 }
 public StandardCurrencyProcessor(ICurrencyDataReader reader, ICurrencyDataWriter writer)
 {
     Reader = reader;
     Writer = writer;
 }
        public ICurrencyProcessor GetCurrencyProcessor(string CurrencyProcessorType, ICurrencyDataReader dataReader, ICurrencyDataWriter dataWriter)
        {
            switch (CurrencyProcessorType)
            {
            case "Standard":
            {
                return(new StandardCurrencyProcessor(dataReader, dataWriter));
            }

            default:
                throw new NotSupportedException($"{CurrencyProcessorType} is not supported as Currency Processor Type. Please check your config");
            }
        }