using Microsoft.AspNetCore.Identity;
using Microsoft.Extensions.DependencyInjection;
using Umbraco.Core.BackOffice;
namespace Umbraco.Extensions
{
public static class IdentityBuilderExtensions
{
///
/// Adds a implementation for
///
/// The type of the user manager to add.
///
/// The current instance.
public static IdentityBuilder AddUserManager(this IdentityBuilder identityBuilder) where TUserManager : UserManager, TInterface
{
identityBuilder.AddUserManager();
identityBuilder.Services.AddScoped(typeof(TInterface), typeof(TUserManager));
return identityBuilder;
}
///
/// Adds a implementation for
///
///
///
///
///
public static IdentityBuilder AddSignInManager(this IdentityBuilder identityBuilder) where TSignInManager : SignInManager, TInterface
{
identityBuilder.AddSignInManager();
identityBuilder.Services.AddScoped(typeof(TInterface), typeof(TSignInManager));
return identityBuilder;
}
}
}