Bit.Core.Identity.JwtBearerSignInManager.SignInOrTwoFactorAsync C# (CSharp) Method

SignInOrTwoFactorAsync() private method

private SignInOrTwoFactorAsync ( User user ) : Task
user User
return Task
        private async Task<JwtBearerSignInResult> SignInOrTwoFactorAsync(User user)
        {
            if(UserManager.SupportsUserTwoFactor &&
                await UserManager.GetTwoFactorEnabledAsync(user) &&
                (await UserManager.GetValidTwoFactorProvidersAsync(user)).Count > 0)
            {
                var twoFactorToken = await SignInAsync(user, true);

                var twoFactorResult = JwtBearerSignInResult.TwoFactorRequired;
                twoFactorResult.Token = twoFactorToken;
                twoFactorResult.User = user;

                return twoFactorResult;
            }

            var token = await SignInAsync(user, false);

            var result = JwtBearerSignInResult.Success;
            result.Token = token;
            result.User = user;

            return result;
        }
    }