Example #1
0
        private string GetAuthProviderByUserId(IRedisClientFacade redis, string provider, string userId)
        {
            var idx             = IndexProviderToUserIdHash(provider);
            var oAuthProviderId = redis.GetValueFromHash(idx, userId);

            return(oAuthProviderId);
        }
Example #2
0
        private UserAuth GetUserAuthByUserName(IRedisClientFacade redis, string userNameOrEmail)
        {
            var isEmail = userNameOrEmail.Contains("@");
            var userId  = isEmail
                ? redis.GetValueFromHash(IndexEmailToUserId, userNameOrEmail)
                : redis.GetValueFromHash(IndexUserNameToUserId, userNameOrEmail);

            return(userId == null ? null : redis.As <UserAuth>().GetById(userId));
        }
Example #3
0
        private UserAuth GetUserAuth(IRedisClientFacade redis, string userAuthId)
        {
            long longId;

            if (userAuthId == null || !long.TryParse(userAuthId, out longId))
            {
                return(null);
            }

            return(redis.As <UserAuth>().GetById(longId));
        }
 private void AssertNoExistingUser(IRedisClientFacade redis, UserAuth newUser, UserAuth exceptForExistingUser = null)
 {
     if (newUser.UserName != null)
     {
         var existingUser = GetUserAuthByUserName(redis, newUser.UserName);
         if (existingUser != null
             && (exceptForExistingUser == null || existingUser.Id != exceptForExistingUser.Id))
                 throw new ArgumentException("User {0} already exists".Fmt(newUser.UserName));
     }
     if (newUser.Email != null)
     {
         var existingUser = GetUserAuthByUserName(redis, newUser.Email);
         if (existingUser != null
             && (exceptForExistingUser == null || existingUser.Id != exceptForExistingUser.Id))
                 throw new ArgumentException("Email {0} already exists".Fmt(newUser.Email));
     }
 }
Example #5
0
 private void AssertNoExistingUser(IRedisClientFacade redis, UserAuth newUser, UserAuth exceptForExistingUser = null)
 {
     if (newUser.UserName != null)
     {
         var existingUser = GetUserAuthByUserName(redis, newUser.UserName);
         if (existingUser != null &&
             (exceptForExistingUser == null || existingUser.Id != exceptForExistingUser.Id))
         {
             throw new ArgumentException("User {0} already exists".Fmt(newUser.UserName));
         }
     }
     if (newUser.Email != null)
     {
         var existingUser = GetUserAuthByUserName(redis, newUser.Email);
         if (existingUser != null &&
             (exceptForExistingUser == null || existingUser.Id != exceptForExistingUser.Id))
         {
             throw new ArgumentException("Email {0} already exists".Fmt(newUser.Email));
         }
     }
 }
Example #6
0
        private UserAuth GetUserAuth(IRedisClientFacade redis, IAuthSession authSession, IOAuthTokens tokens)
        {
            if (!authSession.UserAuthId.IsNullOrEmpty())
            {
                var userAuth = GetUserAuth(redis, authSession.UserAuthId);
                if (userAuth != null)
                {
                    return(userAuth);
                }
            }
            if (!authSession.UserAuthName.IsNullOrEmpty())
            {
                var userAuth = GetUserAuthByUserName(authSession.UserAuthName);
                if (userAuth != null)
                {
                    return(userAuth);
                }
            }

            if (tokens == null || tokens.Provider.IsNullOrEmpty() || tokens.UserId.IsNullOrEmpty())
            {
                return(null);
            }

            var oAuthProviderId = GetAuthProviderByUserId(redis, tokens.Provider, tokens.UserId);

            if (!oAuthProviderId.IsNullOrEmpty())
            {
                var oauthProvider = redis.As <UserOAuthProvider>().GetById(oAuthProviderId);
                if (oauthProvider != null)
                {
                    return(redis.As <UserAuth>().GetById(oauthProvider.UserAuthId));
                }
            }
            return(null);
        }
 private string GetAuthProviderByUserId(IRedisClientFacade redis, string provider, string userId)
 {
     var idx = IndexProviderToUserIdHash(provider);
     var oAuthProviderId = redis.GetValueFromHash(idx, userId);
     return oAuthProviderId;
 }
        private UserAuth GetUserAuth(IRedisClientFacade redis, IAuthSession authSession, IOAuthTokens tokens)
        {
            if (!authSession.UserAuthId.IsNullOrEmpty())
            {
                var userAuth = GetUserAuth(redis, authSession.UserAuthId);
                if (userAuth != null) return userAuth;
            }
            if (!authSession.UserAuthName.IsNullOrEmpty())
            {
                var userAuth = GetUserAuthByUserName(authSession.UserAuthName);
                if (userAuth != null) return userAuth;
            }

            if (tokens == null || tokens.Provider.IsNullOrEmpty() || tokens.UserId.IsNullOrEmpty()) return null;

            var oAuthProviderId = GetAuthProviderByUserId(redis, tokens.Provider, tokens.UserId);
            if (!oAuthProviderId.IsNullOrEmpty())
            {
                var oauthProvider = redis.As<UserOAuthProvider>().GetById(oAuthProviderId);
                if (oauthProvider != null)
                    return redis.As<UserAuth>().GetById(oauthProvider.UserAuthId);
            }
            return null;
        } 
        private UserAuth GetUserAuth(IRedisClientFacade redis, string userAuthId)
        {
            long longId;
            if (userAuthId == null || !long.TryParse(userAuthId, out longId)) return null;

            return redis.As<UserAuth>().GetById(longId);
        }
        private UserAuth GetUserAuthByUserName(IRedisClientFacade redis, string userNameOrEmail)
        {
            var isEmail = userNameOrEmail.Contains("@");
            var userId = isEmail
                ? redis.GetValueFromHash(IndexEmailToUserId, userNameOrEmail)
                : redis.GetValueFromHash(IndexUserNameToUserId, userNameOrEmail);

            return userId == null ? null : redis.As<UserAuth>().GetById(userId);
        }