diff --git a/src/BirdsiteLive/Program.cs b/src/BirdsiteLive/Program.cs index c109ad2..d238b02 100644 --- a/src/BirdsiteLive/Program.cs +++ b/src/BirdsiteLive/Program.cs @@ -2,9 +2,11 @@ using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; +using BirdsiteLive.Services; using Lamar.Microsoft.DependencyInjection; using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Logging; @@ -23,6 +25,10 @@ namespace BirdsiteLive .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseStartup(); + }) + .ConfigureServices(services => + { + services.AddHostedService(); }); } } diff --git a/src/BirdsiteLive/Services/FederationService.cs b/src/BirdsiteLive/Services/FederationService.cs new file mode 100644 index 0000000..ee07161 --- /dev/null +++ b/src/BirdsiteLive/Services/FederationService.cs @@ -0,0 +1,29 @@ +using System; +using System.Threading; +using System.Threading.Tasks; +using BirdsiteLive.Domain; +using Microsoft.Extensions.Hosting; + +namespace BirdsiteLive.Services +{ + public class FederationService : BackgroundService + { + private readonly IUserService _userService; + + #region Ctor + public FederationService(IUserService userService) + { + _userService = userService; + } + #endregion + + protected override async Task ExecuteAsync(CancellationToken stoppingToken) + { + for (;;) + { + Console.WriteLine("RUNNING SERVICE"); + await Task.Delay(TimeSpan.FromSeconds(5), stoppingToken); + } + } + } +} \ No newline at end of file