public async Task <VsfResponse> GetUser(string userId) { using (await UserLocker.LockAsync(userId)) { return(new VsfSuccessResponse <VsfUser>(await _userAdapter.GetUserById(userId))); } }
public async Task <VsfResponse> UpdateUser(string userId, UserUpdateModel userUpdateModel) { using (await UserLocker.LockAsync(userId)) { if (await _userAdapter.UpdateUser(userId, userUpdateModel.Customer)) { return(new VsfSuccessResponse <VsfUser>(await _userAdapter.GetUserById(userId))); } return(new VsfErrorResponse("User update failed.")); } }
public async Task <VsfResponse> ChangePassword(string userId, ChangePasswordModel changePasswordModel) { using (await UserLocker.LockAsync(userId)) { if (!await _userAdapter.ChangePassword(userId, changePasswordModel.CurrentPassword, changePasswordModel.NewPassword)) { return(new VsfErrorResponse("The password doesn't match this account.")); } return(new VsfSuccessResponse <string>("Password changed.")); } }
public async Task <VsfResponse> CreateLoginResponse(UserLoginModel userLoginModel) { var user = await _userAdapter.GetUserByCredentials(userLoginModel.Username, userLoginModel.Password); if (user == null) { return(new VsfErrorResponse("You did not sign in correctly or your account is temporarily disabled.")); } using (await UserLocker.LockAsync(user.Id)) { var userClaims = _userClaimsProvider.GetClaims(user).ToList(); var authToken = await _userTokenProvider.GenerateNewToken(userClaims); var refreshToken = await _userTokenProvider.GenerateNewRefreshToken(userClaims); return(new LoginResponse(authToken, refreshToken)); } }