S3Directory.java
package qwerty.chaekit.global.enums;
import lombok.Getter;
import java.util.List;
@Getter
public enum S3Directory {
EBOOK("ebook/", List.of(".epub"), megaByte(10)),
EBOOK_COVER_IMAGE("ebook-cover-image/", defaultImageExtensions(), megaByte(5)),
GROUP_IMAGE("group-image/", defaultImageExtensions(), megaByte(5)),
PROFILE_IMAGE("profile-image/", defaultImageExtensions(), megaByte(5)),;
private final String path;
private final List<String> allowedExtensions;
private final long maxSize;
S3Directory(String path, List<String> allowedExtensions, long maxSize) {
this.path = path;
this.allowedExtensions = allowedExtensions;
this.maxSize = maxSize;
}
private static List<String> defaultImageExtensions() {
return List.of(".jpg", ".jpeg", ".png", ".gif", ".bmp", ".tiff", ".webp");
}
private static long megaByte(int size) {
return 1024 * 1024L * size;
}
}