Skip to content

Commit bb2a007

Browse files
CopilotJamesNK
andcommitted
Instantiate metrics classes directly instead of registering in DI
Co-authored-by: JamesNK <[email protected]>
1 parent 749b76d commit bb2a007

File tree

6 files changed

+8
-8
lines changed

6 files changed

+8
-8
lines changed

src/Identity/Core/src/IdentityBuilderExtensions.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,6 @@ private static void AddSignInManagerDeps(this IdentityBuilder builder)
4545
builder.Services.AddScoped(typeof(ISecurityStampValidator), typeof(SecurityStampValidator<>).MakeGenericType(builder.UserType));
4646
builder.Services.AddScoped(typeof(ITwoFactorSecurityStampValidator), typeof(TwoFactorSecurityStampValidator<>).MakeGenericType(builder.UserType));
4747
builder.Services.TryAddEnumerable(ServiceDescriptor.Singleton<IPostConfigureOptions<SecurityStampValidatorOptions>, PostConfigureSecurityStampValidatorOptions>());
48-
builder.Services.TryAddSingleton<SignInManagerMetrics>();
4948
}
5049

5150
/// <summary>

src/Identity/Core/src/IdentityServiceCollectionExtensions.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,6 @@ public static class IdentityServiceCollectionExtensions
103103
services.TryAddScoped<IUserClaimsPrincipalFactory<TUser>, UserClaimsPrincipalFactory<TUser, TRole>>();
104104
services.TryAddScoped<IUserConfirmation<TUser>, DefaultUserConfirmation<TUser>>();
105105
services.TryAddScoped<IPasskeyHandler<TUser>, PasskeyHandler<TUser>>();
106-
services.TryAddSingleton<SignInManagerMetrics>();
107106
services.TryAddScoped<UserManager<TUser>>();
108107
services.TryAddScoped<SignInManager<TUser>>();
109108
services.TryAddScoped<RoleManager<TRole>>();

src/Identity/Core/src/SignInManager.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33

44
using System.Diagnostics;
55
using System.Diagnostics.CodeAnalysis;
6+
using System.Diagnostics.Metrics;
67
using System.Linq;
78
using System.Security.Claims;
89
using System.Text;
@@ -63,7 +64,9 @@ public SignInManager(UserManager<TUser> userManager,
6364
Logger = logger;
6465
_schemes = schemes;
6566
_confirmation = confirmation;
66-
_metrics = userManager.ServiceProvider?.GetService<SignInManagerMetrics>();
67+
68+
var meterFactory = userManager.ServiceProvider?.GetService<IMeterFactory>();
69+
_metrics = meterFactory != null ? new SignInManagerMetrics(meterFactory) : null;
6770
_passkeyHandler = userManager.ServiceProvider?.GetService<IPasskeyHandler<TUser>>();
6871
}
6972

src/Identity/Extensions.Core/src/IdentityServiceCollectionExtensions.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,6 @@ public static IdentityBuilder AddIdentityCore<TUser>(this IServiceCollection ser
4545
// No interface for the error describer so we can add errors without rev'ing the interface
4646
services.TryAddScoped<IdentityErrorDescriber>();
4747
services.TryAddScoped<IUserClaimsPrincipalFactory<TUser>, UserClaimsPrincipalFactory<TUser>>();
48-
services.TryAddSingleton<UserManagerMetrics>();
4948
services.TryAddScoped<UserManager<TUser>>();
5049

5150
if (setupAction != null)

src/Identity/Extensions.Core/src/UserManager.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
using System.Collections.Generic;
66
using System.Diagnostics;
77
using System.Diagnostics.CodeAnalysis;
8+
using System.Diagnostics.Metrics;
89
using System.Linq;
910
using System.Runtime.InteropServices;
1011
using System.Security.Claims;
@@ -85,7 +86,9 @@ public UserManager(IUserStore<TUser> store,
8586
ErrorDescriber = errors;
8687
Logger = logger;
8788
ServiceProvider = services;
88-
_metrics = services?.GetService<UserManagerMetrics>();
89+
90+
var meterFactory = services?.GetService<IMeterFactory>();
91+
_metrics = meterFactory != null ? new UserManagerMetrics(meterFactory) : null;
8992

9093
if (userValidators != null)
9194
{

src/Identity/test/Shared/MockHelpers.cs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ public static Mock<UserManager<TUser>> MockUserManager<TUser>(
2222
var services = new ServiceCollection();
2323
if (meterFactory != null)
2424
{
25-
services.AddSingleton<SignInManagerMetrics>();
2625
services.AddSingleton(meterFactory);
2726
}
2827
if (passkeyHandler != null)
@@ -61,8 +60,6 @@ public static UserManager<TUser> TestUserManager<TUser>(IUserStore<TUser> store
6160
var services = new ServiceCollection();
6261
if (meterFactory != null)
6362
{
64-
services.AddSingleton<UserManagerMetrics>();
65-
services.AddSingleton<SignInManagerMetrics>();
6663
services.AddSingleton(meterFactory);
6764
}
6865
var userManager = new UserManager<TUser>(store, options.Object, new PasswordHasher<TUser>(),

0 commit comments

Comments
 (0)