Пример #1
0
        public static Product Create(ProductEnum productType)
        {
            Debug.Log("SimpleFactory:Create(), productType = " + productType.ToString());
            switch (productType)
            {
            case ProductEnum.A:
                return(new ConcreateProductA());

            case ProductEnum.B:
                return(new ConcreateProductB());
            }
            return(null);
        }
Пример #2
0
        public void Submit(ProductEnum productEnum, string CreditCardNumber, string expiryDate)
        {
            // Step-1 => check product stock
            if (!_productStockRepository.IsInStock(productEnum))
            {
                throw new Exception($"{productEnum.ToString()} not in stock");
            }


            // Step-2 => payment

            _paymentProcessor.ChargeCreditCard(CreditCardNumber, expiryDate);


            //Step-3 => shiping the product

            _shippingProcessor.MailProduct(productEnum);
        }
        public void Submit(ProductEnum productEnum, string CreditCardNumber, string expiryDate)
        {
            // Step-1 => check product stock
            var productStockRepositry = new ProductStockRepository_WithoutDI();

            if (!productStockRepositry.IsInStock(productEnum))
            {
                throw new Exception($"{productEnum.ToString()} not in stock");
            }


            // Step-2 => payment
            var creaditCardProcessor = new PaymentProcessor_WithoutDI();

            creaditCardProcessor.ChargeCreditCard(CreditCardNumber, expiryDate);


            //Step-3 => shiping the product
            var shippingProcessor = new ShippingProcessor_WithoutDI();

            shippingProcessor.MailProduct(productEnum);
        }
        public static string ToReadableString(this ProductEnum product)
        {
            switch (product)
            {
            case ProductEnum.Bus:
                return("Bus");

            case ProductEnum.Ferry:
                return("Ferry");

            case ProductEnum.Car:
                return("Car");

            case ProductEnum.Tour:
                return("Tour");

            case ProductEnum.Train:
                return("Train");

            case ProductEnum.TrainPass:
                return("Train Pass");

            case ProductEnum.TourCoachPackage:
                return("Tour Coach Package");

            case ProductEnum.Charter:
                return("Charter");

            case ProductEnum.BusDayPass:
                return("Bus Day Pass");

            case ProductEnum.TPM:
                return("Trip Package");

            default:
                return(product.ToString());
            }
        }
 public static string ToLowerString(this ProductEnum product)
 {
     return(product.ToString().ToLower());
 }