public Computer MakeCreditPurchase(Order order)
        {
            var credit = new CreditProcessingService();

            if (!credit.HasCreditAvailable(order.Price))
            {
                throw new Exception("Customer does not have avaiable credit.");
            }

            credit.MakePurchase(order.Price);

            var computer = store.Build(order, computerBuilder);

            factory.PlaceOrder(order);

            return computer;
        }
Esempio n. 2
0
        public Computer MakeCreditPurchase(Order order)
        {
            var credit = new CreditProcessingService();

            if (!credit.HasCreditAvailable(order.Price))
            {
                throw new Exception("Customer does not have avaiable credit.");
            }


            credit.MakePurchase(order.Price);

            var computer = store.Build(order, computerBuilder);

            factory.PlaceOrder(order);

            return(computer);
        }