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 2018/04/21 20:28:03 UTC
[2/2] jclouds git commit: JCLOUDS-1389: When composing,
set destination.storageClass from object
JCLOUDS-1389: When composing, set destination.storageClass from object
This aligns that the destination's storageClass with that of the sub-object(s) being composed
Project: http://git-wip-us.apache.org/repos/asf/jclouds/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds/commit/5fa2df1b
Tree: http://git-wip-us.apache.org/repos/asf/jclouds/tree/5fa2df1b
Diff: http://git-wip-us.apache.org/repos/asf/jclouds/diff/5fa2df1b
Branch: refs/heads/2.1.x
Commit: 5fa2df1bbcde533e8fa1386f8151af86aad52035
Parents: 3dd8dfa
Author: Jim Sermersheim <ji...@primarydata.com>
Authored: Fri Apr 20 12:04:16 2018 -0600
Committer: Andrew Gaul <ga...@apache.org>
Committed: Sat Apr 21 13:27:22 2018 -0700
----------------------------------------------------------------------
.../blobstore/GoogleCloudStorageBlobStore.java | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jclouds/blob/5fa2df1b/providers/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/blobstore/GoogleCloudStorageBlobStore.java
----------------------------------------------------------------------
diff --git a/providers/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/blobstore/GoogleCloudStorageBlobStore.java b/providers/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/blobstore/GoogleCloudStorageBlobStore.java
index 63834e4..029ca03 100644
--- a/providers/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/blobstore/GoogleCloudStorageBlobStore.java
+++ b/providers/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/blobstore/GoogleCloudStorageBlobStore.java
@@ -379,15 +379,17 @@ public final class GoogleCloudStorageBlobStore extends BaseBlobStore {
@Override
public String completeMultipartUpload(MultipartUpload mpu, List<MultipartPart> parts) {
- ImmutableList.Builder<GoogleCloudStorageObject> objects = ImmutableList.builder();
+ ImmutableList.Builder<GoogleCloudStorageObject> objectsBuilder = ImmutableList.builder();
for (MultipartPart part : parts) {
- objects.add(api.getObjectApi().getObject(mpu.containerName(),
+ objectsBuilder.add(api.getObjectApi().getObject(mpu.containerName(),
Strings2.urlEncode(getMPUPartName(mpu, part.partNumber()))));
}
ObjectTemplate destination = blobMetadataToObjectTemplate.apply(mpu.blobMetadata());
- // unset storage class because the subobjects store this state
- destination.storageClass(DomainResourceReferences.StorageClass.STANDARD);
+ final ImmutableList<GoogleCloudStorageObject> objects = objectsBuilder.build();
+ if (!objects.isEmpty()) {
+ destination.storageClass(objects.get(0).storageClass());
+ }
if (mpu.putOptions().getBlobAccess() == BlobAccess.PUBLIC_READ) {
ObjectAccessControls controls = ObjectAccessControls.builder()
.entity("allUsers")
@@ -398,7 +400,7 @@ public final class GoogleCloudStorageBlobStore extends BaseBlobStore {
}
ComposeObjectTemplate template = ComposeObjectTemplate.builder()
- .fromGoogleCloudStorageObject(objects.build())
+ .fromGoogleCloudStorageObject(objects)
.destination(destination).build();
String eTag = api.getObjectApi().composeObjects(mpu.containerName(), Strings2.urlEncode(mpu.blobName()), template)
.etag();