diff --git a/src/FilterLists.Api/DependencyInjection/Extensions/ConfigureServicesCollection.cs b/src/FilterLists.Api/DependencyInjection/Extensions/ConfigureServicesCollection.cs index 8137993e2..b1019db5f 100644 --- a/src/FilterLists.Api/DependencyInjection/Extensions/ConfigureServicesCollection.cs +++ b/src/FilterLists.Api/DependencyInjection/Extensions/ConfigureServicesCollection.cs @@ -1,4 +1,7 @@ -using Microsoft.Extensions.DependencyInjection; +using System.IO; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.PlatformAbstractions; +using Swashbuckle.AspNetCore.Swagger; namespace FilterLists.Api.DependencyInjection.Extensions { @@ -7,6 +10,30 @@ public static class ConfigureServicesCollection public static void AddFilterListsApi(this IServiceCollection services) { services.AddMvc(); + services.AddSwagger(); + } + + private static void AddSwagger(this IServiceCollection services) + { + services.AddSwaggerGen(c => + { + c.SwaggerDoc("v1", + new Info + { + Title = "FilterLists API", + Version = "v1", + Description = + "FilterLists is the independent and comprehensive directory of all public filter and hosts lists for advertisements, trackers, malware, and annoyances.", + Contact = new Contact {Url = "https://filterlists.com/contact/"}, + License = new License + { + Name = "Use under GPL-3.0", + Url = "https://github.com/collinbarrett/FilterLists/blob/master/LICENSE" + } + }); + c.IncludeXmlComments(Path.Combine(PlatformServices.Default.Application.ApplicationBasePath, + "FilterLists.Api.xml")); + }); } } } \ No newline at end of file diff --git a/src/FilterLists.Api/Startup.cs b/src/FilterLists.Api/Startup.cs index 6eddcc93e..e9997223e 100644 --- a/src/FilterLists.Api/Startup.cs +++ b/src/FilterLists.Api/Startup.cs @@ -1,12 +1,9 @@ -using System.IO; -using FilterLists.Api.DependencyInjection.Extensions; +using FilterLists.Api.DependencyInjection.Extensions; using FilterLists.Services.DependencyInjection.Extensions; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.HttpOverrides; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; -using Microsoft.Extensions.PlatformAbstractions; -using Swashbuckle.AspNetCore.Swagger; namespace FilterLists.Api { @@ -23,25 +20,6 @@ public void ConfigureServices(IServiceCollection services) { services.AddFilterListsServices(Configuration); services.AddFilterListsApi(); - services.AddSwaggerGen(c => - { - c.SwaggerDoc("v1", - new Info - { - Title = "FilterLists API", - Version = "v1", - Description = - "FilterLists is the independent and comprehensive directory of all public filter and hosts lists for advertisements, trackers, malware, and annoyances.", - Contact = new Contact {Url = "https://filterlists.com/contact/"}, - License = new License - { - Name = "Use under GPL-3.0", - Url = "https://github.com/collinbarrett/FilterLists/blob/master/LICENSE" - } - }); - c.IncludeXmlComments(Path.Combine(PlatformServices.Default.Application.ApplicationBasePath, - "FilterLists.Api.xml")); - }); } public void Configure(IApplicationBuilder app)