public SlackService(ILogger <SlackService> logger, ISlackBot bot, IClock clock, IMediator mediator, ISubscriptionQueries subscriptionQueries, IRateLimitQueries rateLimitQueries, IAuthorizationQueries authorizationQueries, IEventSubscriber eventSubscriber, IApplicationEnder applicationEnder) : base(applicationEnder) { _logger = logger ?? throw new ArgumentNullException(nameof(logger)); _bot = bot ?? throw new ArgumentNullException(nameof(bot)); _clock = clock ?? throw new ArgumentNullException(nameof(clock)); _mediator = mediator ?? throw new ArgumentNullException(nameof(mediator)); _subscriptionQueries = subscriptionQueries ?? throw new ArgumentNullException(nameof(subscriptionQueries)); _rateLimitQueries = rateLimitQueries ?? throw new ArgumentNullException(nameof(rateLimitQueries)); _authorizationQueries = authorizationQueries ?? throw new ArgumentNullException(nameof(authorizationQueries)); _eventSubscriber = eventSubscriber ?? throw new ArgumentNullException(nameof(eventSubscriber)); _retryPolicy = Policy.Handle <Exception>(ex => ex.GetType() != typeof(TaskCanceledException)) .WaitAndRetryAsync(10, _ => TimeSpan.FromSeconds(2), (ex, time) => { _logger.LogError(ex, "Exception during NATS connection. Waiting {Time}...", time); }); }
/// <summary> /// /// </summary> /// <param name="applicationEnder"></param> /// <param name="logger"></param> /// <param name="serviceProvider"></param> /// <param name="periodicTaskFailureMode"></param> /// <param name="timeBetweenTasks"></param> public PeriodicTaskRunnerBackgroundService( IApplicationEnder applicationEnder, ILogger <PeriodicTaskRunnerBackgroundService <TPeriodicTask> > logger, IServiceProvider serviceProvider, PeriodicTaskFailureMode periodicTaskFailureMode, TimeSpan timeBetweenTasks) : base(applicationEnder) { this.logger = logger; this.serviceProvider = serviceProvider; this.periodicTaskFailureMode = periodicTaskFailureMode; this.timeBetweenTasks = timeBetweenTasks; }
public DiscordServerHostedService(IApplicationEnder applicationEnder, ILogger <DiscordServerHostedService> logger, AppOptions options, DiscordSocketClient discordClient, CommandService commandService, CommandHandlingService commandHandlingService) : base(applicationEnder) { _logger = logger; _options = options; _discordClient = discordClient; _commandService = commandService; _commandHandlingService = commandHandlingService; }
public DiscordService(DiscordSocketClient discordSocketClient, CommandService commands, IServiceScopeFactory scopeFactory, ILogger <DiscordService> loggerService, IOptions <DiscordOptions> options, IEventSubscriber eventSubscriber, IApplicationEnder applicationEnder) : base(applicationEnder) { _commands = commands; _scopeFactory = scopeFactory; _logger = loggerService; _options = options.Value; _eventSubscriber = eventSubscriber; _discordSocketClient = discordSocketClient; _retryPolicy = Policy.Handle <Exception>(ex => ex.GetType() != typeof(TaskCanceledException)) .WaitAndRetryAsync(10, _ => TimeSpan.FromSeconds(2), (ex, time) => { _logger.LogError(ex, "Exception during NATS connection. Waiting {Time}...", time); }); }
public NexusModsIssueMonitor(ILogger <NexusModsIssueMonitor> logger, IClock clock, IServiceScopeFactory scopeFactory, IApplicationEnder applicationEnder) : base(applicationEnder) { _logger = logger ?? throw new ArgumentNullException(nameof(logger)); _clock = clock ?? throw new ArgumentNullException(nameof(clock)); _scopeFactory = scopeFactory ?? throw new ArgumentNullException(nameof(scopeFactory)); _timeLimiter = TimeLimiter.GetFromMaxCountByInterval(1, TimeSpan.FromSeconds(90)); }
public YieldingAndThenCrashingCriticalBackgroundService(IApplicationEnder lifeTime) : base(lifeTime) { }
public ImmediatelyCrashingCriticalBackgroundService(IApplicationEnder lifeTime) : base(lifeTime) { }
public StubCriticalBackgroundService(IApplicationEnder applicationEnder) : base(applicationEnder) { }
public YieldingAndThenCrashingCriticalBackgroundService(IApplicationEnder applicationEnder) : base(applicationEnder) { }
public ImmediatelyCrashingCriticalBackgroundService(IApplicationEnder applicationEnder) : base(applicationEnder) { }
/// <summary> /// </summary> protected CriticalBackgroundService(IApplicationEnder applicationEnder) { this._applicationEnder = applicationEnder; }
public SomeBackgroundService(IApplicationEnder applicationEnder) : base(applicationEnder) { }