public SchedulerConfigurer(string schedulerId, IScheduleStore scheduleStore) { _logger.DebugFormat("Configuring scheduler with ID {SchedulerId}", _schedulerId); _schedulerId = schedulerId; _injectionist.Register(c => new SchedulerId(schedulerId)); _injectionist.Register(c => _catalog); _injectionist.Register(c => scheduleStore); }
protected override Task ExecuteAsync(CancellationToken stoppingToken) { return(Task.Run(async() => { while (!stoppingToken.IsCancellationRequested) { IScheduleStore store = _iocResolver.GetRequiredService <IScheduleStore>(); IUnitOfWorkManager unitOfWorkManager = _iocResolver.GetRequiredService <IUnitOfWorkManager>(); using (var uow = unitOfWorkManager.Begin()) { var schedules = await store.GetWaitingSchedulesAsync(1000); foreach (var schedule in schedules) { await TryExecuteScheduleAsync(schedule); await store.UpdateAsync(schedule); } uow.Complete(); } Thread.Sleep(1000); } })); }
public ScheduleService(ITravelServiceClient travelServiceClient, IScheduleStore scheduleStore) { this.travelServiceClient = travelServiceClient; this.scheduleStore = scheduleStore; }
public SchedulerManager(IScheduleStore store) { _store = store; }