diff --git a/cdm/s3/src/main/java/thredds/inventory/s3/MFileS3.java b/cdm/s3/src/main/java/thredds/inventory/s3/MFileS3.java index edb4e51e22..df9730c88b 100644 --- a/cdm/s3/src/main/java/thredds/inventory/s3/MFileS3.java +++ b/cdm/s3/src/main/java/thredds/inventory/s3/MFileS3.java @@ -315,7 +315,7 @@ private boolean directoryExists() { try { final ListObjectsV2Response listObjects = client.listObjectsV2(ListObjectsV2Request.builder().bucket(cdmS3Uri.getBucket()).prefix(key).build()); - return !listObjects.contents().isEmpty(); + return listObjects.sdkHttpResponse().isSuccessful() && !listObjects.contents().isEmpty(); } catch (NoSuchBucketException e) { return false; } @@ -323,8 +323,8 @@ private boolean directoryExists() { private boolean bucketExists() { try { - getHeadBucketResponse(); - return true; + final HeadBucketResponse response = getHeadBucketResponse(); + return response != null && response.sdkHttpResponse().isSuccessful(); } catch (NoSuchBucketException e) { return false; } @@ -332,8 +332,8 @@ private boolean bucketExists() { private boolean objectExists() { try { - headObjectResponse.get(); - return true; + final HeadObjectResponse response = headObjectResponse.get(); + return response != null && response.sdkHttpResponse().isSuccessful(); } catch (NoSuchKeyException e) { return false; }