/*private static readonly string[] input = {"Cake", "Cake", "Cake", "Cake", "Bread", "Bread", "Bread", "Bread", "Apple", "Apple", "Apple", "Apple", "Apple", "Apple"};*/ static void Main(string[] args) { // TO MANUAL ENTER UNCOMMENT THIS /*ShoppingCart shoppingCart = GetShoppingCart(input); * * var config = GetConfig(CONFIG_FILE_NAME); * var priceList = new PriceList(config.GetPrices()); * var bill = GenerateBill(config, priceList, shoppingCart); * * BillPrinter pr = new BillPrinter(); * pr.print(bill, shoppingCart, priceList);*/ // AND COMMENT BELOW if (args == null) { Console.WriteLine("Args is null"); } else { ShoppingCart.ShoppingCart shoppingCart = GetShoppingCart(args); var config = GetConfig(); var priceList = new PriceList(config.GetPrices()); var bill = GenerateBill(config, priceList, shoppingCart); BillPrinter pr = new BillPrinter(); pr.print(OUTPUT_BILL_FILE_NAME, bill, shoppingCart, priceList); } }
private static Bill GenerateBill(Root config, PriceList priceList, ShoppingCart.ShoppingCart shoppingCart) { MainOfferHandler mainOfferHandler = new MainOfferHandler(config.GetOffers(), priceList); BillGenerator billGenerator = new BillGenerator(priceList, mainOfferHandler); Bill bill = billGenerator.GenerateBill(shoppingCart); return(bill); }
private static ShoppingCart.ShoppingCart GetShoppingCart(String[] args) { ShoppingCart.ShoppingCart shoppingCart = new ShoppingCart.ShoppingCart(); shoppingCart.AddItems(args.ToList()); return(shoppingCart); }