mirror of
https://github.com/chillzhuang/blade-tool
synced 2025-03-13 00:57:24 +08:00
✨ 优化 oss bean 构造,可以减少 bean 冲突。
This commit is contained in:
parent
31acc1de3c
commit
b94d9f61d2
@ -19,7 +19,6 @@ import com.aliyun.oss.ClientConfiguration;
|
||||
import com.aliyun.oss.OSSClient;
|
||||
import com.aliyun.oss.common.auth.CredentialsProvider;
|
||||
import com.aliyun.oss.common.auth.DefaultCredentialProvider;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springblade.core.oss.AliossTemplate;
|
||||
import org.springblade.core.oss.props.OssProperties;
|
||||
import org.springblade.core.oss.rule.OssRule;
|
||||
@ -36,19 +35,15 @@ import org.springframework.context.annotation.Bean;
|
||||
*
|
||||
* @author Chill
|
||||
*/
|
||||
@AllArgsConstructor
|
||||
@AutoConfiguration(after = OssConfiguration.class)
|
||||
@EnableConfigurationProperties(OssProperties.class)
|
||||
@ConditionalOnClass({OSSClient.class})
|
||||
@ConditionalOnProperty(value = "oss.name", havingValue = "alioss")
|
||||
public class AliossConfiguration {
|
||||
|
||||
private final OssProperties ossProperties;
|
||||
private final OssRule ossRule;
|
||||
|
||||
@Bean
|
||||
@ConditionalOnMissingBean(OSSClient.class)
|
||||
public OSSClient ossClient() {
|
||||
public OSSClient ossClient(OssProperties ossProperties) {
|
||||
// 创建ClientConfiguration。ClientConfiguration是OSSClient的配置类,可配置代理、连接超时、最大连接数等参数。
|
||||
ClientConfiguration conf = new ClientConfiguration();
|
||||
// 设置OSSClient允许打开的最大HTTP连接数,默认为1024个。
|
||||
@ -70,7 +65,9 @@ public class AliossConfiguration {
|
||||
@Bean
|
||||
@ConditionalOnBean({OSSClient.class})
|
||||
@ConditionalOnMissingBean(AliossTemplate.class)
|
||||
public AliossTemplate aliossTemplate(OSSClient ossClient) {
|
||||
public AliossTemplate aliossTemplate(OssRule ossRule,
|
||||
OssProperties ossProperties,
|
||||
OSSClient ossClient) {
|
||||
return new AliossTemplate(ossClient, ossProperties, ossRule);
|
||||
}
|
||||
|
||||
|
@ -16,7 +16,6 @@
|
||||
package org.springblade.core.oss.config;
|
||||
|
||||
import io.minio.MinioClient;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.SneakyThrows;
|
||||
import org.springblade.core.oss.MinioTemplate;
|
||||
import org.springblade.core.oss.props.OssProperties;
|
||||
@ -34,21 +33,16 @@ import org.springframework.context.annotation.Bean;
|
||||
*
|
||||
* @author Chill
|
||||
*/
|
||||
@AllArgsConstructor
|
||||
@AutoConfiguration(after = OssConfiguration.class)
|
||||
@ConditionalOnClass({MinioClient.class})
|
||||
@EnableConfigurationProperties(OssProperties.class)
|
||||
@ConditionalOnProperty(value = "oss.name", havingValue = "minio")
|
||||
public class MinioConfiguration {
|
||||
|
||||
private final OssProperties ossProperties;
|
||||
private final OssRule ossRule;
|
||||
|
||||
|
||||
@Bean
|
||||
@SneakyThrows
|
||||
@ConditionalOnMissingBean(MinioClient.class)
|
||||
public MinioClient minioClient() {
|
||||
public MinioClient minioClient(OssProperties ossProperties) {
|
||||
return MinioClient.builder()
|
||||
.endpoint(ossProperties.getEndpoint())
|
||||
.credentials(ossProperties.getAccessKey(), ossProperties.getSecretKey())
|
||||
@ -58,7 +52,9 @@ public class MinioConfiguration {
|
||||
@Bean
|
||||
@ConditionalOnBean({MinioClient.class})
|
||||
@ConditionalOnMissingBean(MinioTemplate.class)
|
||||
public MinioTemplate minioTemplate(MinioClient minioClient) {
|
||||
public MinioTemplate minioTemplate(OssRule ossRule,
|
||||
OssProperties ossProperties,
|
||||
MinioClient minioClient) {
|
||||
return new MinioTemplate(minioClient, ossRule, ossProperties);
|
||||
}
|
||||
|
||||
|
@ -19,7 +19,6 @@ import com.qiniu.storage.BucketManager;
|
||||
import com.qiniu.storage.Region;
|
||||
import com.qiniu.storage.UploadManager;
|
||||
import com.qiniu.util.Auth;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springblade.core.oss.QiniuTemplate;
|
||||
import org.springblade.core.oss.props.OssProperties;
|
||||
import org.springblade.core.oss.rule.OssRule;
|
||||
@ -36,16 +35,12 @@ import org.springframework.context.annotation.Bean;
|
||||
*
|
||||
* @author Chill
|
||||
*/
|
||||
@AllArgsConstructor
|
||||
@AutoConfiguration(after = OssConfiguration.class)
|
||||
@ConditionalOnClass({Auth.class, UploadManager.class, BucketManager.class})
|
||||
@EnableConfigurationProperties(OssProperties.class)
|
||||
@ConditionalOnProperty(value = "oss.name", havingValue = "qiniu")
|
||||
public class QiniuConfiguration {
|
||||
|
||||
private final OssProperties ossProperties;
|
||||
private final OssRule ossRule;
|
||||
|
||||
@Bean
|
||||
@ConditionalOnMissingBean(com.qiniu.storage.Configuration.class)
|
||||
public com.qiniu.storage.Configuration qnConfiguration() {
|
||||
@ -54,7 +49,7 @@ public class QiniuConfiguration {
|
||||
|
||||
@Bean
|
||||
@ConditionalOnMissingBean(Auth.class)
|
||||
public Auth auth() {
|
||||
public Auth auth(OssProperties ossProperties) {
|
||||
return Auth.create(ossProperties.getAccessKey(), ossProperties.getSecretKey());
|
||||
}
|
||||
|
||||
@ -66,14 +61,19 @@ public class QiniuConfiguration {
|
||||
|
||||
@Bean
|
||||
@ConditionalOnBean(com.qiniu.storage.Configuration.class)
|
||||
public BucketManager bucketManager(com.qiniu.storage.Configuration cfg) {
|
||||
public BucketManager bucketManager(OssProperties ossProperties,
|
||||
com.qiniu.storage.Configuration cfg) {
|
||||
return new BucketManager(Auth.create(ossProperties.getAccessKey(), ossProperties.getSecretKey()), cfg);
|
||||
}
|
||||
|
||||
@Bean
|
||||
@ConditionalOnBean({Auth.class, UploadManager.class, BucketManager.class})
|
||||
@ConditionalOnMissingBean(QiniuTemplate.class)
|
||||
public QiniuTemplate qiniuTemplate(Auth auth, UploadManager uploadManager, BucketManager bucketManager) {
|
||||
public QiniuTemplate qiniuTemplate(OssRule ossRule,
|
||||
OssProperties ossProperties,
|
||||
Auth auth,
|
||||
UploadManager uploadManager,
|
||||
BucketManager bucketManager) {
|
||||
return new QiniuTemplate(auth, uploadManager, bucketManager, ossProperties, ossRule);
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user