| | |
| | | */ |
| | | public class AliyunCloudStorageStrategy extends AbstractCloudStorageStrategy { |
| | | |
| | | private final OSSClient client; |
| | | private OSSClient client; |
| | | |
| | | public AliyunCloudStorageStrategy(CloudStorageProperties cloudStorageProperties) { |
| | | @Override |
| | | public void init(CloudStorageProperties cloudStorageProperties) { |
| | | properties = cloudStorageProperties; |
| | | try { |
| | | ClientConfiguration configuration = new ClientConfiguration(); |
| | |
| | | client = new OSSClient(properties.getEndpoint(), credentialProvider, configuration); |
| | | createBucket(); |
| | | } catch (Exception e) { |
| | | throw new IllegalArgumentException("阿里云存储配置错误! 请检查系统配置!"); |
| | | throw new OssException("阿里云存储配置错误! 请检查系统配置:[" + e.getMessage() + "]"); |
| | | } |
| | | } |
| | | |
| | |
| | | createBucketRequest.setCannedACL(CannedAccessControlList.PublicRead); |
| | | client.createBucket(createBucketRequest); |
| | | } catch (Exception e) { |
| | | throw new OssException("创建Bucket失败, 请核对阿里云配置信息"); |
| | | throw new OssException("创建Bucket失败, 请核对阿里云配置信息:[" + e.getMessage() + "]"); |
| | | } |
| | | } |
| | | |
| | |
| | | metadata.setContentType(contentType); |
| | | client.putObject(new PutObjectRequest(properties.getBucketName(), path, inputStream, metadata)); |
| | | } catch (Exception e) { |
| | | throw new OssException("上传文件失败,请检查阿里云配置信息"); |
| | | throw new OssException("上传文件失败,请检查阿里云配置信息:[" + e.getMessage() + "]"); |
| | | } |
| | | return new UploadResult().setUrl(getEndpointLink() + "/" + path).setFilename(path); |
| | | } |
| | |
| | | try { |
| | | client.deleteObject(properties.getBucketName(), path); |
| | | } catch (Exception e) { |
| | | throw new OssException("上传文件失败,请检查阿里云配置信息"); |
| | | throw new OssException("上传文件失败,请检查阿里云配置信息:[" + e.getMessage() + "]"); |
| | | } |
| | | } |
| | | |