public ExternalAuthenticationGrant( UserManager <TUser> userManager, IProviderRepository providerRepository, IFacebookAuthProvider facebookAuthProvider, IGoogleAuthProvider googleAuthProvider, ITwitterAuthProvider twitterAuthProvider, ILinkedInAuthProvider linkeInAuthProvider, IGitHubAuthProvider githubAuthProvider, INonEmailUserProcessor nonEmailUserProcessor, IEmailUserProcessor emailUserProcessor ) { _userManager = userManager ?? throw new ArgumentNullException(nameof(userManager)); _providerRepository = providerRepository ?? throw new ArgumentNullException(nameof(providerRepository)); _facebookAuthProvider = facebookAuthProvider ?? throw new ArgumentNullException(nameof(facebookAuthProvider)); _googleAuthProvider = googleAuthProvider ?? throw new ArgumentNullException(nameof(googleAuthProvider)); _twitterAuthProvider = twitterAuthProvider ?? throw new ArgumentNullException(nameof(twitterAuthProvider)); _linkedAuthProvider = linkeInAuthProvider ?? throw new ArgumentNullException(nameof(linkeInAuthProvider)); _githubAuthProvider = githubAuthProvider ?? throw new ArgumentNullException(nameof(githubAuthProvider)); _nonEmailUserProcessor = nonEmailUserProcessor ?? throw new ArgumentNullException(nameof(nonEmailUserProcessor)); _emailUserProcessor = emailUserProcessor ?? throw new ArgumentNullException(nameof(nonEmailUserProcessor)); _providers = new Dictionary <ProviderType, IExternalAuthProvider> { { ProviderType.Facebook, _facebookAuthProvider }, { ProviderType.Google, _googleAuthProvider }, { ProviderType.Twitter, _twitterAuthProvider }, { ProviderType.LinkedIn, _linkedAuthProvider } }; }
public AccountService( UserManager <Player> userManager, IJwtProvider jwtProvider, IGoogleAuthProvider googleAuthProvider, IFacebookAuthProvider facebookAuthProvider, IGitHubAuthProvider gitHubAuthProvider, IBaseUnitOfWork unitOfWork) : base(unitOfWork) { _userManager = userManager; _jwtProvider = jwtProvider; _googleAuthProvider = googleAuthProvider; _facebookAuthProvider = facebookAuthProvider; _gitHubAuthProvider = gitHubAuthProvider; }