mirror of
https://gitee.com/dromara/RuoYi-Vue-Plus.git
synced 2026-04-11 04:53:15 +08:00
update 提供一个自定义的S3存储客户端配置的校验方法,由调用者决定校验的结果
This commit is contained in:
@@ -26,6 +26,7 @@ import java.util.Collection;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.function.BiFunction;
|
import java.util.function.BiFunction;
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
|
import java.util.function.Function;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* S3 存储客户端接口。
|
* S3 存储客户端接口。
|
||||||
@@ -381,12 +382,23 @@ public interface S3StorageClient extends AutoCloseable {
|
|||||||
*/
|
*/
|
||||||
String presignPutUrl(String key, Duration expiredTime, Map<String, String> metadata);
|
String presignPutUrl(String key, Duration expiredTime, Map<String, String> metadata);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 校验客户端配置与传入的配置是否一致
|
* 校验客户端配置
|
||||||
*
|
*
|
||||||
* @param config 配置
|
* <p>注意:该方法不会修改任何既有的配置和状态,你看可以理解为这仅仅是一个配置展示的方法,以供调用者根据当前的配置,自行决定是否需要重新构建客户端。</p>
|
||||||
|
*
|
||||||
|
* @param verifyConfigAction 校验配置动作函数
|
||||||
* @return 是否一致
|
* @return 是否一致
|
||||||
*/
|
*/
|
||||||
boolean verifyConfig(S3StorageClientConfig config);
|
boolean verifyConfig(Function<S3StorageClientConfig,Boolean> verifyConfigAction);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 校验客户端配置与传入的待校验配置是否一致
|
||||||
|
*
|
||||||
|
* <p>注意:该方法不会修改任何既有的配置和状态,你看可以理解为这仅仅是一个配置展示的方法,以供调用者根据当前的配置,自行决定是否需要重新构建客户端。</p>
|
||||||
|
*
|
||||||
|
* @param verifyConfig 待校验的配置
|
||||||
|
* @return 是否一致
|
||||||
|
*/
|
||||||
|
boolean verifyConfig(S3StorageClientConfig verifyConfig);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,6 +34,7 @@ import java.util.concurrent.ExecutorService;
|
|||||||
import java.util.concurrent.Executors;
|
import java.util.concurrent.Executors;
|
||||||
import java.util.function.BiFunction;
|
import java.util.function.BiFunction;
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
|
import java.util.function.Function;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* S3 存储客户端实现类。
|
* S3 存储客户端实现类。
|
||||||
@@ -396,8 +397,14 @@ public class S3StorageClientImpl implements S3StorageClient {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean verifyConfig(S3StorageClientConfig config) {
|
public boolean verifyConfig(Function<S3StorageClientConfig,Boolean> verifyConfigAction) {
|
||||||
return Objects.equals(this.config,config);
|
S3StorageClientConfig copy = S3StorageClientConfig.copy(config);
|
||||||
|
return Boolean.TRUE.equals(verifyConfigAction.apply(copy));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean verifyConfig(S3StorageClientConfig verifyConfig) {
|
||||||
|
return verifyConfig(config -> Objects.equals(config,verifyConfig));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Reference in New Issue
Block a user