package com.qianwen.core.oss.config;
|
|
import com.qiniu.storage.BucketManager;
|
import com.qiniu.storage.Region;
|
import com.qiniu.storage.UploadManager;
|
import com.qiniu.util.Auth;
|
import com.qianwen.core.oss.QiniuTemplate;
|
import com.qianwen.core.oss.props.OssProperties;
|
import com.qianwen.core.oss.rule.OssRule;
|
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Configuration;
|
|
@EnableConfigurationProperties({OssProperties.class})
|
@Configuration(proxyBeanMethods = false)
|
@ConditionalOnClass({Auth.class, UploadManager.class, BucketManager.class})
|
@AutoConfigureAfter({OssConfiguration.class})
|
@ConditionalOnProperty(value = {"oss.name"}, havingValue = "qiniu")
|
/* loaded from: blade-starter-oss-9.3.0.0-SNAPSHOT.jar:org/springblade/core/oss/config/QiniuConfiguration.class */
|
public class QiniuConfiguration {
|
private final OssProperties ossProperties;
|
private final OssRule ossRule;
|
|
public QiniuConfiguration(final OssProperties ossProperties, final OssRule ossRule) {
|
this.ossProperties = ossProperties;
|
this.ossRule = ossRule;
|
}
|
|
@ConditionalOnMissingBean({com.qiniu.storage.Configuration.class})
|
@Bean
|
public com.qiniu.storage.Configuration qnConfiguration() {
|
return new com.qiniu.storage.Configuration(Region.autoRegion());
|
}
|
|
@ConditionalOnMissingBean({Auth.class})
|
@Bean
|
public Auth auth() {
|
return Auth.create(this.ossProperties.getAccessKey(), this.ossProperties.getSecretKey());
|
}
|
|
@ConditionalOnBean({com.qiniu.storage.Configuration.class})
|
@Bean
|
public UploadManager uploadManager(com.qiniu.storage.Configuration cfg) {
|
return new UploadManager(cfg);
|
}
|
|
@ConditionalOnBean({com.qiniu.storage.Configuration.class})
|
@Bean
|
public BucketManager bucketManager(com.qiniu.storage.Configuration cfg) {
|
return new BucketManager(Auth.create(this.ossProperties.getAccessKey(), this.ossProperties.getSecretKey()), cfg);
|
}
|
|
@ConditionalOnMissingBean({QiniuTemplate.class})
|
@ConditionalOnBean({Auth.class, UploadManager.class, BucketManager.class})
|
@Bean
|
public QiniuTemplate qiniuTemplate(Auth auth, UploadManager uploadManager, BucketManager bucketManager) {
|
return new QiniuTemplate(auth, uploadManager, bucketManager, this.ossProperties, this.ossRule);
|
}
|
}
|