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 2016/02/17 01:30:27 UTC

[6/8] jclouds git commit: JCLOUDS-651: Atmos support for conditional copies

JCLOUDS-651: Atmos support for conditional copies


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

Branch: refs/heads/master
Commit: cc8af838e8427ec3d59afd091642877911dc7be0
Parents: 66609e6
Author: Andrew Gaul <ga...@apache.org>
Authored: Fri Feb 12 20:43:27 2016 -0800
Committer: Andrew Gaul <ga...@apache.org>
Committed: Tue Feb 16 16:29:54 2016 -0800

----------------------------------------------------------------------
 .../jclouds/atmos/blobstore/AtmosBlobStore.java | 13 +++++++++++
 .../integration/AtmosIntegrationLiveTest.java   | 24 ++++++++++++++++++++
 2 files changed, 37 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds/blob/cc8af838/apis/atmos/src/main/java/org/jclouds/atmos/blobstore/AtmosBlobStore.java
----------------------------------------------------------------------
diff --git a/apis/atmos/src/main/java/org/jclouds/atmos/blobstore/AtmosBlobStore.java b/apis/atmos/src/main/java/org/jclouds/atmos/blobstore/AtmosBlobStore.java
index 6516198..a263af9 100644
--- a/apis/atmos/src/main/java/org/jclouds/atmos/blobstore/AtmosBlobStore.java
+++ b/apis/atmos/src/main/java/org/jclouds/atmos/blobstore/AtmosBlobStore.java
@@ -45,6 +45,7 @@ import org.jclouds.blobstore.domain.PageSet;
 import org.jclouds.blobstore.domain.StorageMetadata;
 import org.jclouds.blobstore.functions.BlobToHttpGetOptions;
 import org.jclouds.blobstore.internal.BaseBlobStore;
+import org.jclouds.blobstore.options.CopyOptions;
 import org.jclouds.blobstore.options.CreateContainerOptions;
 import org.jclouds.blobstore.options.PutOptions;
 import org.jclouds.blobstore.strategy.internal.FetchBlobMetadata;
@@ -334,4 +335,16 @@ public class AtmosBlobStore extends BaseBlobStore {
    public int getMaximumNumberOfParts() {
       throw new UnsupportedOperationException("Atmos does not support multipart uploads");
    }
+
+   @Override
+   public String copyBlob(String fromContainer, String fromName, String toContainer, String toName,
+         CopyOptions options) {
+      if (options.ifMatch() != null) {
+         throw new UnsupportedOperationException("Atmos does not support ifMatch");
+      }
+      if (options.ifNoneMatch() != null) {
+         throw new UnsupportedOperationException("Atmos does not support ifNoneMatch");
+      }
+      return super.copyBlob(fromContainer, fromName, toContainer, toName, options);
+   }
 }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/cc8af838/apis/atmos/src/test/java/org/jclouds/atmos/blobstore/integration/AtmosIntegrationLiveTest.java
----------------------------------------------------------------------
diff --git a/apis/atmos/src/test/java/org/jclouds/atmos/blobstore/integration/AtmosIntegrationLiveTest.java b/apis/atmos/src/test/java/org/jclouds/atmos/blobstore/integration/AtmosIntegrationLiveTest.java
index f534787..640524f 100644
--- a/apis/atmos/src/test/java/org/jclouds/atmos/blobstore/integration/AtmosIntegrationLiveTest.java
+++ b/apis/atmos/src/test/java/org/jclouds/atmos/blobstore/integration/AtmosIntegrationLiveTest.java
@@ -164,4 +164,28 @@ public class AtmosIntegrationLiveTest extends BaseBlobIntegrationTest {
    public void testPutBlobAccessMultipart() throws Exception {
       super.testPutBlobAccessMultipart();
    }
+
+   @Override
+   @Test(groups = { "integration", "live" }, expectedExceptions = UnsupportedOperationException.class)
+   public void testCopyIfMatch() throws Exception {
+      super.testCopyIfMatch();
+   }
+
+   @Override
+   @Test(groups = { "integration", "live" }, expectedExceptions = UnsupportedOperationException.class)
+   public void testCopyIfMatchNegative() throws Exception {
+      super.testCopyIfMatchNegative();
+   }
+
+   @Override
+   @Test(groups = { "integration", "live" }, expectedExceptions = UnsupportedOperationException.class)
+   public void testCopyIfNoneMatch() throws Exception {
+      super.testCopyIfNoneMatch();
+   }
+
+   @Override
+   @Test(groups = { "integration", "live" }, expectedExceptions = UnsupportedOperationException.class)
+   public void testCopyIfNoneMatchNegative() throws Exception {
+      super.testCopyIfNoneMatchNegative();
+   }
 }