123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- package com.fdkankan.scene.oss.aliyun;
- import com.aliyun.oss.ClientBuilderConfiguration;
- import com.fdkankan.scene.oss.InnerUtils;
- import lombok.Data;
- import org.springframework.beans.factory.InitializingBean;
- import org.springframework.util.StringUtils;
- import java.io.Serializable;
- import java.util.Map;
- /**
- * 阿里云OSS配置属性
- */
- @Data
- public class AliyunOssProperties implements Serializable, InitializingBean {
- public static final String PREFIX = "aliyun.oss";
- private String env;
- /**
- * 服务地址
- */
- private String endpoint;
- /**
- * 服务地址(内网)
- */
- private String internalEndpoint;
- /**
- * 区域id
- */
- private String regionId;
- /**
- * 访问标识
- */
- private String accessKeyId;
- /**
- * 访问密钥
- */
- private String accessKeySecret;
- /**
- * 会话token
- */
- private String securityToken;
- /**
- * 授权信息
- */
- private String roleArn;
- /**
- * 自定义域名, bucket名称忽略大小写
- */
- private Map<String, String> bucketCustomDomain;
- /**
- * Bucket
- */
- private String bucket;
- /**
- * Client configuration.
- */
- private ClientBuilderConfiguration config = new ClientBuilderConfiguration();
- @Override
- public void afterPropertiesSet() {
- InnerUtils.checkArgument(!StringUtils.isEmpty(endpoint), "'endpoint' can't be empty");
- InnerUtils.checkArgument(!StringUtils.isEmpty(bucket), "'bucket' can't be empty");
- }
- /**
- * 获取请求到阿里云的服务地址, 内网地址优先
- */
- public String getRequestEndpoint() {
- if (this.internalEndpoint != null && this.internalEndpoint.length() > 0) {
- return internalEndpoint;
- }
- return endpoint;
- }
- /**
- * 获取访问访问前缀, 优先级: customDomain > endpoint
- */
- public String getHostByBucket(String bucket) {
- if (bucketCustomDomain != null) {
- String domain = bucketCustomDomain.get(bucket);
- if (domain != null && domain.length() > 0) {
- return domain;
- }
- }
- return InnerUtils.generateHost(this.endpoint, bucket);
- }
- }
|