Skip to content

Commit 71db1dd

Browse files
committed
Simplify IoC container setup
1 parent 61ab4a9 commit 71db1dd

File tree

1 file changed

+5
-11
lines changed

1 file changed

+5
-11
lines changed

src/JsonApiDotNetCore.OpenApi/ServiceCollectionExtensions.cs

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
1-
using JsonApiDotNetCore.Middleware;
21
using JsonApiDotNetCore.OpenApi.SwaggerComponents;
32
using Microsoft.AspNetCore.Mvc;
43
using Microsoft.AspNetCore.Mvc.ApiExplorer;
5-
using Microsoft.AspNetCore.Mvc.Infrastructure;
64
using Microsoft.Extensions.DependencyInjection;
75
using Microsoft.Extensions.DependencyInjection.Extensions;
86
using Microsoft.Extensions.Options;
@@ -36,18 +34,14 @@ public static void AddOpenApi(this IServiceCollection services, IMvcCoreBuilder
3634
private static void AddCustomApiExplorer(IServiceCollection services, IMvcCoreBuilder mvcBuilder)
3735
{
3836
services.TryAddSingleton<ResourceFieldValidationMetadataProvider>();
37+
services.AddSingleton<JsonApiActionDescriptorCollectionProvider>();
3938

40-
services.TryAddSingleton<IApiDescriptionGroupCollectionProvider>(provider =>
39+
services.TryAddSingleton<IApiDescriptionGroupCollectionProvider>(serviceProvider =>
4140
{
42-
var controllerResourceMapping = provider.GetRequiredService<IControllerResourceMapping>();
43-
var actionDescriptorCollectionProvider = provider.GetRequiredService<IActionDescriptorCollectionProvider>();
44-
var apiDescriptionProviders = provider.GetRequiredService<IEnumerable<IApiDescriptionProvider>>();
45-
var resourceFieldValidationMetadataProvider = provider.GetRequiredService<ResourceFieldValidationMetadataProvider>();
41+
var actionDescriptorCollectionProvider = serviceProvider.GetRequiredService<JsonApiActionDescriptorCollectionProvider>();
42+
var apiDescriptionProviders = serviceProvider.GetRequiredService<IEnumerable<IApiDescriptionProvider>>();
4643

47-
JsonApiActionDescriptorCollectionProvider jsonApiActionDescriptorCollectionProvider =
48-
new(controllerResourceMapping, actionDescriptorCollectionProvider, resourceFieldValidationMetadataProvider);
49-
50-
return new ApiDescriptionGroupCollectionProvider(jsonApiActionDescriptorCollectionProvider, apiDescriptionProviders);
44+
return new ApiDescriptionGroupCollectionProvider(actionDescriptorCollectionProvider, apiDescriptionProviders);
5145
});
5246

5347
mvcBuilder.AddApiExplorer();

0 commit comments

Comments
 (0)