通过identity定义是否相同

This commit is contained in:
2025-06-13 15:00:20 +08:00
parent 04e2ade669
commit 4d8236afa1
7 changed files with 29 additions and 0 deletions

View File

@ -35,6 +35,11 @@ import java.util.stream.Collectors;
final public class AliOssAdapter extends AStorageAdapter { final public class AliOssAdapter extends AStorageAdapter {
private AliOssStorageConfig config; private AliOssStorageConfig config;
@Override
public String identity() {
return config.identity();
}
@Override @Override
public void loadConfig(Map<String, String> _config) { public void loadConfig(Map<String, String> _config) {
AliOssStorageConfig config = new AliOssStorageConfig(); AliOssStorageConfig config = new AliOssStorageConfig();

View File

@ -28,6 +28,11 @@ import java.util.stream.Collectors;
public class AwsOssAdapter extends AStorageAdapter { public class AwsOssAdapter extends AStorageAdapter {
private AwsOssStorageConfig config; private AwsOssStorageConfig config;
@Override
public String identity() {
return config.identity();
}
@Override @Override
public void loadConfig(Map<String, String> _config) { public void loadConfig(Map<String, String> _config) {
AwsOssStorageConfig config = new AwsOssStorageConfig(); AwsOssStorageConfig config = new AwsOssStorageConfig();

View File

@ -12,6 +12,7 @@ import java.util.List;
import java.util.Map; import java.util.Map;
public interface IStorageAdapter { public interface IStorageAdapter {
String identity();
void loadConfig(Map<String, String> config); void loadConfig(Map<String, String> config);
void setConfig(StorageConfig config); void setConfig(StorageConfig config);
String uploadFile(String contentType, InputStream inputStream, String ...path); String uploadFile(String contentType, InputStream inputStream, String ...path);

View File

@ -11,6 +11,11 @@ import java.util.List;
import java.util.Map; import java.util.Map;
public class LocalStorageAdapter extends AStorageAdapter{ public class LocalStorageAdapter extends AStorageAdapter{
@Override
public String identity() {
return "";
}
@Override @Override
public void loadConfig(Map<String, String> config) { public void loadConfig(Map<String, String> config) {

View File

@ -1,5 +1,6 @@
package com.ycwl.basic.storage.entity; package com.ycwl.basic.storage.entity;
import cn.hutool.crypto.digest.MD5;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@ -19,6 +20,11 @@ public class AliOssStorageConfig extends StorageConfig {
// TODO: 检查配置是否正确 // TODO: 检查配置是否正确
} }
@Override
public String identity() {
return MD5.create().digestHex16(accessKeyId + bucketName + prefix);
}
public String getUrl() { public String getUrl() {
String url = this.url; String url = this.url;
if (url == null) { if (url == null) {

View File

@ -1,5 +1,6 @@
package com.ycwl.basic.storage.entity; package com.ycwl.basic.storage.entity;
import cn.hutool.crypto.digest.MD5;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@ -19,6 +20,11 @@ public class AwsOssStorageConfig extends StorageConfig {
// TODO: 检查配置是否正确 // TODO: 检查配置是否正确
} }
@Override
public String identity() {
return MD5.create().digestHex16(accessKeyId + bucketName + prefix);
}
public String getUrl() { public String getUrl() {
String url = this.url; String url = this.url;
if (url == null) { if (url == null) {

View File

@ -2,4 +2,5 @@ package com.ycwl.basic.storage.entity;
public abstract class StorageConfig { public abstract class StorageConfig {
public abstract void checkEverythingOK(); public abstract void checkEverythingOK();
public abstract String identity();
} }