Skip to content

Commit 0b733e6

Browse files
committed
(TP-77) feat: validateCode and register methods
1 parent a66591d commit 0b733e6

2 files changed

Lines changed: 25 additions & 1 deletion

File tree

rentplace/src/main/java/kattsyn/dev/rentplace/services/AuthService.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,15 @@
44
import kattsyn.dev.rentplace.auth.JwtAuthentication;
55
import kattsyn.dev.rentplace.dtos.JwtRequest;
66
import kattsyn.dev.rentplace.dtos.JwtResponse;
7+
import kattsyn.dev.rentplace.dtos.RegisterRequest;
78
import kattsyn.dev.rentplace.dtos.UserDTO;
89

910
public interface AuthService {
1011

1112
JwtResponse login(JwtRequest authRequest) throws AuthException;
1213

14+
JwtResponse register(RegisterRequest registerRequest) throws AuthException;
15+
1316
JwtResponse getAccessToken(String refreshToken);
1417

1518
JwtResponse refresh(String refreshToken) throws AuthException;
@@ -18,4 +21,5 @@ public interface AuthService {
1821

1922
UserDTO getUserInfo() throws AuthException;
2023

24+
boolean validateCode(JwtRequest request) throws AuthException;
2125
}

rentplace/src/main/java/kattsyn/dev/rentplace/services/impl/AuthServiceImpl.java

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import kattsyn.dev.rentplace.auth.JwtAuthentication;
77
import kattsyn.dev.rentplace.dtos.JwtRequest;
88
import kattsyn.dev.rentplace.dtos.JwtResponse;
9+
import kattsyn.dev.rentplace.dtos.RegisterRequest;
910
import kattsyn.dev.rentplace.dtos.UserDTO;
1011
import kattsyn.dev.rentplace.entities.User;
1112
import kattsyn.dev.rentplace.services.AuthService;
@@ -34,10 +35,22 @@ public class AuthServiceImpl implements AuthService {
3435
private final JwtProvider jwtProvider;
3536
private final VerificationCodeService verificationCodeService;
3637

38+
@Override
39+
public JwtResponse register(@NonNull RegisterRequest registerRequest) throws AuthException {
40+
User user = userService.createUserWithRegisterRequest(registerRequest);
41+
42+
return getJwtResponse(user, registerRequest.getEmail(), registerRequest.getCode());
43+
}
44+
45+
@Override
3746
public JwtResponse login(@NonNull JwtRequest authRequest) throws AuthException {
3847
final User user = userService.getUserByEmail(authRequest.getEmail());
3948

40-
if (verificationCodeService.validateCode(authRequest.getEmail(), authRequest.getCode())) {
49+
return getJwtResponse(user, authRequest.getEmail(), authRequest.getCode());
50+
}
51+
52+
private JwtResponse getJwtResponse(User user, String email, String code) throws AuthException {
53+
if (verificationCodeService.validateCode(email, code)) {
4154
final String accessToken = jwtProvider.generateAccessToken(user);
4255
final String refreshToken = jwtProvider.generateRefreshToken(user);
4356
refreshStorage.put(user.getEmail(), refreshToken);
@@ -47,6 +60,11 @@ public JwtResponse login(@NonNull JwtRequest authRequest) throws AuthException {
4760
}
4861
}
4962

63+
@Override
64+
public boolean validateCode(JwtRequest request) {
65+
return verificationCodeService.validateCode(request.getEmail(), request.getCode());
66+
}
67+
5068
public JwtResponse getAccessToken(@NonNull String refreshToken) {
5169
if (jwtProvider.validateRefreshToken(refreshToken)) {
5270
final Claims claims = jwtProvider.getRefreshClaims(refreshToken);
@@ -87,6 +105,8 @@ public UserDTO getUserInfo() throws AuthException {
87105
return userService.getUserDTOByEmail(email);
88106
}
89107

108+
109+
90110
public JwtAuthentication getAuthInfo() {
91111
return (JwtAuthentication) SecurityContextHolder.getContext().getAuthentication();
92112
}

0 commit comments

Comments
 (0)