private ScheduledAction ConfigureActualizationAction(ScheduledActionsDynamicOptions options) { var scheduler = Scheduler.Periodical(options.ActualizationPeriod, false); var actionOptions = new ScheduledActionOptions(); return(new ScheduledAction( "ActualizeScheduledActionsSet", scheduler, actionOptions, async context => { var builder = new ScheduledActionsBuilder(log, tracer, diagnostics) { SupportsDynamicConfiguration = false, ShouldLogScheduledActions = false }; foreach (var action in staticActions) { builder.Schedule(action); } await options.Configuration(builder, context.CancellationToken); Actualize(builder.Actions, context.CancellationToken); })); }
public Task InitializeAsync(IVostokHostingEnvironment environment) { var builder = new ScheduledActionsBuilder(environment.Log); Setup(builder, environment); runner = builder.BuildRunnerInternal(); RegisterDiagnosticFeatures(environment); return(Task.CompletedTask); }