You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jclouds.apache.org by ad...@apache.org on 2014/10/08 07:06:16 UTC

[1/5] git commit: JCLOUDS-641 swift is not immediately consistent.

Repository: jclouds-labs-openstack
Updated Branches:
  refs/heads/master 389a3d8c4 -> 5ca24a8f1


JCLOUDS-641 swift is not immediately consistent.


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

Branch: refs/heads/master
Commit: 5ca24a8f1e212c60e01f93ca45179afff9f55c1a
Parents: 90b4367
Author: Adrian Cole <ad...@gmail.com>
Authored: Tue Oct 7 21:59:27 2014 -0700
Committer: Adrian Cole <ad...@apache.org>
Committed: Tue Oct 7 22:05:58 2014 -0700

----------------------------------------------------------------------
 .../swift/v1/blobstore/RegionScopedBlobStoreContext.java | 11 ++++-------
 .../v1/blobstore/config/SwiftBlobStoreContextModule.java |  2 ++
 2 files changed, 6 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/5ca24a8f/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/blobstore/RegionScopedBlobStoreContext.java
----------------------------------------------------------------------
diff --git a/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/blobstore/RegionScopedBlobStoreContext.java b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/blobstore/RegionScopedBlobStoreContext.java
index 9fa3bc9..e58df89 100644
--- a/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/blobstore/RegionScopedBlobStoreContext.java
+++ b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/blobstore/RegionScopedBlobStoreContext.java
@@ -18,12 +18,10 @@ package org.jclouds.openstack.swift.v1.blobstore;
 
 import static com.google.common.base.Preconditions.checkArgument;
 import static com.google.common.base.Preconditions.checkNotNull;
-import static org.jclouds.Constants.PROPERTY_USER_THREADS;
 
 import java.util.Set;
 
 import javax.inject.Inject;
-import javax.inject.Named;
 
 import org.jclouds.Context;
 import org.jclouds.blobstore.BlobRequestSigner;
@@ -38,7 +36,6 @@ import org.jclouds.rest.Utils;
 import com.google.common.base.Function;
 import com.google.common.base.Supplier;
 import com.google.common.reflect.TypeToken;
-import com.google.common.util.concurrent.ListeningExecutorService;
 
 /**
  * Implementation of {@link BlobStoreContext} which allows you to employ
@@ -99,25 +96,25 @@ public class RegionScopedBlobStoreContext extends BaseView implements BlobStoreC
    private final Function<String, BlobStore> blobStore;
    private final Function<String, BlobRequestSigner> blobRequestSigner;
    private final Utils utils;
-   private final ListeningExecutorService executor;
+   private final ConsistencyModel consistencyModel;
 
    @Inject
    public RegionScopedBlobStoreContext(@Provider Context backend, @Provider TypeToken<? extends Context> backendType,
          @Region Supplier<Set<String>> regionIds, @Region Supplier<String> implicitRegionId,
          Function<String, BlobStore> blobStore, Function<String, BlobRequestSigner> blobRequestSigner, Utils utils,
-         @Named(PROPERTY_USER_THREADS) ListeningExecutorService executor) {
+         ConsistencyModel consistencyModel) {
       super(backend, backendType);
       this.regionIds = checkNotNull(regionIds, "regionIds");
       this.implicitRegionId = checkNotNull(implicitRegionId, "implicitRegionId");
       this.blobStore = checkNotNull(blobStore, "blobStore");
       this.blobRequestSigner = checkNotNull(blobRequestSigner, "blobRequestSigner");
       this.utils = checkNotNull(utils, "utils");
-      this.executor = checkNotNull(executor, "executor");
+      this.consistencyModel = checkNotNull(consistencyModel, "consistencyModel");
    }
 
    @Override
    public ConsistencyModel getConsistencyModel() {
-      return ConsistencyModel.EVENTUAL;
+      return consistencyModel;
    }
 
    @Override

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/5ca24a8f/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/blobstore/config/SwiftBlobStoreContextModule.java
----------------------------------------------------------------------
diff --git a/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/blobstore/config/SwiftBlobStoreContextModule.java b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/blobstore/config/SwiftBlobStoreContextModule.java
index 614b1e5..c3b0a82 100644
--- a/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/blobstore/config/SwiftBlobStoreContextModule.java
+++ b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/blobstore/config/SwiftBlobStoreContextModule.java
@@ -20,6 +20,7 @@ import javax.inject.Inject;
 
 import org.jclouds.blobstore.BlobStore;
 import org.jclouds.blobstore.BlobStoreContext;
+import org.jclouds.blobstore.attr.ConsistencyModel;
 import org.jclouds.openstack.swift.v1.blobstore.RegionScopedBlobStoreContext;
 import org.jclouds.openstack.swift.v1.blobstore.RegionScopedSwiftBlobStore;
 
@@ -33,6 +34,7 @@ public class SwiftBlobStoreContextModule extends AbstractModule {
 
    @Override
    protected void configure() {
+      bind(ConsistencyModel.class).toInstance(ConsistencyModel.EVENTUAL);
       bind(BlobStoreContext.class).to(RegionScopedBlobStoreContext.class);
       install(new FactoryModuleBuilder().build(Factory.class));
    }


[3/5] git commit: JCLOUDS-641 fix return code for deleteIfEmpty

Posted by ad...@apache.org.
JCLOUDS-641 fix return code for deleteIfEmpty


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

Branch: refs/heads/master
Commit: cc00dee92a3075fa26b4fef307d79f571ad9de73
Parents: 389a3d8
Author: Adrian Cole <ad...@gmail.com>
Authored: Tue Oct 7 21:33:21 2014 -0700
Committer: Adrian Cole <ad...@apache.org>
Committed: Tue Oct 7 22:05:58 2014 -0700

----------------------------------------------------------------------
 .../openstack/swift/v1/SwiftFallbacks.java      | 43 ++++++++++++++++++++
 .../swift/v1/features/ContainerApi.java         |  4 +-
 .../swift/v1/features/ContainerApiMockTest.java |  3 +-
 3 files changed, 46 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/cc00dee9/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftFallbacks.java
----------------------------------------------------------------------
diff --git a/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftFallbacks.java b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftFallbacks.java
new file mode 100644
index 0000000..c875707
--- /dev/null
+++ b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftFallbacks.java
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.openstack.swift.v1;
+
+import static com.google.common.base.Preconditions.checkNotNull;
+import static com.google.common.base.Predicates.equalTo;
+import static com.google.common.base.Throwables.propagate;
+import static org.jclouds.http.HttpUtils.contains404;
+import static org.jclouds.http.HttpUtils.returnValueOnCodeOrNull;
+
+import org.jclouds.Fallback;
+
+public final class SwiftFallbacks {
+
+   public static final class TrueOn404FalseOn409 implements Fallback<Boolean> {
+      @Override
+      public Boolean createOrPropagate(Throwable t) throws Exception {
+         if (contains404(checkNotNull(t, "throwable")))
+            return true;
+         if (returnValueOnCodeOrNull(t, false, equalTo(409)) != null)
+            return false;
+         throw propagate(t);
+      }
+   }
+
+   private SwiftFallbacks() {
+      throw new AssertionError("intentionally unimplemented");
+   }
+}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/cc00dee9/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/ContainerApi.java
----------------------------------------------------------------------
diff --git a/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/ContainerApi.java b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/ContainerApi.java
index 1eb7ddf..4cbac0d 100644
--- a/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/ContainerApi.java
+++ b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/ContainerApi.java
@@ -17,6 +17,7 @@
 package org.jclouds.openstack.swift.v1.features;
 
 import static javax.ws.rs.core.MediaType.APPLICATION_JSON;
+import static org.jclouds.openstack.swift.v1.SwiftFallbacks.TrueOn404FalseOn409;
 
 import java.util.Map;
 
@@ -33,7 +34,6 @@ import javax.ws.rs.PathParam;
 import org.jclouds.Fallbacks.EmptyFluentIterableOnNotFoundOr404;
 import org.jclouds.Fallbacks.FalseOnNotFoundOr404;
 import org.jclouds.Fallbacks.NullOnNotFoundOr404;
-import org.jclouds.Fallbacks.TrueOnNotFoundOr404;
 import org.jclouds.javax.annotation.Nullable;
 import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest;
 import org.jclouds.openstack.swift.v1.binders.BindMetadataToHeaders.BindContainerMetadataToHeaders;
@@ -209,7 +209,7 @@ public interface ContainerApi {
    @Named("container:deleteIfEmpty")
    @DELETE
    @Path("/{containerName}")
-   @Fallback(TrueOnNotFoundOr404.class)
+   @Fallback(TrueOn404FalseOn409.class)
    boolean deleteIfEmpty(@PathParam("containerName") String containerName) throws IllegalStateException;
 
 }

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/cc00dee9/openstack-swift/src/test/java/org/jclouds/openstack/swift/v1/features/ContainerApiMockTest.java
----------------------------------------------------------------------
diff --git a/openstack-swift/src/test/java/org/jclouds/openstack/swift/v1/features/ContainerApiMockTest.java b/openstack-swift/src/test/java/org/jclouds/openstack/swift/v1/features/ContainerApiMockTest.java
index 64c5993..6b3ef66 100644
--- a/openstack-swift/src/test/java/org/jclouds/openstack/swift/v1/features/ContainerApiMockTest.java
+++ b/openstack-swift/src/test/java/org/jclouds/openstack/swift/v1/features/ContainerApiMockTest.java
@@ -334,7 +334,6 @@ public class ContainerApiMockTest extends BaseOpenStackMockTest<SwiftApi> {
       }
    }
 
-   @Test(expectedExceptions = IllegalStateException.class)
    public void testDeleteWhenNotEmpty() throws Exception {
       MockWebServer server = mockOpenStackServer();
       server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
@@ -342,7 +341,7 @@ public class ContainerApiMockTest extends BaseOpenStackMockTest<SwiftApi> {
 
       try {
          SwiftApi api = api(server.getUrl("/").toString(), "openstack-swift");
-         api.getContainerApi("DFW").deleteIfEmpty("myContainer");
+         assertFalse(api.getContainerApi("DFW").deleteIfEmpty("myContainer"));
 
       } finally {
          assertEquals(server.getRequestCount(), 2);


[4/5] git commit: JCLOUDS-641 etag is content-md5 in swift.

Posted by ad...@apache.org.
JCLOUDS-641 etag is content-md5 in swift.


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

Branch: refs/heads/master
Commit: 90b4367f8c71bc05a3ab0a6f4ae2d4ac63dd5d93
Parents: bde513f
Author: Adrian Cole <ac...@twitter.com>
Authored: Tue Oct 7 20:11:29 2014 -0700
Committer: Adrian Cole <ad...@apache.org>
Committed: Tue Oct 7 22:05:58 2014 -0700

----------------------------------------------------------------------
 .../swift/v1/functions/ParseObjectFromResponse.java      |  9 ++++++++-
 .../swift/v1/functions/ParseObjectListFromResponse.java  |  9 +++++++--
 .../openstack/swift/v1/features/ObjectApiMockTest.java   | 11 +++++++++++
 3 files changed, 26 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/90b4367f/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/functions/ParseObjectFromResponse.java
----------------------------------------------------------------------
diff --git a/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/functions/ParseObjectFromResponse.java b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/functions/ParseObjectFromResponse.java
index 714a403..cc934e4 100644
--- a/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/functions/ParseObjectFromResponse.java
+++ b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/functions/ParseObjectFromResponse.java
@@ -16,6 +16,7 @@
  */
 package org.jclouds.openstack.swift.v1.functions;
 
+import static com.google.common.io.BaseEncoding.base16;
 import static com.google.common.net.HttpHeaders.ETAG;
 import static com.google.common.net.HttpHeaders.LAST_MODIFIED;
 import static org.jclouds.openstack.swift.v1.reference.SwiftHeaders.OBJECT_DELETE_AT;
@@ -35,6 +36,7 @@ import org.jclouds.rest.InvocationContext;
 import org.jclouds.rest.internal.GeneratedHttpRequest;
 
 import com.google.common.base.Function;
+import com.google.common.hash.HashCode;
 
 public class ParseObjectFromResponse implements Function<HttpResponse, SwiftObject>,
       InvocationContext<ParseObjectFromResponse> {
@@ -61,10 +63,15 @@ public class ParseObjectFromResponse implements Function<HttpResponse, SwiftObje
          payload.setContentMetadata(contentMeta);
       }
 
+      String etag = from.getFirstHeaderOrNull(ETAG);
+      if (etag != null) {
+         payload.getContentMetadata().setContentMD5(HashCode.fromBytes(base16().lowerCase().decode(etag)));
+      }
+
       return SwiftObject.builder()
             .uri(URI.create(uri))
             .name(name)
-            .etag(from.getFirstHeaderOrNull(ETAG))
+            .etag(etag)
             .payload(payload)
             .lastModified(dates.rfc822DateParse(from.getFirstHeaderOrNull(LAST_MODIFIED)))
             .headers(from.getHeaders())

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/90b4367f/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/functions/ParseObjectListFromResponse.java
----------------------------------------------------------------------
diff --git a/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/functions/ParseObjectListFromResponse.java b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/functions/ParseObjectListFromResponse.java
index 73f5a29..ff12e0f 100644
--- a/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/functions/ParseObjectListFromResponse.java
+++ b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/functions/ParseObjectListFromResponse.java
@@ -16,6 +16,7 @@
  */
 package org.jclouds.openstack.swift.v1.functions;
 
+import static com.google.common.io.BaseEncoding.base16;
 import static org.jclouds.http.Uris.uriBuilder;
 
 import java.util.Date;
@@ -36,6 +37,7 @@ import org.jclouds.rest.internal.GeneratedHttpRequest;
 
 import com.google.common.base.Function;
 import com.google.common.collect.Lists;
+import com.google.common.hash.HashCode;
 import com.google.common.io.ByteSource;
 
 public class ParseObjectListFromResponse implements Function<HttpResponse, ObjectList>,
@@ -81,7 +83,7 @@ public class ParseObjectListFromResponse implements Function<HttpResponse, Objec
                .uri(uriBuilder(containerUri).clearQuery().appendPath(input.name).build())
                .name(input.name)
                .etag(input.hash)
-               .payload(payload(input.bytes, input.content_type, input.expires))
+               .payload(payload(input.bytes, input.hash, input.content_type, input.expires))
                .lastModified(input.last_modified).build();
       }
    }
@@ -98,11 +100,14 @@ public class ParseObjectListFromResponse implements Function<HttpResponse, Objec
       return this;
    }
 
-   private static Payload payload(long bytes, String contentType, Date expires) {
+   private static Payload payload(long bytes, String hash, String contentType, Date expires) {
       Payload payload = Payloads.newByteSourcePayload(ByteSource.empty());
       payload.getContentMetadata().setContentLength(bytes);
       payload.getContentMetadata().setContentType(contentType);
       payload.getContentMetadata().setExpires(expires);
+      if (hash != null) {
+         payload.getContentMetadata().setContentMD5(HashCode.fromBytes(base16().lowerCase().decode(hash)));
+      }
       return payload;
    }
 }

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/90b4367f/openstack-swift/src/test/java/org/jclouds/openstack/swift/v1/features/ObjectApiMockTest.java
----------------------------------------------------------------------
diff --git a/openstack-swift/src/test/java/org/jclouds/openstack/swift/v1/features/ObjectApiMockTest.java b/openstack-swift/src/test/java/org/jclouds/openstack/swift/v1/features/ObjectApiMockTest.java
index ed73cd4..8c0e4d1 100644
--- a/openstack-swift/src/test/java/org/jclouds/openstack/swift/v1/features/ObjectApiMockTest.java
+++ b/openstack-swift/src/test/java/org/jclouds/openstack/swift/v1/features/ObjectApiMockTest.java
@@ -17,6 +17,7 @@
 package org.jclouds.openstack.swift.v1.features;
 
 import static com.google.common.base.Charsets.US_ASCII;
+import static com.google.common.io.BaseEncoding.base16;
 import static com.google.common.net.HttpHeaders.EXPIRES;
 import static org.jclouds.Constants.PROPERTY_MAX_RETRIES;
 import static org.jclouds.Constants.PROPERTY_RETRY_DELAY_START;
@@ -108,6 +109,11 @@ public class ObjectApiMockTest extends BaseOpenStackMockTest<SwiftApi> {
          assertEquals(objects.getContainer().getName(), "myContainer");
          assertTrue(objects.getContainer().getAnybodyRead().get());
 
+         // Check MD5 is parsed from the ETag header.
+         SwiftObject object1 = objects.get(1);
+         assertEquals(base16().lowerCase().decode(object1.getETag()),
+               object1.getPayload().getContentMetadata().getContentMD5AsHashCode().asBytes());
+
          assertEquals(server.getRequestCount(), 2);
          assertAuthentication(server);
          assertRequest(server.takeRequest(), "GET", "/v1/MossoCloudFS_5bcf396e-39dd-45ff-93a1-712b9aba90a9/myContainer");
@@ -259,6 +265,11 @@ public class ObjectApiMockTest extends BaseOpenStackMockTest<SwiftApi> {
          SwiftObject object = api.getObjectApi("DFW", "myContainer").getWithoutBody("myObject");
          assertEquals(object.getName(), "myObject");
          assertEquals(object.getETag(), "8a964ee2a5e88be344f36c22562a6486");
+
+         // Check MD5 is parsed from the ETag header.
+         assertEquals(base16().lowerCase().decode(object.getETag()),
+               object.getPayload().getContentMetadata().getContentMD5AsHashCode().asBytes());
+
          assertEquals(object.getLastModified(), dates.rfc822DateParse("Fri, 12 Jun 2010 13:40:18 GMT"));
          for (Entry<String, String> entry : object.getMetadata().entrySet()) {
             assertEquals(object.getMetadata().get(entry.getKey().toLowerCase()), entry.getValue());


[2/5] git commit: JCLOUDS-641 copy/paste error completely screwed blobstore tests.

Posted by ad...@apache.org.
JCLOUDS-641 copy/paste error completely screwed blobstore tests.


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

Branch: refs/heads/master
Commit: bde513ff1654bd575a85ac0a9ab0468f14ff81df
Parents: ae67f70
Author: Adrian Cole <ac...@twitter.com>
Authored: Tue Oct 7 19:38:16 2014 -0700
Committer: Adrian Cole <ad...@apache.org>
Committed: Tue Oct 7 22:05:58 2014 -0700

----------------------------------------------------------------------
 rackspace-cloudfiles-uk/pom.xml | 5 ++---
 rackspace-cloudfiles-us/pom.xml | 5 ++---
 rackspace-cloudfiles/pom.xml    | 5 ++---
 3 files changed, 6 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/bde513ff/rackspace-cloudfiles-uk/pom.xml
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles-uk/pom.xml b/rackspace-cloudfiles-uk/pom.xml
index fd55157..70e2c25 100644
--- a/rackspace-cloudfiles-uk/pom.xml
+++ b/rackspace-cloudfiles-uk/pom.xml
@@ -153,10 +153,9 @@
                   <goal>test</goal>
                 </goals>
                 <configuration>
-                  <forkCount>5</forkCount>
-                  <reuseForks>true</reuseForks>
-                  <parallel>classes</parallel>
                   <systemPropertyVariables>
+                    <jclouds.blobstore.httpstream.url>${jclouds.blobstore.httpstream.url}</jclouds.blobstore.httpstream.url>
+                    <jclouds.blobstore.httpstream.md5>${jclouds.blobstore.httpstream.md5}</jclouds.blobstore.httpstream.md5>
                     <test.rackspace-cloudfiles-uk.endpoint>${test.rackspace-cloudfiles-uk.endpoint}</test.rackspace-cloudfiles-uk.endpoint>
                     <test.rackspace-cloudfiles-uk.api-version>${test.rackspace-cloudfiles-uk.api-version}</test.rackspace-cloudfiles-uk.api-version>
                     <test.rackspace-cloudfiles-uk.build-version>${test.rackspace-cloudfiles-uk.build-version}</test.rackspace-cloudfiles-uk.build-version>

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/bde513ff/rackspace-cloudfiles-us/pom.xml
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles-us/pom.xml b/rackspace-cloudfiles-us/pom.xml
index f54d9ce..ac9ff34 100644
--- a/rackspace-cloudfiles-us/pom.xml
+++ b/rackspace-cloudfiles-us/pom.xml
@@ -153,10 +153,9 @@
                   <goal>test</goal>
                 </goals>
                 <configuration>
-                  <forkCount>5</forkCount>
-                  <reuseForks>true</reuseForks>
-                  <parallel>classes</parallel>
                   <systemPropertyVariables>
+                    <jclouds.blobstore.httpstream.url>${jclouds.blobstore.httpstream.url}</jclouds.blobstore.httpstream.url>
+                    <jclouds.blobstore.httpstream.md5>${jclouds.blobstore.httpstream.md5}</jclouds.blobstore.httpstream.md5>
                     <test.rackspace-cloudfiles-us.endpoint>${test.rackspace-cloudfiles-us.endpoint}</test.rackspace-cloudfiles-us.endpoint>
                     <test.rackspace-cloudfiles-us.api-version>${test.rackspace-cloudfiles-us.api-version}</test.rackspace-cloudfiles-us.api-version>
                     <test.rackspace-cloudfiles-us.build-version>${test.rackspace-cloudfiles-us.build-version}</test.rackspace-cloudfiles-us.build-version>

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/bde513ff/rackspace-cloudfiles/pom.xml
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/pom.xml b/rackspace-cloudfiles/pom.xml
index 3e0bcbf..498362a 100644
--- a/rackspace-cloudfiles/pom.xml
+++ b/rackspace-cloudfiles/pom.xml
@@ -148,10 +148,9 @@
                   <goal>test</goal>
                 </goals>
                 <configuration>
-                  <forkCount>5</forkCount>
-                  <reuseForks>true</reuseForks>
-                  <parallel>classes</parallel>
                   <systemPropertyVariables>
+                    <jclouds.blobstore.httpstream.url>${jclouds.blobstore.httpstream.url}</jclouds.blobstore.httpstream.url>
+                    <jclouds.blobstore.httpstream.md5>${jclouds.blobstore.httpstream.md5}</jclouds.blobstore.httpstream.md5>
                     <test.rackspace-cloudfiles.endpoint>${test.rackspace-cloudfiles.endpoint}</test.rackspace-cloudfiles.endpoint>
                     <test.rackspace-cloudfiles.api-version>${test.rackspace-cloudfiles.api-version}</test.rackspace-cloudfiles.api-version>
                     <test.rackspace-cloudfiles.build-version>${test.rackspace-cloudfiles.build-version}</test.rackspace-cloudfiles.build-version>


[5/5] git commit: Things in labs shouldn't live long enough to be deprecated.

Posted by ad...@apache.org.
Things in labs shouldn't live long enough to be deprecated.


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

Branch: refs/heads/master
Commit: ae67f7094785e3b2d51b3ef1ca90c79a1e8ce61f
Parents: cc00dee
Author: Adrian Cole <ac...@twitter.com>
Authored: Tue Oct 7 19:28:49 2014 -0700
Committer: Adrian Cole <ad...@apache.org>
Committed: Tue Oct 7 22:05:58 2014 -0700

----------------------------------------------------------------------
 .../jclouds/openstack/swift/v1/SwiftApi.java    | 42 --------------------
 .../openstack/swift/v1/domain/Segment.java      |  9 -----
 .../swift/v1/reference/SwiftHeaders.java        |  6 ---
 .../swift/v1/features/ObjectApiLiveTest.java    |  7 ++--
 4 files changed, 3 insertions(+), 61 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/ae67f709/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftApi.java
----------------------------------------------------------------------
diff --git a/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftApi.java b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftApi.java
index d5b4ba3..1d4d1d0 100644
--- a/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftApi.java
+++ b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/SwiftApi.java
@@ -67,46 +67,4 @@ public interface SwiftApi extends Closeable {
    @Path("/{containerName}")
    StaticLargeObjectApi getStaticLargeObjectApi(@EndpointParam(parser = RegionToEndpoint.class) String region,
          @PathParam("containerName") String containerName);
-
-   /**
-    * @deprecated Please use {@link #getAccountApi(String)} as this method will be removed in jclouds 3.0.
-    */
-   @Deprecated
-   @Delegate
-   AccountApi getAccountApiForRegion(@EndpointParam(parser = RegionToEndpoint.class) String region);
-
-   /**
-    * @deprecated Please use {@link #getBulkApi(String)} as this method will be removed in jclouds 3.0.
-    */
-   @Deprecated
-   @Delegate
-   BulkApi getBulkApiForRegion(@EndpointParam(parser = RegionToEndpoint.class) String region);
-
-   /**
-    * @deprecated Please use {@link #getContainerApi(String)} as this method will be removed in jclouds 3.0.
-    */
-   @Deprecated
-   @Delegate
-   ContainerApi getContainerApiForRegion(@EndpointParam(parser = RegionToEndpoint.class) String region);
-
-   /**
-    * @deprecated Please use {@link #getObjectApi(String, String)} as this method will be removed in jclouds 3.0.
-    */
-   @Deprecated
-   @Delegate
-   @Path("/{containerName}")
-   ObjectApi getObjectApiForRegionAndContainer(@EndpointParam(parser = RegionToEndpoint.class) String region,
-         @PathParam("containerName") String containerName);
-
-   /**
-    * @deprecated Please use {@link #getStaticLargeObjectApi(String, String)} as this method
-    *             will be removed in jclouds 3.0.
-    */
-   @Deprecated
-   @Delegate
-   @Path("/{containerName}")
-   StaticLargeObjectApi getStaticLargeObjectApiForRegionAndContainer(
-         @EndpointParam(parser = RegionToEndpoint.class) String region,
-         @PathParam("containerName") String containerName);
-
 }

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/ae67f709/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/domain/Segment.java
----------------------------------------------------------------------
diff --git a/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/domain/Segment.java b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/domain/Segment.java
index 977d789..a5f064f 100644
--- a/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/domain/Segment.java
+++ b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/domain/Segment.java
@@ -52,15 +52,6 @@ public class Segment {
 
    /**
     * @return The ETag of the content of the segment object.
-    * @deprecated Please use {@link #getETag()} as this method will be removed in jclouds 1.8.
-    */
-   @Deprecated
-   public String getEtag() {
-      return etag;
-   }
-
-   /**
-    * @return The ETag of the content of the segment object.
     */
    public String getETag() {
       return etag;

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/ae67f709/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/reference/SwiftHeaders.java
----------------------------------------------------------------------
diff --git a/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/reference/SwiftHeaders.java b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/reference/SwiftHeaders.java
index 56e7949..caab5e7 100644
--- a/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/reference/SwiftHeaders.java
+++ b/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/reference/SwiftHeaders.java
@@ -66,12 +66,6 @@ public final class SwiftHeaders {
    // Versioning
    public static final String VERSIONS_LOCATION = "X-Versions-Location";
 
-   /**
-    * @deprecated Please use {@link #VERSIONS_LOCATION}. This field will be removed in jclouds 1.8.
-    */
-   @Deprecated
-   public static final String CONTAINER_VERSIONS_LOCATION = "X-Versions-Location";
-
    // Misc functionality
    public static final String CONTAINER_WEB_MODE = "X-Web-Mode";
 

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/ae67f709/openstack-swift/src/test/java/org/jclouds/openstack/swift/v1/features/ObjectApiLiveTest.java
----------------------------------------------------------------------
diff --git a/openstack-swift/src/test/java/org/jclouds/openstack/swift/v1/features/ObjectApiLiveTest.java b/openstack-swift/src/test/java/org/jclouds/openstack/swift/v1/features/ObjectApiLiveTest.java
index 9558a16..5a472ff 100644
--- a/openstack-swift/src/test/java/org/jclouds/openstack/swift/v1/features/ObjectApiLiveTest.java
+++ b/openstack-swift/src/test/java/org/jclouds/openstack/swift/v1/features/ObjectApiLiveTest.java
@@ -85,16 +85,15 @@ public class ObjectApiLiveTest extends BaseSwiftApiLiveTest<SwiftApi> {
       payload.getContentMetadata().setExpires(expireAt);
 
       for (String regionId : regions) {
-         String etag = api.getObjectApiForRegionAndContainer(regionId, containerName)
-               .put(objectName, payload);
+         String etag = api.getObjectApi(regionId, containerName).put(objectName, payload);
          assertNotNull(etag);
 
-         SwiftObject object = api.getObjectApiForRegionAndContainer(regionId, containerName).get(objectName);
+         SwiftObject object = api.getObjectApi(regionId, containerName).get(objectName);
          assertEquals(object.getName(), objectName);
          checkObject(object);
          assertEquals(toStringAndClose(object.getPayload().openStream()), "swifty");
 
-         api.getObjectApiForRegionAndContainer(regionId, containerName).delete(objectName);
+         api.getObjectApi(regionId, containerName).delete(objectName);
       }
    }
    public void testCopyObject() throws Exception {