public ProcessServer(IServiceProvider serviceProvider, JobBuilderOptions options, IJobStorage jobStorage, ILoggerFactory loggerFactory) { _serviceProvider = serviceProvider ?? throw new ArgumentNullException(nameof(_serviceProvider)); _options = options ?? throw new ArgumentNullException(nameof(options)); _loggerFactory = loggerFactory ?? throw new ArgumentNullException(nameof(loggerFactory)); var properties = new Dictionary <string, object>(StringComparer.OrdinalIgnoreCase); JobDictionary = new ConcurrentDictionary <string, ProcessableCronJob>(_options.JobList.ToDictionary(p => p.Id, p => new ProcessableCronJob(p))); _processes = new List <IBackgroundTask> { new CronJobScheduler(_serviceProvider, new EveryMinuteThrottler(), ScheduleInstant.Factory, JobDictionary, jobStorage, _loggerFactory) }; var context = new TaskContext( GetGloballyUniqueServerId(), properties, _cts.Token); _bootstrapTask = WrapProcess(this).CreateTask(_loggerFactory, context); }
public SingleThreadJobProcessor(IJobStorage jobStorage, IJobExecutor jobExecutor, ILogger <SingleThreadJobProcessor> logger) { _jobStorage = jobStorage; _jobExecutor = jobExecutor; _logger = logger; }
public JobExecutor(IServiceScopeFactory serviceScopeFactory, ILogger <JobExecutor> logger, IJobStorage jobStorage) { _serviceScopeFactory = serviceScopeFactory; _logger = logger; _jobStorage = jobStorage; }
public StorageApiTester( IJobStorage jobStorage, IComponentRegistry componentRegistry, ILogger <StorageApiTester> logger) { _jobStorage = jobStorage; _componentRegistry = componentRegistry; _logger = logger; }
public JobExecutorTests() { var services = new ServiceCollection(); services.AddSingleton <IJobStorage>(new MemoryJobStorage(new NullLogger <MemoryJobStorage>(), null)); services.AddSingleton <IJobExecutor>(x => new JobExecutor(x.GetRequiredService <IServiceScopeFactory>(), new NullLogger <JobExecutor>(), x.GetRequiredService <IJobStorage>())); services.AddTransient <TestJob>(); var provider = services.BuildServiceProvider(); _jobStorage = provider.GetRequiredService <IJobStorage>(); _jobExecutor = provider.GetRequiredService <IJobExecutor>(); }
public CronJobScheduler(IServiceProvider serviceProvider, IThrottler throttler, Func <CrontabSchedule, TimeZoneInfo, IScheduleInstant> instantFactory, ConcurrentDictionary <string, ProcessableCronJob> jobDictionary, IJobStorage jobStorage, ILoggerFactory loggerFactory) { _serviceProvider = serviceProvider; _throttler = throttler; _instantFactory = instantFactory; _jobDictionary = jobDictionary; _jobStorage = jobStorage; _loggerFactory = loggerFactory; _logger = _loggerFactory.CreateLogger <CronJobScheduler>(); }
public SubscribedComponentManager( IComponentRegistry componentRegistry, IComponentConfigUpdateNotifier componentConfigUpdateNotifier, IJobStorage jobStorage, IOptions <ComponentIdentifiers> options, IEventTracker <SubscribedComponentManager> logger) { _identifiers = options.Value; _componentRegistry = componentRegistry; _componentConfigUpdateNotifier = componentConfigUpdateNotifier; _jobStorage = jobStorage; _logger = logger; }
/// <summary> /// Called by DI /// </summary> public JobManager(IServiceProvider serviceProvider, ILogger <JobManager> logger, IJobStorage jobStorage) { _serviceProvider = serviceProvider; _logger = logger; _jobStorage = jobStorage; }
public JobWorker(IJobStorage jobStorage, ILoggerFactory loggerFactory) { _jobStorage = jobStorage; _loggerFactory = loggerFactory; }
public MemoryJobStorageTests() { _jobStorage = new MemoryJobStorage(new NullLogger <MemoryJobStorage>(), null); }