From 933091e76cd67167bac1d8316694ccf6db720832 Mon Sep 17 00:00:00 2001 From: "Collin M. Barrett" Date: Sun, 14 Jul 2019 16:19:53 -0500 Subject: [PATCH] cleanup some DI registration --- .../ServiceCollectionExtensions.cs | 2 +- .../ServiceCollectionExtensions.cs | 6 +++--- .../Disk/ServiceCollectionExtensions.cs | 4 +--- .../GitHub/ServiceCollectionExtensions.cs | 12 +++--------- .../Polly/ServiceCollectionExtensions.cs | 14 +------------- 5 files changed, 9 insertions(+), 29 deletions(-) diff --git a/src/FilterLists.Agent/Infrastructure/ApplicationInsights/ServiceCollectionExtensions.cs b/src/FilterLists.Agent/Infrastructure/ApplicationInsights/ServiceCollectionExtensions.cs index 1ae672d63..4c03d3e1b 100644 --- a/src/FilterLists.Agent/Infrastructure/ApplicationInsights/ServiceCollectionExtensions.cs +++ b/src/FilterLists.Agent/Infrastructure/ApplicationInsights/ServiceCollectionExtensions.cs @@ -16,7 +16,7 @@ public static void AddApplicationInsights(this IServiceCollection services, return new QuickPulseTelemetryModuleBuilder(telemetryConfiguration).Build(); }); - // init never resolved singleton in intermediate ServiceProvider + // init never resolved singleton services.BuildServiceProvider().GetService(); } } diff --git a/src/FilterLists.Agent/Infrastructure/DependencyInjection/ServiceCollectionExtensions.cs b/src/FilterLists.Agent/Infrastructure/DependencyInjection/ServiceCollectionExtensions.cs index a20eaa9cd..094f159ea 100644 --- a/src/FilterLists.Agent/Infrastructure/DependencyInjection/ServiceCollectionExtensions.cs +++ b/src/FilterLists.Agent/Infrastructure/DependencyInjection/ServiceCollectionExtensions.cs @@ -31,15 +31,15 @@ public static class ServiceCollectionExtensions public static void ConfigureServices(this IServiceCollection services) { services.ConfigureSettings(); - services.AddApplicationInsights(ApplicationInsightsSettings); services.AddLogging(); + services.AddApplicationInsights(ApplicationInsightsSettings); services.AddLocalization(); services.AddTransient(); services.AddMediatR(AppDomain.CurrentDomain.GetAssemblies()); services.AddPollyPolicyRegistry(); - services.AddDiskServices(); + services.AddDiskServices(Configuration.GetSettings()); services.AddFilterListsApiServices(); - services.AddGitHubServices(); + services.AddGitHubServices(Configuration.GetSettings()); services.AddWebServices(); } diff --git a/src/FilterLists.Agent/Infrastructure/Disk/ServiceCollectionExtensions.cs b/src/FilterLists.Agent/Infrastructure/Disk/ServiceCollectionExtensions.cs index 83191432b..f9ebaa3d5 100644 --- a/src/FilterLists.Agent/Infrastructure/Disk/ServiceCollectionExtensions.cs +++ b/src/FilterLists.Agent/Infrastructure/Disk/ServiceCollectionExtensions.cs @@ -1,17 +1,15 @@ using FilterLists.Agent.AppSettings; using LibGit2Sharp; using Microsoft.Extensions.DependencyInjection; -using Microsoft.Extensions.Options; namespace FilterLists.Agent.Infrastructure.Disk { public static class ServiceCollectionExtensions { - public static void AddDiskServices(this IServiceCollection services) + public static void AddDiskServices(this IServiceCollection services, ArchiveSettings archiveSettings) { services.AddTransient(s => { - var archiveSettings = s.GetService>().Value; if (!Repository.IsValid(archiveSettings.RepositoryDirectory)) Repository.Init(archiveSettings.RepositoryDirectory); return new Repository(archiveSettings.RepositoryDirectory); diff --git a/src/FilterLists.Agent/Infrastructure/GitHub/ServiceCollectionExtensions.cs b/src/FilterLists.Agent/Infrastructure/GitHub/ServiceCollectionExtensions.cs index 7f20aface..0f38a7216 100644 --- a/src/FilterLists.Agent/Infrastructure/GitHub/ServiceCollectionExtensions.cs +++ b/src/FilterLists.Agent/Infrastructure/GitHub/ServiceCollectionExtensions.cs @@ -1,23 +1,17 @@ using FilterLists.Agent.AppSettings; using FilterLists.Agent.Core.GitHub; using Microsoft.Extensions.DependencyInjection; -using Microsoft.Extensions.Options; using Octokit; namespace FilterLists.Agent.Infrastructure.GitHub { public static class ServiceCollectionExtensions { - public static void AddGitHubServices(this IServiceCollection services) + public static void AddGitHubServices(this IServiceCollection services, GitHubSettings gitHubSettings) { services.AddSingleton(s => - { - var gitHubSettings = s.GetService>().Value; - return new GitHubClient(new ProductHeaderValue(gitHubSettings.ProductHeaderValue)) - { - Credentials = new Credentials(gitHubSettings.PersonalAccessToken) - }; - }); + new GitHubClient(new ProductHeaderValue(gitHubSettings.ProductHeaderValue)) + {Credentials = new Credentials(gitHubSettings.PersonalAccessToken)}); services.AddTransient(); } } diff --git a/src/FilterLists.Agent/Infrastructure/Polly/ServiceCollectionExtensions.cs b/src/FilterLists.Agent/Infrastructure/Polly/ServiceCollectionExtensions.cs index 7cb71e975..8f29e7c86 100644 --- a/src/FilterLists.Agent/Infrastructure/Polly/ServiceCollectionExtensions.cs +++ b/src/FilterLists.Agent/Infrastructure/Polly/ServiceCollectionExtensions.cs @@ -3,9 +3,7 @@ using System.Net.Http; using System.Threading.Tasks; using Microsoft.Extensions.DependencyInjection; -using Microsoft.Extensions.Logging; using Polly; -using Polly.Registry; namespace FilterLists.Agent.Infrastructure.Polly { @@ -20,17 +18,7 @@ public static void AddPollyPolicyRegistry(this IServiceCollection services) .WaitAndRetryAsync(3, (retryCount, response, context) => response.Result?.Headers.RetryAfter.Delta ?? TimeSpan.FromMilliseconds(120), - async (response, timespan, retryCount, context) => - { - await Task.Run(() => - { - var logger = services.BuildServiceProvider().GetService>>(); - logger.LogInformation("Retrying after 429 TooManyRequests", - response.Result.RequestMessage.RequestUri, - response.Result?.Headers.RetryAfter.Delta.ToString(), - retryCount); - }); - }); + async (response, timespan, retryCount, context) => { await Task.CompletedTask; }); registry.Add(nameof(waitAndRetryTooManyRequests), waitAndRetryTooManyRequests); } }