You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jclouds.apache.org by ga...@apache.org on 2015/12/23 07:38:14 UTC

[5/6] jclouds git commit: JCLOUDS-844: S3 putBlob ACLs

JCLOUDS-844: S3 putBlob ACLs


Project: http://git-wip-us.apache.org/repos/asf/jclouds/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds/commit/85951e2a
Tree: http://git-wip-us.apache.org/repos/asf/jclouds/tree/85951e2a
Diff: http://git-wip-us.apache.org/repos/asf/jclouds/diff/85951e2a

Branch: refs/heads/master
Commit: 85951e2af9be28b8669c709b72676b834d0a1245
Parents: f926944
Author: Andrew Gaul <ga...@apache.org>
Authored: Mon Dec 21 16:52:54 2015 -0800
Committer: Andrew Gaul <ga...@apache.org>
Committed: Tue Dec 22 00:46:34 2015 -0800

----------------------------------------------------------------------
 .../java/org/jclouds/s3/blobstore/S3BlobStore.java     | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds/blob/85951e2a/apis/s3/src/main/java/org/jclouds/s3/blobstore/S3BlobStore.java
----------------------------------------------------------------------
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 a72f9e9..4cb5ea2 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
@@ -265,6 +265,9 @@ public class S3BlobStore extends BaseBlobStore {
       }
 
       PutObjectOptions options = new PutObjectOptions();
+      if (overrides.getBlobAccess() == BlobAccess.PUBLIC_READ) {
+         options = options.withAcl(CannedAccessPolicy.PUBLIC_READ);
+      }
       return sync.putObject(container, blob2Object.apply(blob), options);
    }
 
@@ -344,9 +347,13 @@ public class S3BlobStore extends BaseBlobStore {
    }
 
    @Override
-   public MultipartUpload initiateMultipartUpload(String container, BlobMetadata blobMetadata) {
-      String id = sync.initiateMultipartUpload(container, blob2ObjectMetadata.apply(blobMetadata));
-      return MultipartUpload.create(container, blobMetadata.getName(), id, blobMetadata);
+   public MultipartUpload initiateMultipartUpload(String container, BlobMetadata blobMetadata, PutOptions overrides) {
+      PutObjectOptions options = new PutObjectOptions();
+      if (overrides.getBlobAccess() == BlobAccess.PUBLIC_READ) {
+         options = options.withAcl(CannedAccessPolicy.PUBLIC_READ);
+      }
+      String id = sync.initiateMultipartUpload(container, blob2ObjectMetadata.apply(blobMetadata), options);
+      return MultipartUpload.create(container, blobMetadata.getName(), id, blobMetadata, overrides);
    }
 
    @Override