-
Notifications
You must be signed in to change notification settings - Fork 0
Closed
Description
🏷️ 상위 작업 (Ticket Number)
PRODUCT-119
🚀 구현 내용
- 이미지 도메인 객체를 추가하여,
ExternalImageStorage의 책임을 분할한다.
public class Image {
private final MultipartFile multipartFile;
private final ImageDomain domain;
public Image(MultipartFile multipartFile, ImageDomain domain) {
// multipartFile 이미지 유효성 검사 (파일 확장자 검사, )
}
}
@Getter
@Embeddable
public ImageKey {
private final String imageKey;
....
}public class ImageStorage {
public ImageKey upload(Image image) {
// 현재 PR의 ExternalImageStorage , CachePreSignedUrlStorage를 이용한 로직
}
}
public class ExternalImageStorage {
public ImageKey upload(Image image) {
// 이미지 key 생성 로직
// FileClient 를 통한 업로드
}
}
public class FileClient { // 이름은 고민 중입니다...
public String upload(MultipartFile file, String key) {
// AWS SDK 의 s3Client를 이용해 파일 업로드
}
}📅 마감일
No response