-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathAuthService.java
35 lines (29 loc) · 1.18 KB
/
AuthService.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package com.debatetimer.service.auth;
import com.debatetimer.client.oauth.OAuthClient;
import com.debatetimer.domain.member.Member;
import com.debatetimer.dto.member.MemberCreateRequest;
import com.debatetimer.dto.member.MemberInfo;
import com.debatetimer.dto.member.OAuthToken;
import com.debatetimer.exception.custom.DTClientErrorException;
import com.debatetimer.exception.errorcode.ClientErrorCode;
import com.debatetimer.repository.member.MemberRepository;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@Service
@RequiredArgsConstructor
public class AuthService {
private final OAuthClient oauthClient;
private final MemberRepository memberRepository;
public MemberInfo getMemberInfo(MemberCreateRequest request) {
OAuthToken oauthToken = oauthClient.requestToken(request);
return oauthClient.requestMemberInfo(oauthToken);
}
public Member getMember(String email) {
return memberRepository.getByEmail(email);
}
public void logout(Member member, String email) {
if (!member.isSameMember(email)) {
throw new DTClientErrorException(ClientErrorCode.UNAUTHORIZED_MEMBER);
}
}
}