diff --git a/src/main/java/leets/bookmark/domain/file/application/usecase/FileUseCase.java b/src/main/java/leets/bookmark/domain/file/application/usecase/FileUseCase.java index ec0b1507..fc731be3 100644 --- a/src/main/java/leets/bookmark/domain/file/application/usecase/FileUseCase.java +++ b/src/main/java/leets/bookmark/domain/file/application/usecase/FileUseCase.java @@ -57,7 +57,7 @@ public void saveThumbnailFile(User user, Bookmark bookmark, String thumbnailUrl) String fileName = extractFileNameWithExtension(thumbnailUrl); FileType type = getValidatedFileType(fileName); - String s3UrlResponse = s3UploadService.upload(thumbnailUrl); + String s3UrlResponse = s3UploadService.upload(thumbnailUrl, type); File file = fileMapper.toThumbnailFile(user, bookmark, fileName, s3UrlResponse, type); fileSaveService.save(file); @@ -86,7 +86,7 @@ public void updateThumbnailImage(User user, Bookmark bookmark, String thumbnailU String fileName = extractFileNameWithExtension(thumbnailUrl); FileType type = getValidatedFileType(fileName); - String s3UrlResponse = s3UploadService.upload(thumbnailUrl); + String s3UrlResponse = s3UploadService.upload(thumbnailUrl, type); fileUpdateService.updateThumbnailImage(file, fileName, s3UrlResponse, type); } diff --git a/src/main/java/leets/bookmark/domain/file/domain/service/S3UploadService.java b/src/main/java/leets/bookmark/domain/file/domain/service/S3UploadService.java index 9806fad3..6958603b 100644 --- a/src/main/java/leets/bookmark/domain/file/domain/service/S3UploadService.java +++ b/src/main/java/leets/bookmark/domain/file/domain/service/S3UploadService.java @@ -1,6 +1,7 @@ package leets.bookmark.domain.file.domain.service; import leets.bookmark.domain.file.application.exception.S3UploadException; +import leets.bookmark.domain.file.domain.entity.enums.FileType; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; @@ -28,7 +29,7 @@ public class S3UploadService { private static final DateTimeFormatter FORMATTER = DateTimeFormatter.ofPattern("yyyyMMddHHmmss"); - public String upload(String fileUrl) { + public String upload(String fileUrl, FileType fileType) { try { URL url = URI.create(fileUrl).toURL(); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); @@ -36,7 +37,7 @@ public String upload(String fileUrl) { try (InputStream inputStream = connection.getInputStream()) { - String fileName = generateUrl(fileUrl); + String fileName = generateUrl(fileType); PutObjectRequest putObjectRequest = PutObjectRequest.builder() .bucket(bucket) @@ -54,8 +55,8 @@ public String upload(String fileUrl) { } } - private String generateUrl(String fileName) { - String extension = fileName.substring(fileName.lastIndexOf(".") + 1); - return LocalDateTime.now().format(FORMATTER) + UUID.randomUUID().toString() + "." + extension; + private String generateUrl(FileType fileType) { + String extension = fileType.getExtension(); + return LocalDateTime.now().format(FORMATTER) + UUID.randomUUID().toString() + extension; } }