Skip to content

Commit 0a9886d

Browse files
authored
Review lifecycle of services registered in the DI container (#459)
1 parent 2b60596 commit 0a9886d

File tree

1 file changed

+5
-10
lines changed

1 file changed

+5
-10
lines changed

Src/Fido2.AspNet/Fido2NetLibBuilderExtensions.cs

+5-10
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ public static IFido2NetLibBuilder AddFido2(this IServiceCollection services, ICo
2323

2424
private static void AddServices(this IServiceCollection services)
2525
{
26-
services.AddTransient<IFido2, Fido2>();
26+
services.AddScoped<IFido2, Fido2>();
2727
services.AddSingleton<IMetadataService, NullMetadataService>(); //Default implementation if we choose not to enable MDS
2828
services.TryAddSingleton<ISystemClock, SystemClock>();
2929
}
@@ -42,14 +42,14 @@ public static IFido2NetLibBuilder AddFido2(this IServiceCollection services, Act
4242

4343
public static void AddCachedMetadataService(this IFido2NetLibBuilder builder, Action<IFido2MetadataServiceBuilder> configAction)
4444
{
45-
builder.AddMetadataService<DistributedCacheMetadataService>();
45+
builder.Services.AddScoped<IMetadataService, DistributedCacheMetadataService>();
4646

4747
configAction(new Fido2NetLibBuilder(builder.Services));
4848
}
4949

5050
public static IFido2MetadataServiceBuilder AddFileSystemMetadataRepository(this IFido2MetadataServiceBuilder builder, string directoryPath)
5151
{
52-
builder.Services.AddTransient<IMetadataRepository, FileSystemMetadataRepository>(r =>
52+
builder.Services.AddScoped<IMetadataRepository, FileSystemMetadataRepository>(provider =>
5353
{
5454
return new FileSystemMetadataRepository(directoryPath);
5555
});
@@ -62,7 +62,7 @@ public static IFido2MetadataServiceBuilder AddConformanceMetadataRepository(
6262
HttpClient client = null,
6363
string origin = "")
6464
{
65-
builder.Services.AddTransient<IMetadataRepository>(provider =>
65+
builder.Services.AddScoped<IMetadataRepository>(provider =>
6666
{
6767
return new ConformanceMetadataRepository(client, origin);
6868
});
@@ -80,15 +80,10 @@ public static IFido2MetadataServiceBuilder AddFidoMetadataRepository(this IFido2
8080
if (clientBuilder != null)
8181
clientBuilder(httpClientBuilder);
8282

83-
builder.Services.AddTransient<IMetadataRepository, Fido2MetadataServiceRepository>();
83+
builder.Services.AddScoped<IMetadataRepository, Fido2MetadataServiceRepository>();
8484

8585
return builder;
8686
}
87-
88-
private static void AddMetadataService<TService>(this IFido2NetLibBuilder builder) where TService : class, IMetadataService
89-
{
90-
builder.Services.AddScoped<IMetadataService, TService>();
91-
}
9287
}
9388

9489
public interface IFido2NetLibBuilder

0 commit comments

Comments
 (0)