This is an automated email from the ASF dual-hosted git repository.

gaul pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jclouds.git


The following commit(s) were added to refs/heads/master by this push:
     new a1c9ce8  JCLOUDS-1494: Add S3 Deep Archive tier
a1c9ce8 is described below

commit a1c9ce82172387228afc3e494a0d709b7b20bc82
Author: Andrew Gaul <[email protected]>
AuthorDate: Sat Apr 6 18:42:03 2019 +0900

    JCLOUDS-1494: Add S3 Deep Archive tier
    
    Also test Glacier tier now that Amazon allows creating objects with
    this storage class.
---
 apis/s3/src/main/java/org/jclouds/s3/blobstore/S3BlobStore.java      | 2 --
 apis/s3/src/main/java/org/jclouds/s3/domain/ObjectMetadata.java      | 5 +++--
 .../aws-s3/src/test/java/org/jclouds/aws/s3/AWSS3ClientLiveTest.java | 5 -----
 3 files changed, 3 insertions(+), 9 deletions(-)

diff --git a/apis/s3/src/main/java/org/jclouds/s3/blobstore/S3BlobStore.java 
b/apis/s3/src/main/java/org/jclouds/s3/blobstore/S3BlobStore.java
index 9b91048..195b637 100644
--- a/apis/s3/src/main/java/org/jclouds/s3/blobstore/S3BlobStore.java
+++ b/apis/s3/src/main/java/org/jclouds/s3/blobstore/S3BlobStore.java
@@ -266,8 +266,6 @@ public class S3BlobStore extends BaseBlobStore {
       if (overrides.getBlobAccess() == BlobAccess.PUBLIC_READ) {
          options = options.withAcl(CannedAccessPolicy.PUBLIC_READ);
       }
-      // TODO: S3 does not allow putObject if Tier.ARCHIVE.  Instead, copyBlob
-      // after putBlob when the former supports tiers.
       return sync.putObject(container, blob2Object.apply(blob), options);
    }
 
diff --git a/apis/s3/src/main/java/org/jclouds/s3/domain/ObjectMetadata.java 
b/apis/s3/src/main/java/org/jclouds/s3/domain/ObjectMetadata.java
index 0c5b5f4..52eb15c 100644
--- a/apis/s3/src/main/java/org/jclouds/s3/domain/ObjectMetadata.java
+++ b/apis/s3/src/main/java/org/jclouds/s3/domain/ObjectMetadata.java
@@ -38,7 +38,8 @@ public interface ObjectMetadata extends 
Comparable<ObjectMetadata> {
       STANDARD_IA(Tier.INFREQUENT),
       ONEZONE_IA(Tier.INFREQUENT),
       REDUCED_REDUNDANCY(Tier.STANDARD),
-      GLACIER(Tier.ARCHIVE);
+      GLACIER(Tier.ARCHIVE),
+      DEEP_ARCHIVE(Tier.ARCHIVE);
 
       private final Tier tier;
 
@@ -50,7 +51,7 @@ public interface ObjectMetadata extends 
Comparable<ObjectMetadata> {
          switch (tier) {
          case STANDARD: return StorageClass.STANDARD;
          case INFREQUENT: return StorageClass.STANDARD_IA;
-         case ARCHIVE: return StorageClass.GLACIER;
+         case ARCHIVE: return StorageClass.DEEP_ARCHIVE;
          }
          throw new IllegalArgumentException("invalid tier: " + tier);
       }
diff --git 
a/providers/aws-s3/src/test/java/org/jclouds/aws/s3/AWSS3ClientLiveTest.java 
b/providers/aws-s3/src/test/java/org/jclouds/aws/s3/AWSS3ClientLiveTest.java
index adf5b26..1d04891 100644
--- a/providers/aws-s3/src/test/java/org/jclouds/aws/s3/AWSS3ClientLiveTest.java
+++ b/providers/aws-s3/src/test/java/org/jclouds/aws/s3/AWSS3ClientLiveTest.java
@@ -67,11 +67,6 @@ public class AWSS3ClientLiveTest extends S3ClientLiveTest {
       AWSS3Client s3Client = getApi();
       try {
          for (StorageClass storageClass : StorageClass.values()) {
-            if (storageClass == StorageClass.GLACIER) {
-               // AWS does not allow creation of Glacier objects
-               continue;
-            }
-
             String blobName = "test-" + storageClass;
             BlobStore blobStore = view.getBlobStore();
             blobStore.createContainerInLocation(null, containerName);

Reply via email to