Beispiel #1
0
        public ICharger GetCharger(ChargerComponentTypes chargerType)
        {
            ICharger chargerComponent = null;

            switch (chargerType)
            {
            case ChargerComponentTypes.OwnCharger:
                chargerComponent = new OwnCharger(Output);
                Output.WriteLine($"{nameof(OwnCharger)} selected");
                break;

            case ChargerComponentTypes.NokiaCharger:
                chargerComponent = new NokiaCharger(Output);
                Output.WriteLine($"{nameof(NokiaCharger)} selected");
                break;

            case ChargerComponentTypes.HuaweiPowerBank:
                chargerComponent = new HuaweiPowerBank(Output);
                Output.WriteLine($"{nameof(HuaweiPowerBank)} selected");
                break;

            case ChargerComponentTypes.NomiPowerBank:
                chargerComponent = new NomiPowerBank(Output);
                Output.WriteLine($"{nameof(NomiPowerBank)} selected");
                break;

            case ChargerComponentTypes.QQEERSolarPowerBank:
                chargerComponent = new QQEERSolarPowerBank(Output);
                Output.WriteLine($"{nameof(QQEERSolarPowerBank)} selected");
                break;
            }

            return(chargerComponent);
        }
Beispiel #2
0
        public void GetAndProcessUserSelectionOfCharger(SimCorpMobile simCorpMobile)
        {
            ChargerHandler chargerHandler = new ChargerHandler(Output);

            string enteredChargerTypeIndex = Input.ReadLine();

            try
            {
                ChargerComponentTypes chargerType = chargerHandler.GetChargerType(enteredChargerTypeIndex);
                ICharger chargerComponent         = chargerHandler.GetCharger(chargerType);
                chargerHandler.SetAndRunCharger(simCorpMobile, chargerComponent);
            }
            catch (Exception e)
            {
                Output.Write(e.Message);
            }
        }