public AccountController(IAccountManager <UserType, RoleType> accountManager, IConvertUserDescriptor <UserDescriptorType, UserType> userDescriptorUserConverter, IConvertUser <UserType, UserCreationType> userUserCreationConverter, IConvertRoleDescriptor <RoleDescriptorType, RoleType> roleDescriptorRoleConverter, IConvertRole <RoleType, RoleCreationType> roleRoleCreationConverter) { this.accountManager = accountManager; this.userDescriptorUserConverter = userDescriptorUserConverter; this.userUserCreationConverter = userUserCreationConverter; this.roleDescriptorRoleConverter = roleDescriptorRoleConverter; this.roleRoleCreationConverter = roleRoleCreationConverter; }
public static BearerIdentityMvcBuilder <UserDescriptorType, UserType, UserCreationType, RoleDescriptorType, RoleType, RoleCreationType> AddAccountControllersWithConverters <UserDescriptorType, UserType, UserCreationType, RoleDescriptorType, RoleType, RoleCreationType>(this IMvcBuilder mvcBuilder, IConvertUserDescriptor <UserDescriptorType, UserType> userDescriptorUserConverter, IConvertUser <UserType, UserCreationType> userUserCreationConverter, IConvertRoleDescriptor <RoleDescriptorType, RoleType> roleDescriptorRoleConverter, IConvertRole <RoleType, RoleCreationType> roleRoleCreationConverter) where UserDescriptorType : IUserDescriptor where UserType : IUserEntity where RoleDescriptorType : IRoleDescriptor { var services = mvcBuilder.Services; services.AddSingleton(userDescriptorUserConverter); services.AddSingleton(userUserCreationConverter); services.AddSingleton(roleDescriptorRoleConverter); services.AddSingleton(roleRoleCreationConverter); var builder = AddAccountControllers <UserDescriptorType, UserType, UserCreationType, RoleDescriptorType, RoleType, RoleCreationType>(mvcBuilder); return(builder); }