public IrrigateController(ChannelWriter <IrrigationJob> irrigationJobs, IIrrigationStopper irrigationStopper, ILogger <IrrigateController> logger, IOptions <IrrigationConfig> config) { _irrigationJobs = irrigationJobs; _irrigationStopper = irrigationStopper; _logger = logger; _config = config.Value; }
public IrrigationProcessor(ChannelReader <IrrigationJob> jobReader, RelayBoard relayBoard, IIrrigationStopper irrigationStopper, IrrigationProcessorStatus status, IOptions <IrrigationConfig> config, ILogger <IrrigationProcessor> logger) { _jobReader = jobReader; _relayBoard = relayBoard; _irrigationStopper = irrigationStopper; _config = config.Value; _logger = logger; _status = status; _irrigationCts = new CancellationTokenSource(); _irrigationStopper.StopRequested += StopIrrigation; }