From dc497c3c857c19551f0b942448f7ca6a198bf2d3 Mon Sep 17 00:00:00 2001 From: ruibaby Date: Mon, 25 Nov 2019 21:26:51 +0800 Subject: [PATCH] feat: support set style rule for tencent cos. --- .../handler/file/TencentYunFileHandler.java | 6 +++-- .../halo/app/listener/StartedListener.java | 3 ++- .../model/properties/AliYunProperties.java | 4 ++-- .../properties/TencentYunProperties.java | 24 +++++++++++++------ 4 files changed, 25 insertions(+), 12 deletions(-) diff --git a/src/main/java/run/halo/app/handler/file/TencentYunFileHandler.java b/src/main/java/run/halo/app/handler/file/TencentYunFileHandler.java index ebdb93cf0..99223e678 100644 --- a/src/main/java/run/halo/app/handler/file/TencentYunFileHandler.java +++ b/src/main/java/run/halo/app/handler/file/TencentYunFileHandler.java @@ -54,6 +54,8 @@ public class TencentYunFileHandler implements FileHandler { String secretKey = optionService.getByPropertyOfNonNull(TencentYunProperties.COS_SECRET_KEY).toString(); String bucketName = optionService.getByPropertyOfNonNull(TencentYunProperties.COS_BUCKET_NAME).toString(); String source = StringUtils.join(protocol, bucketName, ".cos." + region + ".myqcloud.com"); + String styleRule = optionService.getByPropertyOrDefault(TencentYunProperties.COS_STYLE_RULE, String.class, ""); + String thumbnailStyleRule = optionService.getByPropertyOrDefault(TencentYunProperties.COS_THUMBNAIL_STYLE_RULE, String.class, ""); //get file attribute long size = file.getSize(); @@ -90,7 +92,7 @@ public class TencentYunFileHandler implements FileHandler { // Response result UploadResult uploadResult = new UploadResult(); uploadResult.setFilename(basename); - uploadResult.setFilePath(filePath); + uploadResult.setFilePath(StringUtils.isBlank(styleRule) ? filePath : filePath + styleRule); uploadResult.setKey(upFilePath); uploadResult.setMediaType(MediaType.valueOf(Objects.requireNonNull(file.getContentType()))); uploadResult.setSuffix(extension); @@ -101,7 +103,7 @@ public class TencentYunFileHandler implements FileHandler { BufferedImage image = ImageIO.read(file.getInputStream()); uploadResult.setWidth(image.getWidth()); uploadResult.setHeight(image.getHeight()); - uploadResult.setThumbPath(filePath); + uploadResult.setThumbPath(StringUtils.isBlank(thumbnailStyleRule) ? filePath : filePath + thumbnailStyleRule); } return uploadResult; diff --git a/src/main/java/run/halo/app/listener/StartedListener.java b/src/main/java/run/halo/app/listener/StartedListener.java index 7db3b567a..7ee648546 100644 --- a/src/main/java/run/halo/app/listener/StartedListener.java +++ b/src/main/java/run/halo/app/listener/StartedListener.java @@ -54,8 +54,9 @@ public class StartedListener implements ApplicationListener