From dc0a60b1786977bf5ca5ef1945383e40538a5ca0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E7=A6=B9=E5=85=89?= Date: Mon, 19 Aug 2019 11:42:06 +0800 Subject: [PATCH 1/3] Optional value should only be accessed after calling isPresent() --- .../oss/resource/OssStorageResource.java | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/spring-cloud-alicloud-oss/src/main/java/com/alibaba/alicloud/oss/resource/OssStorageResource.java b/spring-cloud-alicloud-oss/src/main/java/com/alibaba/alicloud/oss/resource/OssStorageResource.java index 6137b2d5..91a53171 100644 --- a/spring-cloud-alicloud-oss/src/main/java/com/alibaba/alicloud/oss/resource/OssStorageResource.java +++ b/spring-cloud-alicloud-oss/src/main/java/com/alibaba/alicloud/oss/resource/OssStorageResource.java @@ -16,6 +16,14 @@ package com.alibaba.alicloud.oss.resource; +import com.aliyun.oss.ClientException; +import com.aliyun.oss.OSS; +import com.aliyun.oss.OSSException; +import com.aliyun.oss.model.Bucket; +import com.aliyun.oss.model.OSSObject; +import org.springframework.core.io.Resource; +import org.springframework.util.Assert; + import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; @@ -23,15 +31,7 @@ import java.io.InputStream; import java.net.URI; import java.net.URISyntaxException; import java.net.URL; - -import org.springframework.core.io.Resource; -import org.springframework.util.Assert; - -import com.aliyun.oss.ClientException; -import com.aliyun.oss.OSS; -import com.aliyun.oss.OSSException; -import com.aliyun.oss.model.Bucket; -import com.aliyun.oss.model.OSSObject; +import java.util.Optional; /** * Implements {@link Resource} for reading and writing objects in Aliyun Object Storage @@ -155,9 +155,9 @@ public class OssStorageResource implements Resource { * @return the bucket if it exists, or null otherwise */ public Bucket getBucket() { - return this.oss.listBuckets().stream() - .filter(bucket -> bucket.getName().equals(this.bucketName)).findFirst() - .get(); + Optional value = this.oss.listBuckets().stream() + .filter(bucket -> bucket.getName().equals(this.bucketName)).findFirst(); + return value.orElse(null); } /** From c004b16ab4868d63687f9e984ae4f4e8e759ee42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E7=A6=B9=E5=85=89?= Date: Mon, 19 Aug 2019 14:35:36 +0800 Subject: [PATCH 2/3] fix fmt --- .../oss/resource/OssStorageResource.java | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/spring-cloud-alicloud-oss/src/main/java/com/alibaba/alicloud/oss/resource/OssStorageResource.java b/spring-cloud-alicloud-oss/src/main/java/com/alibaba/alicloud/oss/resource/OssStorageResource.java index 91a53171..603750a4 100644 --- a/spring-cloud-alicloud-oss/src/main/java/com/alibaba/alicloud/oss/resource/OssStorageResource.java +++ b/spring-cloud-alicloud-oss/src/main/java/com/alibaba/alicloud/oss/resource/OssStorageResource.java @@ -16,14 +16,6 @@ package com.alibaba.alicloud.oss.resource; -import com.aliyun.oss.ClientException; -import com.aliyun.oss.OSS; -import com.aliyun.oss.OSSException; -import com.aliyun.oss.model.Bucket; -import com.aliyun.oss.model.OSSObject; -import org.springframework.core.io.Resource; -import org.springframework.util.Assert; - import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; @@ -33,6 +25,15 @@ import java.net.URISyntaxException; import java.net.URL; import java.util.Optional; +import org.springframework.core.io.Resource; +import org.springframework.util.Assert; + +import com.aliyun.oss.ClientException; +import com.aliyun.oss.OSS; +import com.aliyun.oss.OSSException; +import com.aliyun.oss.model.Bucket; +import com.aliyun.oss.model.OSSObject; + /** * Implements {@link Resource} for reading and writing objects in Aliyun Object Storage * Service (OSS). An instance of this class represents a handle to a bucket or an From e22179bb36fa7f78717b982821b5f7fbf0408530 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E7=A6=B9=E5=85=89?= Date: Mon, 19 Aug 2019 14:51:44 +0800 Subject: [PATCH 3/3] better code --- .../alibaba/alicloud/oss/resource/OssStorageResource.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/spring-cloud-alicloud-oss/src/main/java/com/alibaba/alicloud/oss/resource/OssStorageResource.java b/spring-cloud-alicloud-oss/src/main/java/com/alibaba/alicloud/oss/resource/OssStorageResource.java index 603750a4..70825bae 100644 --- a/spring-cloud-alicloud-oss/src/main/java/com/alibaba/alicloud/oss/resource/OssStorageResource.java +++ b/spring-cloud-alicloud-oss/src/main/java/com/alibaba/alicloud/oss/resource/OssStorageResource.java @@ -23,7 +23,6 @@ import java.io.InputStream; import java.net.URI; import java.net.URISyntaxException; import java.net.URL; -import java.util.Optional; import org.springframework.core.io.Resource; import org.springframework.util.Assert; @@ -156,9 +155,9 @@ public class OssStorageResource implements Resource { * @return the bucket if it exists, or null otherwise */ public Bucket getBucket() { - Optional value = this.oss.listBuckets().stream() - .filter(bucket -> bucket.getName().equals(this.bucketName)).findFirst(); - return value.orElse(null); + return this.oss.listBuckets().stream() + .filter(bucket -> bucket.getName().equals(this.bucketName)).findFirst() + .orElse(null); } /**