Repository: jclouds
Updated Branches:
  refs/heads/master e0e3519ed -> c901bf3a0


JCLOUDS-1337: B2 putBlob portable storage tiers


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

Branch: refs/heads/master
Commit: 3193aa68e80691356694fd0b2e0064e22f3f7866
Parents: f513bf7
Author: Andrew Gaul <[email protected]>
Authored: Mon Oct 23 20:57:07 2017 -0700
Committer: Andrew Gaul <[email protected]>
Committed: Mon Oct 23 21:31:48 2017 -0700

----------------------------------------------------------------------
 .../org/jclouds/b2/blobstore/B2BlobStore.java   |  2 ++
 .../integration/B2BlobIntegrationLiveTest.java  | 38 ++++++++++++++++++++
 2 files changed, 40 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds/blob/3193aa68/providers/b2/src/main/java/org/jclouds/b2/blobstore/B2BlobStore.java
----------------------------------------------------------------------
diff --git 
a/providers/b2/src/main/java/org/jclouds/b2/blobstore/B2BlobStore.java 
b/providers/b2/src/main/java/org/jclouds/b2/blobstore/B2BlobStore.java
index 677f9c8..0aabe99 100644
--- a/providers/b2/src/main/java/org/jclouds/b2/blobstore/B2BlobStore.java
+++ b/providers/b2/src/main/java/org/jclouds/b2/blobstore/B2BlobStore.java
@@ -55,6 +55,7 @@ import org.jclouds.blobstore.domain.MutableBlobMetadata;
 import org.jclouds.blobstore.domain.PageSet;
 import org.jclouds.blobstore.domain.StorageMetadata;
 import org.jclouds.blobstore.domain.StorageType;
+import org.jclouds.blobstore.domain.Tier;
 import org.jclouds.blobstore.domain.internal.BlobImpl;
 import org.jclouds.blobstore.domain.internal.BlobMetadataImpl;
 import org.jclouds.blobstore.domain.internal.MutableBlobMetadataImpl;
@@ -454,6 +455,7 @@ public final class B2BlobStore extends BaseBlobStore {
       contentMetadata.setContentType(b2Object.contentType());
       metadata.setContentMetadata(contentMetadata);
       metadata.setUserMetadata(b2Object.fileInfo());
+      metadata.setTier(Tier.STANDARD);
       try {
          metadata.setPublicUri(URI.create(auth.get().downloadUrl() + "/file/" 
+ container + "/" +
                URLEncoder.encode(b2Object.fileName(), "UTF-8")));

http://git-wip-us.apache.org/repos/asf/jclouds/blob/3193aa68/providers/b2/src/test/java/org/jclouds/b2/blobstore/integration/B2BlobIntegrationLiveTest.java
----------------------------------------------------------------------
diff --git 
a/providers/b2/src/test/java/org/jclouds/b2/blobstore/integration/B2BlobIntegrationLiveTest.java
 
b/providers/b2/src/test/java/org/jclouds/b2/blobstore/integration/B2BlobIntegrationLiveTest.java
index fa0f6ae..85d37fa 100644
--- 
a/providers/b2/src/test/java/org/jclouds/b2/blobstore/integration/B2BlobIntegrationLiveTest.java
+++ 
b/providers/b2/src/test/java/org/jclouds/b2/blobstore/integration/B2BlobIntegrationLiveTest.java
@@ -16,6 +16,7 @@
  */
 package org.jclouds.b2.blobstore.integration;
 
+import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.failBecauseExceptionWasNotThrown;
 
 import java.io.IOException;
@@ -24,6 +25,7 @@ import java.util.concurrent.ExecutionException;
 import org.jclouds.blobstore.domain.Blob;
 import org.jclouds.blobstore.domain.BlobMetadata;
 import org.jclouds.blobstore.domain.BlobBuilder.PayloadBlobBuilder;
+import org.jclouds.blobstore.domain.Tier;
 import org.jclouds.blobstore.integration.internal.BaseBlobIntegrationTest;
 import org.testng.SkipException;
 import org.testng.annotations.Test;
@@ -241,4 +243,40 @@ public final class B2BlobIntegrationLiveTest extends 
BaseBlobIntegrationTest {
          throw new SkipException("B2 requires at least two parts", iae);
       }
    }
+
+   @Test(groups = { "integration", "live" })
+   public void testPutBlobTierStandardMultipart() throws Exception {
+      try {
+         super.testPutBlobTierStandardMultipart();
+         failBecauseExceptionWasNotThrown(IllegalArgumentException.class);
+      } catch (IllegalArgumentException iae) {
+         throw new SkipException("B2 requires at least two parts", iae);
+      }
+   }
+
+   @Test(groups = { "integration", "live" })
+   public void testPutBlobTierInfrequentMultipart() throws Exception {
+      try {
+         super.testPutBlobTierInfrequentMultipart();
+         failBecauseExceptionWasNotThrown(IllegalArgumentException.class);
+      } catch (IllegalArgumentException iae) {
+         throw new SkipException("B2 requires at least two parts", iae);
+      }
+   }
+
+   @Test(groups = { "integration", "live" })
+   public void testPutBlobTierArchiveMultipart() throws Exception {
+      try {
+         super.testPutBlobTierArchiveMultipart();
+         failBecauseExceptionWasNotThrown(IllegalArgumentException.class);
+      } catch (IllegalArgumentException iae) {
+         throw new SkipException("B2 requires at least two parts", iae);
+      }
+   }
+
+   @Override
+   protected void checkTier(BlobMetadata metadata, Tier expected) {
+      // B2 maps all tiers to STANDARD
+      assertThat(metadata.getTier()).isEqualTo(Tier.STANDARD);
+   }
 }

Reply via email to