-
Notifications
You must be signed in to change notification settings - Fork 1
띱 이벤트 관련 엔드포인트 추가 및 S3 파일 저장로직 구현 #33
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
Conversation
📊 Code Coverage Report
|
Test Results246 tests 246 ✅ 8s ⏱️ Results for commit b798cf3. |
Dockerel
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
빡센 구현하시느라 고생많으셨습니다. 저번부터 느꼈는데 구현력이 상당하시네요.
플로우도 제가 이해했던대로 잘 구현된 것 같습니다.
고생하셨습니다!
|
|
||
| String fileUrl = String.format("https://%s.s3.amazonaws.com/%s", bucketName, key); | ||
|
|
||
| log.info("S3 파일 업로드 완료: {} -> {}", file.getOriginalFilename(), fileUrl); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
로그는 나중에 프로덕션 환경에서 확인하기 위해 작성하신건가요?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
넵 맞습니다. 서드파티를 사용하기 때문에 로그 확인용으로 좀 두고 안정성이 확보되면 추후 제거할 예정입니다!
| @Slf4j | ||
| @Service | ||
| @RequiredArgsConstructor | ||
| public class S3FileStorageService implements FileStorageService { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
파일 저장 방식 변경을 염두에 두고 인터페이스 기반으로 개발하신것 좋네요 👍👍
| } | ||
|
|
||
| @Override | ||
| public boolean exists(String fileUrl) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
이 exists 메서드는 용도가 뭔가요? 아직 사용하시진 않은 것으로 보이네요?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
포트를 만들 때 단순 upload만 만드는 것이 아니라 delete와 exists도 함께 만들었습니다. 현재는 upload기능만 사용하지만, 추후 용량 관리 등을 위해 delete를 사용할 경우에 exists도 아마 사용하지 않을까 싶어 확장성으로 고려해 미리 만들어 두었습니다.
최종적으로 사용하지 않는 것으로 결정 날 경우에 제거할 예정입니다!
| this.interactions.add(Interaction.builder() | ||
| .actorId(this.requesterId) | ||
| .actorRole(ActorRole.REQUESTER) | ||
| .actionType(ActionType.REQUEST_REVISION) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
피드백에 대해 reject한 부분인 것으로 이해했는데 혹시 REQUEST_REVISION은 무슨 뜻인가요?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
이 부분은 저도 노션에 정의된 상태별 설명을 참고하였는데, 제출된 결과물에 수정을 요청함 (거절) 이라고 하더라구요.
사진 하나당 거절을 총 2번 할 수 있는데, 최초의 거절은 사진에 대한 추가 질문을 요청하는 경우에 발생하는 Interaction의 status이고 REQUEST_REVISION은 추가 질문에 대한 응답을 확인한 후 다른 사진을 요청할 때의 Interaction의 status입니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
목과 스텁 테스트로 빡세게 검증하신것 대단합니다 👍👍
#️⃣ 연관된 이슈
📚 배경
📝 작업 내용
도메인 레이어 비즈니스 로직 구현
파일 저장 시스템 구현
서비스 레이어 구현
📸 스크린샷
💬 리뷰 요구사항
✏ Git Close
close #29