예제 #1
0
 public MenuCommands(IMenuFormatting menuFormatting, IAddNewMovie addNewMovie, IDeleteMovie deleteMovie, ISearchForMovies searchForMovies, IInputValidation inputValidation, IList <IMovie> movies, IRelevantMenus relevantMenus)
 {
     _menuFormatting       = menuFormatting;
     _addNewMovie          = addNewMovie;
     _deleteMovie          = deleteMovie;
     _searchForMovies      = searchForMovies;
     _inputValidation      = inputValidation;
     _movies               = movies;
     _relevantMenus        = relevantMenus;
     _menusToPrint         = new Dictionary <string, Action>();
     _searchedMovieResults = new List <IMovie>();
     SetUpDelegates();
     GenerateMenusToPrint();
 }
예제 #2
0
        public TModel Get <TModel>(IInputMessage inputMessage, IInputValidation validation, IInputParser <TModel> parser)
            where TModel : class
        {
            var getMessage = inputMessage.GetMessage();

            Console.WriteLine(getMessage);

            string value = Console.ReadLine();

            if (validation.IsValid(value))
            {
                return(parser.Parse(value));
            }
            else
            {
                var invalidMessage = inputMessage.InvalidMessage();

                Console.WriteLine(inputMessage);
            }

            return(default(TModel));
        }
예제 #3
0
 public Worker(IBoard board, IShip ship, IInputValidation inputValidation)
 {
     Board           = board;
     Ship            = ship;
     InputValidation = inputValidation;
 }