Exemplo n.º 1
0
        static void Main(string[] args)
        {
            _dialogConsole = new DialogConsole();

            string input;
            string exitCommand = "exit";

            _dialogConsole.DisplayUser("Hello !");
            _dialogConsole.DisplayUser($"Welcome, type your name to create a bank account or \"{exitCommand}\" to exit the application");
            input = _dialogConsole.GetUserAnswer();

            if (input == exitCommand)
            {
                return;
            }

            _dialogConsole.DisplayUser($"Thank you {input} for creating your bank account");
            AccountInitialization(input);

            while (input != exitCommand)
            {
                DisplayAvailableActions();
                input = _dialogConsole.GetUserAnswer();

                _interpreter.ExecuteAction(input, _myAccount);
            }
        }
Exemplo n.º 2
0
        public CommandInterpreter(IBanker banker, IDialogConsole dialogConsole)
        {
            _availableActions = Enum.GetValues(typeof(ActionEnum)).Cast <ActionEnum>().ToList();

            _interpreterMapping = new Dictionary <ActionEnum, Func <AbstractDialogInterpreter> >();
            _interpreterMapping.Add(ActionEnum.Withdraw, () => new WithdrawDialogInterpreter(banker, dialogConsole));
            _interpreterMapping.Add(ActionEnum.Deposit, () => new DepositDialogInterpreter(banker, dialogConsole));
            _interpreterMapping.Add(ActionEnum.Balance, () => new BalanceDialogInterpreter(banker, dialogConsole));
            _interpreterMapping.Add(ActionEnum.History, () => new HistoryDialogInterpreter(banker, dialogConsole));
        }
Exemplo n.º 3
0
 protected AbstractDialogInterpreter(IBanker banker, IDialogConsole dialogConsole)
 {
     Banker        = banker;
     DialogConsole = dialogConsole;
 }
 public DepositDialogInterpreter(IBanker banker, IDialogConsole dialogConsole) : base(banker, dialogConsole)
 {
 }
Exemplo n.º 5
0
 public WithdrawDialogInterpreter(IBanker banker, IDialogConsole dialogConsole) : base(banker, dialogConsole)
 {
 }
Exemplo n.º 6
0
 public HistoryDialogInterpreter(IBanker banker, IDialogConsole dialogConsole) : base(banker, dialogConsole)
 {
 }
 public BalanceDialogInterpreter(IBanker banker, IDialogConsole dialogConsole) : base(banker, dialogConsole)
 {
 }