public Executor(IJobRepository jobRepository, ISemaphoreRepository semaphoreRepository, ICommandRepository commandRepository, IPlanner planner, ITimeProvider timeProvider, IEnumerable <IPlugin> plugins, ICallbackService callbackService, ILogging logging) { _jobRepository = jobRepository; _semaphoreRepository = semaphoreRepository; _commandRepository = commandRepository; _callbackService = callbackService; _planner = planner; _timeProvider = timeProvider; _plugins = plugins.ToList(); _logging = logging; if (_plugins.Select(p => p.Urn).Distinct().Count() != _plugins.Count()) { throw new ArgumentException("Invalid plugin configuration, not unique urns detected", nameof(plugins)); } }
public SemaphoreHealthCheck(ITimeProvider timeProvider, ISemaphoreRepository repo) { _timeProvider = timeProvider; _repo = repo; }