/// <summary> /// Construction - Injecting xml and json data repository for data retrival /// Assumption - Origin of horse and price data may change in future so it is better to keep their repositories /// </summary> /// <param name="horseDataRepositoryxml"></param> /// <param name="priceDataRepositoryxml"></param> /// <param name="horseDataRepositoryjson"></param> /// <param name="priceDataRepositoryjson"></param> public HorseOrderingController(IHorseDataRepository horseDataRepositoryxml, IPriceDataRepository priceDataRepositoryxml, IHorseDataRepository horseDataRepositoryjson, IPriceDataRepository priceDataRepositoryjson) { horsesxml = horseDataRepositoryxml.GetAll(); horsesjson = horseDataRepositoryjson.GetAll(); pricesxml = priceDataRepositoryxml.GetAll(); pricesjson = priceDataRepositoryjson.GetAll(); }
public CashRegister(IPriceDataRepository priceDataRepository, DateTime currentTime) { _priceDataRepo = priceDataRepository; _priceDataRepo.CalulateFinalPrices(); foreach (var price in _priceDataRepo.PriceData) { var pricingRecord = new PricingRecord { BasePrice = price, FinalPrice = _priceCalculator.CalculateFinalPrice(price, currentTime) }; PriceResults.Add(pricingRecord); } }