示例#1
0
        public ConsoleCommandLambdaAdapter(IConsoleController controller, string name, CommandFunctor functor)
        {
            mController = controller ?? throw new ArgumentNullException("controller");

            mName = name;

            mCommandFunctor = functor ?? throw new ArgumentNullException("functor");
        }
示例#2
0
        public ConsoleInputOutputController(
            IFormatDelegate <IEnumerable <string>, IEnumerable <string> > formatTextToFitConsoleWindowDelegate,
            IConsoleController consoleController)
        {
            fragmentBuffer = new StringBuilder();

            this.formatTextToFitConsoleWindowDelegate = formatTextToFitConsoleWindowDelegate;
            this.consoleController = consoleController;
        }
示例#3
0
        public ConsoleApp()
        {
            _serviceProvider = new ServiceCollection()
                               .AddLogging()
                               .AddSingleton <IConsoleView, SimpleConsoleView>()
                               .AddSingleton <IConsoleController, SimpleConsoleController>()
                               .AddSingleton <ICalculator <LoanInfo, LoanPaymentsInfo>, LoanPaymentsCalculator>()
                               .BuildServiceProvider();

            _serviceProvider.GetService <ILoggerFactory>()
            .AddConsole(LogLevel.Debug);

            _logger = _serviceProvider.GetService <ILoggerFactory>()
                      .CreateLogger <ConsoleApp>();

            _controller = _serviceProvider.GetService <IConsoleController>();
        }