public StatusUpdater( ICursor cursor, IEnumerable <IManualStatusChangeUpdater> manualStatusChangeUpdaters, IIncidentUpdater incidentUpdater, IActiveEventEntityUpdater eventUpdater, ILogger <StatusUpdater> logger) { _cursor = cursor ?? throw new ArgumentNullException(nameof(cursor)); _manualStatusChangeUpdaters = manualStatusChangeUpdaters ?? throw new ArgumentNullException(nameof(manualStatusChangeUpdaters)); _incidentUpdater = incidentUpdater ?? throw new ArgumentNullException(nameof(incidentUpdater)); _activeEventUpdater = eventUpdater ?? throw new ArgumentNullException(nameof(eventUpdater)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); }
public StatusUpdater( ICursor cursor, IEnumerable <IEntityCollector> collectors, IActiveEventEntityUpdater activeEventUpdater, ILogger <StatusUpdater> logger) { _cursor = cursor ?? throw new ArgumentNullException(nameof(cursor)); collectors = collectors?.Where(c => c != null) ?? throw new ArgumentNullException(nameof(collectors)); _incidentCollector = collectors.SingleOrDefault(IsIncidentCollector) ?? throw new ArgumentException(nameof(collectors), $"Must provide a collector with name {IncidentEntityCollectorProcessor.IncidentsCollectorName}!"); _manualStatusChangeCollectors = collectors .Where(c => !IsIncidentCollector(c)) .ToList(); _activeEventUpdater = activeEventUpdater ?? throw new ArgumentNullException(nameof(activeEventUpdater)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); }