DeviceBridge/Services/SubscriptionSchedulerHostedService.cs (27 lines of code) (raw):

// Copyright (c) Microsoft Corporation. All rights reserved. using System.Threading; using System.Threading.Tasks; using Microsoft.Extensions.Hosting; using NLog; namespace DeviceBridge.Services { /// <summary> /// When the application starts, start the subscription scheduler task. /// </summary> public class SubscriptionSchedulerHostedService : IHostedService { private readonly Logger _logger; private readonly ISubscriptionScheduler _subscriptionScheduler; public SubscriptionSchedulerHostedService(Logger logger, ISubscriptionScheduler subscriptionScheduler) { _logger = logger; _subscriptionScheduler = subscriptionScheduler; } public Task StartAsync(CancellationToken cancellationToken) { var _ = _subscriptionScheduler.StartSubscriptionSchedulerAsync().ContinueWith(t => _logger.Error(t.Exception, "Failed to start subscription scheduler task"), TaskContinuationOptions.OnlyOnFaulted); return Task.CompletedTask; } public Task StopAsync(CancellationToken cancellationToken) { return Task.CompletedTask; } } }