예제 #1
0
        public static async Task <ProtocolController> CreateAsync(ISerialPortWrapper serialPort, ILogger logger)
        {
            var protocolController = new ProtocolController(serialPort, logger);

            protocolController.ConfigureCommPort();
            protocolController.LoadDefaultParametersList();
            await protocolController.LoadParametersListAsync();

            await protocolController.SaveParametersListAsync();

            return(protocolController);
        }
예제 #2
0
파일: Program.cs 프로젝트: radu-v/mppt-cli
        static async Task <int> Main()
        {
            Log.Logger = new LoggerConfiguration()
                         .WriteTo.RollingFile("mppt-cli.log", Serilog.Events.LogEventLevel.Information)
                         .WriteTo.Console()
                         .CreateLogger();

            var serviceProvider    = ConfigureServices();
            var protocolController = await ProtocolController.CreateAsync(serviceProvider.GetRequiredService <ISerialPortWrapper>(), Log.Logger);

            var app = new ConsoleApp(protocolController, Log.Logger);

            return(await app.OnExecuteAsync());
        }
예제 #3
0
 public ConsoleApp(ProtocolController protocolController, ILogger logger)
 {
     this.protocolController = protocolController;
     this.logger             = logger;
 }