Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BE] OpenIdUserInfoProvider 클래스를 제거하고, 비즈니스 로직을 OpenIdClient에 구현하도록 변경한다. #950

Closed
seokjin8678 opened this issue May 7, 2024 · 0 comments · Fixed by #951
Assignees
Labels
BE 백엔드에 관련된 작업 ⚙️ 리팩터링 리팩터링에 관련된 작업

Comments

@seokjin8678
Copy link
Collaborator

✨ 세부 내용

OpenIdUserInfoProvider 인터페이스의 구조는 다음과 같습니다.

public interface OpenIdUserInfoProvider {

    UserInfo provide(String idToken);
}

그리고 OpenIdUserInfoProvider를 의존하는 구현체인 KakaoOpenIdClient의 구현은 다음과 같습니다.

@Component
@RequiredArgsConstructor
public class KakaoOpenIdClient implements OpenIdClient {

    private final KakaoOpenIdUserInfoProvider kakaoIdTokenUserInfoProvider;

    @Override
    public UserInfo getUserInfo(String idToken) {
        return kakaoIdTokenUserInfoProvider.provide(idToken);
    }

    @Override
    public SocialType getSocialType() {
        return SocialType.KAKAO;
    }
}

KakaoOpenIdClientgetUserInfo() 메서드의 호출은 단순히 KakaoOpenIdUserInfoProviderprovide() 메서드를 위임하는 것이 전부입니다.

하지만 위임을 해서 얻을 수 있는 장점이 보이지 않으므로, KakaoOpenIdUserInfoProvider에서 구현하고 있는 비즈니스 로직을 KakaoOpenIdClient로 옮기는 것이 좋을 것 같습니다.

⏰ 예상 소요 시간

30분

@seokjin8678 seokjin8678 added BE 백엔드에 관련된 작업 ⚙️ 리팩터링 리팩터링에 관련된 작업 labels May 7, 2024
@seokjin8678 seokjin8678 self-assigned this May 7, 2024
seokjin8678 added a commit that referenced this issue May 15, 2024
…950) (#951)

refactor: OpenIdUserInfoProvider 삭제 및 OpenIdClient에 비즈니스 로직 구현

- 불필요한 depth 제거
@github-project-automation github-project-automation bot moved this from Todo to Done in 2023-festa-go May 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
BE 백엔드에 관련된 작업 ⚙️ 리팩터링 리팩터링에 관련된 작업
Projects
Status: Done
1 participant