| | |
| | | import org.springframework.util.StringUtils; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | |
| | | /* loaded from: blade-starter-oss-9.3.0.0-SNAPSHOT.jar:org/springblade/core/oss/HuaweiObsTemplate.class */ |
| | | public class HuaweiObsTemplate implements OssTemplate { |
| | | private final ObsClient obsClient; |
| | | private final OssProperties ossProperties; |
| | |
| | | this.ossRule = ossRule; |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public void makeBucket(String bucketName) { |
| | | if (!bucketExists(bucketName)) { |
| | | this.obsClient.createBucket(getBucketName(bucketName)); |
| | | } |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public void removeBucket(String bucketName) { |
| | | this.obsClient.deleteBucket(getBucketName(bucketName)); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public boolean bucketExists(String bucketName) { |
| | | return this.obsClient.headBucket(getBucketName(bucketName)); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public void copyFile(String bucketName, String fileName, String destBucketName) { |
| | | this.obsClient.copyObject(getBucketName(bucketName), fileName, getBucketName(destBucketName), fileName); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public void copyFile(String bucketName, String fileName, String destBucketName, String destFileName) { |
| | | this.obsClient.copyObject(getBucketName(bucketName), fileName, getBucketName(destBucketName), destFileName); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public OssFile statFile(String fileName) { |
| | | return statFile(this.ossProperties.getBucketName(), fileName); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public OssFile statFile(String bucketName, String fileName) { |
| | | ObjectMetadata stat = this.obsClient.getObjectMetadata(getBucketName(bucketName), fileName); |
| | | OssFile ossFile = new OssFile(); |
| | |
| | | return ossFile; |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public String filePath(String fileName) { |
| | | return getOssHost(getBucketName()).concat("/").concat(fileName); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public String filePath(String bucketName, String fileName) { |
| | | return getOssHost(getBucketName(bucketName)).concat("/").concat(fileName); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public String fileLink(String fileName) { |
| | | return getOssHost().concat("/").concat(fileName); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public String fileLink(String bucketName, String fileName) { |
| | | return getOssHost(getBucketName(bucketName)).concat("/").concat(fileName); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public InputStream getObject(String bucketName, String fileName, Long offset, Long length) { |
| | | return get(bucketName, fileName, offset, length); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public InputStream getObject(String fileName, Long offset, Long length) { |
| | | return get(this.ossProperties.getBucketName(), fileName, offset, length); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public InputStream getObject(String bucketName, String fileName) { |
| | | return get(bucketName, fileName); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public InputStream getObject(String fileName) { |
| | | return getObject(this.ossProperties.getBucketName(), fileName); |
| | | } |
| | |
| | | return ossObject.getObjectContent(); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public BladeFile putFile(MultipartFile file) { |
| | | return putFile(this.ossProperties.getBucketName(), file.getOriginalFilename(), file); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public BladeFile putFile(String fileName, MultipartFile file) { |
| | | return putFile(this.ossProperties.getBucketName(), fileName, file); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public BladeFile putFile(String bucketName, String fileName, MultipartFile file) { |
| | | |
| | | try { |
| | |
| | | } |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public BladeFile putFile(String fileName, InputStream stream) { |
| | | return putFile(this.ossProperties.getBucketName(), fileName, stream); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public BladeFile putFile(String bucketName, String fileName, InputStream stream) { |
| | | return put(bucketName, stream, fileName, false); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public void removeFile(String fileName) { |
| | | this.obsClient.deleteObject(getBucketName(), fileName); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public void removeFile(String bucketName, String fileName) { |
| | | this.obsClient.deleteObject(getBucketName(bucketName), fileName); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public void removeFiles(List<String> fileNames) { |
| | | fileNames.forEach(this::removeFile); |
| | | } |
| | | |
| | | @Override // com.qianwen.core.oss.OssTemplate |
| | | @Override |
| | | public void removeFiles(String bucketName, List<String> fileNames) { |
| | | fileNames.forEach(fileName -> { |
| | | removeFile(getBucketName(bucketName), fileName); |