Conversation
WalkthroughThe changes introduce new validation and cleanup logic to the signup process, focusing on preventing duplicate user registration and ensuring signup tokens are invalidated after use. Repository interfaces are extended with new methods for existence checks and token deletion. The Changes
Sequence Diagram(s)sequenceDiagram
participant Client
participant SignUpUsecaseImpl
participant JwtResolver
participant SignupTokenRepository
participant UserRegisterService
participant OAuthInfoRepository
Client->>SignUpUsecaseImpl: register(command)
SignUpUsecaseImpl->>JwtResolver: resolveSignupToken(command.token)
JwtResolver-->>SignUpUsecaseImpl: SignupTokenPayload
SignUpUsecaseImpl->>SignupTokenRepository: findUnExpiredSignupToken(token)
SignupTokenRepository-->>SignUpUsecaseImpl: SignupToken
SignUpUsecaseImpl->>UserRegisterService: validateExistingUser(providerId, socialProvider)
UserRegisterService->>OAuthInfoRepository: existsByProviderIdAndProvider(providerId, socialProvider)
OAuthInfoRepository-->>UserRegisterService: Boolean
UserRegisterService-->>SignUpUsecaseImpl: (throws if exists)
SignUpUsecaseImpl->>UserRegisterService: registerUser(...)
UserRegisterService-->>SignUpUsecaseImpl: User
SignUpUsecaseImpl->>SignupTokenRepository: deleteByToken(token)
SignUpUsecaseImpl-->>Client: SignupUserResponse
Poem
📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
Note 🎁 Summarized by CodeRabbit FreeYour organization is on the Free plan. CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please upgrade your subscription to CodeRabbit Pro by visiting https://app.coderabbit.ai/login. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Join our Discord community for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
작업내역
Summary by CodeRabbit
New Features
Bug Fixes
Tests