From 4d8236afa1ed5f9a4b87f53804a9df5e59aeb5ca Mon Sep 17 00:00:00 2001 From: Jerry Yan <792602257@qq.com> Date: Fri, 13 Jun 2025 15:00:20 +0800 Subject: [PATCH] =?UTF-8?q?=E9=80=9A=E8=BF=87identity=E5=AE=9A=E4=B9=89?= =?UTF-8?q?=E6=98=AF=E5=90=A6=E7=9B=B8=E5=90=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/ycwl/basic/storage/adapters/AliOssAdapter.java | 5 +++++ .../java/com/ycwl/basic/storage/adapters/AwsOssAdapter.java | 5 +++++ .../com/ycwl/basic/storage/adapters/IStorageAdapter.java | 1 + .../ycwl/basic/storage/adapters/LocalStorageAdapter.java | 5 +++++ .../com/ycwl/basic/storage/entity/AliOssStorageConfig.java | 6 ++++++ .../com/ycwl/basic/storage/entity/AwsOssStorageConfig.java | 6 ++++++ .../java/com/ycwl/basic/storage/entity/StorageConfig.java | 1 + 7 files changed, 29 insertions(+) diff --git a/src/main/java/com/ycwl/basic/storage/adapters/AliOssAdapter.java b/src/main/java/com/ycwl/basic/storage/adapters/AliOssAdapter.java index 8b7dd2c..4b6c170 100644 --- a/src/main/java/com/ycwl/basic/storage/adapters/AliOssAdapter.java +++ b/src/main/java/com/ycwl/basic/storage/adapters/AliOssAdapter.java @@ -35,6 +35,11 @@ import java.util.stream.Collectors; final public class AliOssAdapter extends AStorageAdapter { private AliOssStorageConfig config; + @Override + public String identity() { + return config.identity(); + } + @Override public void loadConfig(Map _config) { AliOssStorageConfig config = new AliOssStorageConfig(); diff --git a/src/main/java/com/ycwl/basic/storage/adapters/AwsOssAdapter.java b/src/main/java/com/ycwl/basic/storage/adapters/AwsOssAdapter.java index 2104ab5..a359787 100644 --- a/src/main/java/com/ycwl/basic/storage/adapters/AwsOssAdapter.java +++ b/src/main/java/com/ycwl/basic/storage/adapters/AwsOssAdapter.java @@ -28,6 +28,11 @@ import java.util.stream.Collectors; public class AwsOssAdapter extends AStorageAdapter { private AwsOssStorageConfig config; + @Override + public String identity() { + return config.identity(); + } + @Override public void loadConfig(Map _config) { AwsOssStorageConfig config = new AwsOssStorageConfig(); diff --git a/src/main/java/com/ycwl/basic/storage/adapters/IStorageAdapter.java b/src/main/java/com/ycwl/basic/storage/adapters/IStorageAdapter.java index d0f8e09..bcdc1dc 100644 --- a/src/main/java/com/ycwl/basic/storage/adapters/IStorageAdapter.java +++ b/src/main/java/com/ycwl/basic/storage/adapters/IStorageAdapter.java @@ -12,6 +12,7 @@ import java.util.List; import java.util.Map; public interface IStorageAdapter { + String identity(); void loadConfig(Map config); void setConfig(StorageConfig config); String uploadFile(String contentType, InputStream inputStream, String ...path); diff --git a/src/main/java/com/ycwl/basic/storage/adapters/LocalStorageAdapter.java b/src/main/java/com/ycwl/basic/storage/adapters/LocalStorageAdapter.java index a32644f..49e9883 100644 --- a/src/main/java/com/ycwl/basic/storage/adapters/LocalStorageAdapter.java +++ b/src/main/java/com/ycwl/basic/storage/adapters/LocalStorageAdapter.java @@ -11,6 +11,11 @@ import java.util.List; import java.util.Map; public class LocalStorageAdapter extends AStorageAdapter{ + @Override + public String identity() { + return ""; + } + @Override public void loadConfig(Map config) { diff --git a/src/main/java/com/ycwl/basic/storage/entity/AliOssStorageConfig.java b/src/main/java/com/ycwl/basic/storage/entity/AliOssStorageConfig.java index b2d2163..fabf4aa 100644 --- a/src/main/java/com/ycwl/basic/storage/entity/AliOssStorageConfig.java +++ b/src/main/java/com/ycwl/basic/storage/entity/AliOssStorageConfig.java @@ -1,5 +1,6 @@ package com.ycwl.basic.storage.entity; +import cn.hutool.crypto.digest.MD5; import lombok.Data; import lombok.EqualsAndHashCode; @@ -19,6 +20,11 @@ public class AliOssStorageConfig extends StorageConfig { // TODO: 检查配置是否正确 } + @Override + public String identity() { + return MD5.create().digestHex16(accessKeyId + bucketName + prefix); + } + public String getUrl() { String url = this.url; if (url == null) { diff --git a/src/main/java/com/ycwl/basic/storage/entity/AwsOssStorageConfig.java b/src/main/java/com/ycwl/basic/storage/entity/AwsOssStorageConfig.java index 643871c..c8e6ec7 100644 --- a/src/main/java/com/ycwl/basic/storage/entity/AwsOssStorageConfig.java +++ b/src/main/java/com/ycwl/basic/storage/entity/AwsOssStorageConfig.java @@ -1,5 +1,6 @@ package com.ycwl.basic.storage.entity; +import cn.hutool.crypto.digest.MD5; import lombok.Data; import lombok.EqualsAndHashCode; @@ -19,6 +20,11 @@ public class AwsOssStorageConfig extends StorageConfig { // TODO: 检查配置是否正确 } + @Override + public String identity() { + return MD5.create().digestHex16(accessKeyId + bucketName + prefix); + } + public String getUrl() { String url = this.url; if (url == null) { diff --git a/src/main/java/com/ycwl/basic/storage/entity/StorageConfig.java b/src/main/java/com/ycwl/basic/storage/entity/StorageConfig.java index 96b16eb..140a41c 100644 --- a/src/main/java/com/ycwl/basic/storage/entity/StorageConfig.java +++ b/src/main/java/com/ycwl/basic/storage/entity/StorageConfig.java @@ -2,4 +2,5 @@ package com.ycwl.basic.storage.entity; public abstract class StorageConfig { public abstract void checkEverythingOK(); + public abstract String identity(); }