public TeaAdapter(TeaBlend teaBlend)
        {
            tea = new Tea();

            name     = teaBlend.Name;
            bagColor = teaBlend.BagColor;
        }
        public Tea(Amount sugarAmount, TeaBlend blend)
        {
            CompatibleToppings = new List <string>();
            CompatibleToppings.Add("Sugar");

            _tea       = new TeaAndChocoLibrary.Tea();
            _tea.Blend = blend;

            _tea.RemoveSugar();
            switch (sugarAmount)
            {
            case Amount.Few:
                _tea.AddSugar();
                break;

            case Amount.Normal:
                _tea.AddSugar();
                _tea.AddSugar();
                break;

            case Amount.Extra:
                _tea.AddSugar();
                _tea.AddSugar();
                _tea.AddSugar();
                break;
            }
        }
Example #3
0
 public TeaAdapter(TeaBlend blend)
 {
     _adaptee = new TeaAndChocoLibrary.Tea {
         Blend = blend
     };
     Name  = "Tea";
     Price = TeaAndChocoLibrary.Tea.Price;
 }
 public TeaDrink(TeaBlend teaBlend, int sugeramount = 0)
 {
     _tea = new Tea()
     {
         Blend = teaBlend
     };
     for (int i = 0; i < sugeramount; i++)
     {
         _tea.AddSugar();
     }
 }
Example #5
0
        public TeaAdapter(TeaBlend blend)
        {
            _productionLog = new List <string>
            {
                "Making tea",
                "Adding hot water"
            };

            Blend = blend;
            _productionLog.Add($"Adding {Blend.Name} into the hot water");
        }
        public DrinkFactory()
        {
            var teaBlendFactory = new TeaBlendRepository();

            _defaultTeaBlend = teaBlendFactory.GetTeaBlend(teaBlendFactory.BlendNames.FirstOrDefault());
            _drinks          = new Dictionary <string, IDrink>
            {
                ["Coffee"]         = new StrengthDrinkDecorator(new Coffee(), strength: Strength.Normal),
                ["Espresso"]       = new Espresso(),
                ["Capuccino"]      = new Capuccino(),
                ["Wiener Melange"] = new WienerMelange(),
                ["Café au Lait"]   = new CafeAuLait(),
                ["Tea"]            = new TeaAdapter(_defaultTeaBlend)
            };
            //_drinks = MixDrink();
        }
Example #7
0
 public TeaBlendDecorator(ITeaDrinkAdapter drink, TeaBlend blend) : base(drink)
 {
     Blend = blend;
     Tea.SetBlend(blend);
 }
        private void BrewDrink()
        {
            IDrink drink;

            switch (_drinkName)
            {
            case "Coffee":
                drink = new Coffee()
                {
                    Strength = CoffeeStrength
                };
                break;

            case "Espresso":
                drink = new Espresso();
                break;

            case "Capuccino":
                drink = new Capuccino();
                break;

            case "Wiener Melange":
                drink = new WienerMelange();
                break;

            case "Café au Lait":
                drink = new CafeAuLait();
                break;

            case "Chocolate":
                drink = new Chocolate();
                break;

            case "Chocolate Deluxe":
                drink = new Chocolate(makeDeluxe: true);
                break;

            case "Tea":
                TeaBlend teaBlend = _teaBlendRepository.GetTeaBlend(SelectedTeaBlendOption);
                if (_hasSugar)
                {
                    drink = new TeaDrink(teaBlend, sugeramount: (int)SugarAmount);
                }
                else
                {
                    drink = new TeaDrink(teaBlend);
                }
                break;

            default:
                drink = _fh.GetBaseDrink(_drinkName);
                break;;
            }

            if (_hasSugar)
            {
                drink = new SugarDecorator(drink, _sugarAmount);
            }

            if (_hasMilk)
            {
                drink = new MilkDecorator(drink, _milkAmount);
            }

            SelectedDrink = drink;
        }
Example #9
0
 public void SetBlend(TeaBlend blend)
 {
     _tea.Blend = blend;
 }
Example #10
0
 public BlendDecorator(IDrink drink, TeaBlend blend) : base(drink)
 {
     _blend = blend;
 }