You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jclouds.apache.org by an...@apache.org on 2014/10/06 22:24:18 UTC
[3/7] git commit: JCLOUDS-40 unasync Fallback
JCLOUDS-40 unasync Fallback
Project: http://git-wip-us.apache.org/repos/asf/jclouds/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds/commit/b9525a08
Tree: http://git-wip-us.apache.org/repos/asf/jclouds/tree/b9525a08
Diff: http://git-wip-us.apache.org/repos/asf/jclouds/diff/b9525a08
Branch: refs/heads/reactivate-checkstyle
Commit: b9525a087730642dd116cfa1d394f4afaef28fe5
Parents: 0a236f5
Author: Adrian Cole <ad...@gmail.com>
Authored: Sun Oct 5 22:55:07 2014 -0700
Committer: Adrian Cole <ad...@apache.org>
Committed: Mon Oct 6 13:14:59 2014 -0700
----------------------------------------------------------------------
.../fallbacks/EndpointIfAlreadyExists.java | 7 ---
.../fallbacks/TrueOn404FalseOnPathNotEmpty.java | 8 ---
.../fallbacks/EndpointIfAlreadyExistsTest.java | 11 ++--
.../functions/CloudStackFallbacks.java | 8 ---
.../main/java/org/jclouds/ec2/EC2Fallbacks.java | 7 ---
.../keystone/v2_0/KeystoneFallbacks.java | 9 +--
.../main/java/org/jclouds/s3/S3Fallbacks.java | 8 ---
...ByYouOrOperationAbortedWhenBucketExists.java | 8 ---
.../java/org/jclouds/s3/S3ClientMockTest.java | 1 -
...uOrOperationAbortedWhenBucketExistsTest.java | 17 +++---
.../jclouds/openstack/swift/SwiftFallbacks.java | 8 ---
.../jclouds/blobstore/BlobStoreFallbacks.java | 33 -----------
core/src/main/java/org/jclouds/Fallback.java | 4 +-
core/src/main/java/org/jclouds/Fallbacks.java | 58 --------------------
.../fallbacks/HeaderToRetryAfterException.java | 14 ++---
.../fallbacks/MapHttp4xxCodesToExceptions.java | 11 +---
.../fallbacks/PropagateIfRetryAfter.java | 12 ++--
.../HeaderToRetryAfterExceptionTest.java | 47 +++++++---------
.../MapHttp4xxCodesToExceptionsTest.java | 14 ++---
.../org/jclouds/http/IntegrationTestClient.java | 7 ---
.../internal/RestAnnotationProcessorTest.java | 1 -
.../jclouds/azureblob/AzureBlobFallbacks.java | 8 ---
.../org/jclouds/dynect/v3/DynECTFallbacks.java | 8 ---
23 files changed, 56 insertions(+), 253 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/apis/atmos/src/main/java/org/jclouds/atmos/fallbacks/EndpointIfAlreadyExists.java
----------------------------------------------------------------------
diff --git a/apis/atmos/src/main/java/org/jclouds/atmos/fallbacks/EndpointIfAlreadyExists.java b/apis/atmos/src/main/java/org/jclouds/atmos/fallbacks/EndpointIfAlreadyExists.java
index 4cae37c..041a6ed 100644
--- a/apis/atmos/src/main/java/org/jclouds/atmos/fallbacks/EndpointIfAlreadyExists.java
+++ b/apis/atmos/src/main/java/org/jclouds/atmos/fallbacks/EndpointIfAlreadyExists.java
@@ -18,7 +18,6 @@ package org.jclouds.atmos.fallbacks;
import static com.google.common.base.Preconditions.checkNotNull;
import static com.google.common.base.Throwables.propagate;
-import static com.google.common.util.concurrent.Futures.immediateFuture;
import java.net.URI;
@@ -29,18 +28,12 @@ import org.jclouds.javax.annotation.Nullable;
import org.jclouds.rest.InvocationContext;
import com.google.common.annotations.VisibleForTesting;
-import com.google.common.util.concurrent.ListenableFuture;
public class EndpointIfAlreadyExists implements Fallback<URI>, InvocationContext<EndpointIfAlreadyExists> {
private URI endpoint;
@Override
- public ListenableFuture<URI> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
- @Override
public URI createOrPropagate(Throwable t) throws Exception {
if (checkNotNull(t, "throwable") instanceof KeyAlreadyExistsException) {
return endpoint;
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/apis/atmos/src/main/java/org/jclouds/atmos/fallbacks/TrueOn404FalseOnPathNotEmpty.java
----------------------------------------------------------------------
diff --git a/apis/atmos/src/main/java/org/jclouds/atmos/fallbacks/TrueOn404FalseOnPathNotEmpty.java b/apis/atmos/src/main/java/org/jclouds/atmos/fallbacks/TrueOn404FalseOnPathNotEmpty.java
index 18dda1e..d30be6d 100644
--- a/apis/atmos/src/main/java/org/jclouds/atmos/fallbacks/TrueOn404FalseOnPathNotEmpty.java
+++ b/apis/atmos/src/main/java/org/jclouds/atmos/fallbacks/TrueOn404FalseOnPathNotEmpty.java
@@ -17,7 +17,6 @@
package org.jclouds.atmos.fallbacks;
import static com.google.common.base.Throwables.propagate;
-import static com.google.common.util.concurrent.Futures.immediateFuture;
import static org.jclouds.util.Throwables2.getFirstThrowableOfType;
import org.jclouds.Fallback;
@@ -25,15 +24,8 @@ import org.jclouds.atmos.AtmosResponseException;
import org.jclouds.atmos.reference.AtmosErrorCode;
import org.jclouds.http.HttpUtils;
-import com.google.common.util.concurrent.ListenableFuture;
-
public final class TrueOn404FalseOnPathNotEmpty implements Fallback<Boolean> {
@Override
- public ListenableFuture<Boolean> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
- @Override
public Boolean createOrPropagate(Throwable t) throws Exception {
if (HttpUtils.contains404(t)) {
return true;
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/apis/atmos/src/test/java/org/jclouds/atmos/fallbacks/EndpointIfAlreadyExistsTest.java
----------------------------------------------------------------------
diff --git a/apis/atmos/src/test/java/org/jclouds/atmos/fallbacks/EndpointIfAlreadyExistsTest.java b/apis/atmos/src/test/java/org/jclouds/atmos/fallbacks/EndpointIfAlreadyExistsTest.java
index d6c4216..6a41351 100644
--- a/apis/atmos/src/test/java/org/jclouds/atmos/fallbacks/EndpointIfAlreadyExistsTest.java
+++ b/apis/atmos/src/test/java/org/jclouds/atmos/fallbacks/EndpointIfAlreadyExistsTest.java
@@ -16,7 +16,6 @@
*/
package org.jclouds.atmos.fallbacks;
-import static com.google.common.util.concurrent.Futures.getUnchecked;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNull;
@@ -30,23 +29,23 @@ public class EndpointIfAlreadyExistsTest {
@Test
public void testFoundIsNullWhenEndpointNotSet() throws Exception {
- assertNull(getUnchecked(new EndpointIfAlreadyExists().create(new KeyAlreadyExistsException())));
+ assertNull(new EndpointIfAlreadyExists().createOrPropagate(new KeyAlreadyExistsException()));
}
@Test
public void testFoundIsEndpointWhenSet() throws Exception {
assertEquals(
- getUnchecked(new EndpointIfAlreadyExists().setEndpoint(URI.create("foo")).create(
- new KeyAlreadyExistsException())), URI.create("foo"));
+ new EndpointIfAlreadyExists().setEndpoint(URI.create("foo")).createOrPropagate(
+ new KeyAlreadyExistsException()), URI.create("foo"));
}
@Test(expectedExceptions = RuntimeException.class)
public void testNotFoundPropagates() throws Exception {
- new EndpointIfAlreadyExists().create(new RuntimeException());
+ new EndpointIfAlreadyExists().createOrPropagate(new RuntimeException());
}
@Test(expectedExceptions = NullPointerException.class)
public void testNullIsBad() throws Exception {
- new EndpointIfAlreadyExists().create(null);
+ new EndpointIfAlreadyExists().createOrPropagate(null);
}
}
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CloudStackFallbacks.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CloudStackFallbacks.java b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CloudStackFallbacks.java
index 50185ed..c2b5ec8 100644
--- a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CloudStackFallbacks.java
+++ b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CloudStackFallbacks.java
@@ -17,14 +17,11 @@
package org.jclouds.cloudstack.functions;
import static com.google.common.base.Preconditions.checkNotNull;
-import static com.google.common.util.concurrent.Futures.immediateFuture;
import static org.jclouds.Fallbacks.valOnNotFoundOr404;
import static org.jclouds.util.Throwables2.getFirstThrowableOfType;
import org.jclouds.Fallback;
-import com.google.common.util.concurrent.ListenableFuture;
-
public final class CloudStackFallbacks {
private CloudStackFallbacks() {
}
@@ -35,11 +32,6 @@ public final class CloudStackFallbacks {
*/
public static final class VoidOnNotFoundOr404OrUnableToFindAccountOwner implements Fallback<Void> {
@Override
- public ListenableFuture<Void> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
- @Override
public Void createOrPropagate(Throwable t) throws Exception {
IllegalStateException e = getFirstThrowableOfType(checkNotNull(t, "throwable"), IllegalStateException.class);
if (e != null && e.getMessage().indexOf("Unable to find account owner for") != -1) {
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/apis/ec2/src/main/java/org/jclouds/ec2/EC2Fallbacks.java
----------------------------------------------------------------------
diff --git a/apis/ec2/src/main/java/org/jclouds/ec2/EC2Fallbacks.java b/apis/ec2/src/main/java/org/jclouds/ec2/EC2Fallbacks.java
index 7cb4675..c16f5af 100644
--- a/apis/ec2/src/main/java/org/jclouds/ec2/EC2Fallbacks.java
+++ b/apis/ec2/src/main/java/org/jclouds/ec2/EC2Fallbacks.java
@@ -18,14 +18,12 @@ package org.jclouds.ec2;
import static com.google.common.base.Preconditions.checkNotNull;
import static com.google.common.base.Throwables.propagate;
-import static com.google.common.util.concurrent.Futures.immediateFuture;
import org.jclouds.Fallback;
import org.jclouds.aws.AWSResponseException;
import com.google.common.base.Predicates;
import com.google.common.collect.ImmutableSet;
-import com.google.common.util.concurrent.ListenableFuture;
public final class EC2Fallbacks {
private EC2Fallbacks() {
@@ -33,11 +31,6 @@ public final class EC2Fallbacks {
public static final class VoidOnVolumeAvailable implements Fallback<Void> {
@Override
- public ListenableFuture<Void> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
- @Override
public Void createOrPropagate(Throwable t) throws Exception {
if (checkNotNull(t, "throwable") instanceof AWSResponseException) {
AWSResponseException e = AWSResponseException.class.cast(t);
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneFallbacks.java
----------------------------------------------------------------------
diff --git a/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneFallbacks.java b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneFallbacks.java
index 409022f..f5cf9ea 100644
--- a/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneFallbacks.java
+++ b/apis/openstack-keystone/src/main/java/org/jclouds/openstack/keystone/v2_0/KeystoneFallbacks.java
@@ -16,15 +16,13 @@
*/
package org.jclouds.openstack.keystone.v2_0;
-import static com.google.common.util.concurrent.Futures.immediateFuture;
import static org.jclouds.Fallbacks.valOnNotFoundOr404;
import org.jclouds.Fallback;
-import org.jclouds.openstack.v2_0.domain.PaginatedCollection;
import org.jclouds.openstack.v2_0.domain.Link;
+import org.jclouds.openstack.v2_0.domain.PaginatedCollection;
import com.google.common.collect.ImmutableSet;
-import com.google.common.util.concurrent.ListenableFuture;
public final class KeystoneFallbacks {
private KeystoneFallbacks() {
@@ -36,11 +34,6 @@ public final class KeystoneFallbacks {
};
@Override
- public ListenableFuture<PaginatedCollection<Object>> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
- @Override
public PaginatedCollection<Object> createOrPropagate(Throwable t) throws Exception {
return valOnNotFoundOr404(EMPTY, t);
}
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/apis/s3/src/main/java/org/jclouds/s3/S3Fallbacks.java
----------------------------------------------------------------------
diff --git a/apis/s3/src/main/java/org/jclouds/s3/S3Fallbacks.java b/apis/s3/src/main/java/org/jclouds/s3/S3Fallbacks.java
index 73edb0e..6795c91 100644
--- a/apis/s3/src/main/java/org/jclouds/s3/S3Fallbacks.java
+++ b/apis/s3/src/main/java/org/jclouds/s3/S3Fallbacks.java
@@ -19,26 +19,18 @@ package org.jclouds.s3;
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 com.google.common.util.concurrent.Futures.immediateFuture;
import static org.jclouds.http.HttpUtils.returnValueOnCodeOrNull;
import static org.jclouds.util.Throwables2.getFirstThrowableOfType;
import org.jclouds.Fallback;
import org.jclouds.blobstore.ContainerNotFoundException;
-import com.google.common.util.concurrent.ListenableFuture;
-
public final class S3Fallbacks {
private S3Fallbacks() {
}
public static final class TrueOn404OrNotFoundFalseOnIllegalState implements Fallback<Boolean> {
@Override
- public ListenableFuture<Boolean> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
- @Override
public Boolean createOrPropagate(Throwable t) throws Exception {
if (getFirstThrowableOfType(checkNotNull(t, "throwable"), IllegalStateException.class) != null)
return false;
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/apis/s3/src/main/java/org/jclouds/s3/fallbacks/FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists.java
----------------------------------------------------------------------
diff --git a/apis/s3/src/main/java/org/jclouds/s3/fallbacks/FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists.java b/apis/s3/src/main/java/org/jclouds/s3/fallbacks/FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists.java
index 998fe33..4b58ffa 100644
--- a/apis/s3/src/main/java/org/jclouds/s3/fallbacks/FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists.java
+++ b/apis/s3/src/main/java/org/jclouds/s3/fallbacks/FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists.java
@@ -18,7 +18,6 @@ package org.jclouds.s3.fallbacks;
import static com.google.common.base.Preconditions.checkNotNull;
import static com.google.common.base.Throwables.propagate;
-import static com.google.common.util.concurrent.Futures.immediateFuture;
import static org.jclouds.s3.util.S3Utils.getBucketName;
import static org.jclouds.util.Throwables2.getFirstThrowableOfType;
@@ -31,8 +30,6 @@ import org.jclouds.javax.annotation.Nullable;
import org.jclouds.rest.InvocationContext;
import org.jclouds.s3.S3Client;
-import com.google.common.util.concurrent.ListenableFuture;
-
public class FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists implements Fallback<Boolean>,
InvocationContext<FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists> {
@@ -45,11 +42,6 @@ public class FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists im
}
@Override
- public ListenableFuture<Boolean> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
- @Override
public Boolean createOrPropagate(Throwable t) throws Exception {
AWSResponseException exception = getFirstThrowableOfType(checkNotNull(t, "throwable"), AWSResponseException.class);
if (exception != null && exception.getError() != null && exception.getError().getCode() != null) {
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/apis/s3/src/test/java/org/jclouds/s3/S3ClientMockTest.java
----------------------------------------------------------------------
diff --git a/apis/s3/src/test/java/org/jclouds/s3/S3ClientMockTest.java b/apis/s3/src/test/java/org/jclouds/s3/S3ClientMockTest.java
index 097d49d..5cb2db5 100644
--- a/apis/s3/src/test/java/org/jclouds/s3/S3ClientMockTest.java
+++ b/apis/s3/src/test/java/org/jclouds/s3/S3ClientMockTest.java
@@ -21,7 +21,6 @@ import static com.google.common.net.HttpHeaders.ETAG;
import static com.google.common.net.HttpHeaders.EXPECT;
import static com.google.common.util.concurrent.MoreExecutors.newDirectExecutorService;
import static org.jclouds.Constants.PROPERTY_MAX_RETRIES;
-import static org.jclouds.Constants.PROPERTY_SO_TIMEOUT;
import static org.testng.Assert.assertEquals;
import java.io.IOException;
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/apis/s3/src/test/java/org/jclouds/s3/fallbacks/FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExistsTest.java
----------------------------------------------------------------------
diff --git a/apis/s3/src/test/java/org/jclouds/s3/fallbacks/FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExistsTest.java b/apis/s3/src/test/java/org/jclouds/s3/fallbacks/FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExistsTest.java
index 7c31a39..9e3989e 100644
--- a/apis/s3/src/test/java/org/jclouds/s3/fallbacks/FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExistsTest.java
+++ b/apis/s3/src/test/java/org/jclouds/s3/fallbacks/FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExistsTest.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
package org.jclouds.s3.fallbacks;
-import static com.google.common.util.concurrent.Futures.getUnchecked;
+
import static org.easymock.EasyMock.createMock;
import static org.easymock.EasyMock.expect;
import static org.easymock.EasyMock.replay;
@@ -55,8 +55,8 @@ public class FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExistsTes
replay(client);
Exception e = getErrorWithCode("BucketAlreadyOwnedByYou");
- assertFalse(getUnchecked(new FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists(client).setContext(
- putBucket).create(e)));
+ assertFalse(new FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists(client).setContext(
+ putBucket).createOrPropagate(e));
verify(client);
}
@@ -66,8 +66,8 @@ public class FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExistsTes
expect(client.bucketExists("bucket")).andReturn(true);
replay(client);
Exception e = getErrorWithCode("OperationAborted");
- assertFalse(getUnchecked(new FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists(client).setContext(
- putBucket).create(e)));
+ assertFalse(new FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists(client).setContext(
+ putBucket).createOrPropagate(e));
verify(client);
}
@@ -77,7 +77,8 @@ public class FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExistsTes
expect(client.bucketExists("bucket")).andReturn(false);
replay(client);
Exception e = getErrorWithCode("OperationAborted");
- new FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists(client).setContext(putBucket).create(e);
+ new FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists(client).setContext(putBucket)
+ .createOrPropagate(e);
}
@Test(expectedExceptions = IllegalStateException.class)
@@ -86,7 +87,7 @@ public class FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExistsTes
replay(client);
Exception e = new IllegalStateException();
- new FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists(client).create(e);
+ new FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists(client).createOrPropagate(e);
}
@Test(expectedExceptions = AWSResponseException.class)
@@ -94,7 +95,7 @@ public class FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExistsTes
S3Client client = createMock(S3Client.class);
replay(client);
Exception e = getErrorWithCode("blah");
- new FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists(client).create(e);
+ new FalseIfBucketAlreadyOwnedByYouOrOperationAbortedWhenBucketExists(client).createOrPropagate(e);
}
private Exception getErrorWithCode(String code) {
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/apis/swift/src/main/java/org/jclouds/openstack/swift/SwiftFallbacks.java
----------------------------------------------------------------------
diff --git a/apis/swift/src/main/java/org/jclouds/openstack/swift/SwiftFallbacks.java b/apis/swift/src/main/java/org/jclouds/openstack/swift/SwiftFallbacks.java
index daec13a..44ca048 100644
--- a/apis/swift/src/main/java/org/jclouds/openstack/swift/SwiftFallbacks.java
+++ b/apis/swift/src/main/java/org/jclouds/openstack/swift/SwiftFallbacks.java
@@ -19,25 +19,17 @@ package org.jclouds.openstack.swift;
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 com.google.common.util.concurrent.Futures.immediateFuture;
import static org.jclouds.http.HttpUtils.contains404;
import static org.jclouds.http.HttpUtils.returnValueOnCodeOrNull;
import org.jclouds.Fallback;
-import com.google.common.util.concurrent.ListenableFuture;
-
public final class SwiftFallbacks {
private SwiftFallbacks() {
}
public static final class TrueOn404FalseOn409 implements Fallback<Boolean> {
@Override
- public ListenableFuture<Boolean> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
- @Override
public Boolean createOrPropagate(Throwable t) throws Exception {
if (contains404(checkNotNull(t, "throwable")))
return true;
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/blobstore/src/main/java/org/jclouds/blobstore/BlobStoreFallbacks.java
----------------------------------------------------------------------
diff --git a/blobstore/src/main/java/org/jclouds/blobstore/BlobStoreFallbacks.java b/blobstore/src/main/java/org/jclouds/blobstore/BlobStoreFallbacks.java
index 5434545..42a11ae 100644
--- a/blobstore/src/main/java/org/jclouds/blobstore/BlobStoreFallbacks.java
+++ b/blobstore/src/main/java/org/jclouds/blobstore/BlobStoreFallbacks.java
@@ -18,48 +18,31 @@ package org.jclouds.blobstore;
import static com.google.common.base.Preconditions.checkNotNull;
import static com.google.common.base.Throwables.propagate;
-import static com.google.common.util.concurrent.Futures.immediateFuture;
import static org.jclouds.http.HttpUtils.contains404;
import org.jclouds.Fallback;
-import com.google.common.util.concurrent.ListenableFuture;
-
public final class BlobStoreFallbacks {
private BlobStoreFallbacks() {
}
public static final class ThrowContainerNotFoundOn404 implements Fallback<Object> {
- public ListenableFuture<Object> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public Object createOrPropagate(Throwable t) throws Exception {
if (contains404(checkNotNull(t, "throwable")))
throw new ContainerNotFoundException(t);
throw propagate(t);
}
-
}
public static final class ThrowKeyNotFoundOn404 implements Fallback<Object> {
- public ListenableFuture<Object> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public Object createOrPropagate(Throwable t) throws Exception {
if (contains404(checkNotNull(t, "throwable")))
throw new KeyNotFoundException(t);
throw propagate(t);
}
-
}
public static final class FalseOnContainerNotFound implements Fallback<Boolean> {
- public ListenableFuture<Boolean> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public Boolean createOrPropagate(Throwable t) throws Exception {
if (checkNotNull(t, "throwable") instanceof ContainerNotFoundException) {
return false;
@@ -69,10 +52,6 @@ public final class BlobStoreFallbacks {
}
public static final class FalseOnKeyNotFound implements Fallback<Boolean> {
- public ListenableFuture<Boolean> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public Boolean createOrPropagate(Throwable t) throws Exception {
if (checkNotNull(t, "throwable") instanceof KeyNotFoundException) {
return false;
@@ -82,10 +61,6 @@ public final class BlobStoreFallbacks {
}
public static final class NullOnContainerNotFound implements Fallback<Object> {
- public ListenableFuture<Object> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public Object createOrPropagate(Throwable t) throws Exception {
if (checkNotNull(t, "throwable") instanceof ContainerNotFoundException) {
return null;
@@ -95,10 +70,6 @@ public final class BlobStoreFallbacks {
}
public static final class NullOnKeyNotFound implements Fallback<Object> {
- public ListenableFuture<Object> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public Object createOrPropagate(Throwable t) throws Exception {
if (checkNotNull(t, "throwable") instanceof KeyNotFoundException) {
return null;
@@ -108,10 +79,6 @@ public final class BlobStoreFallbacks {
}
public static final class NullOnKeyAlreadyExists implements Fallback<Object> {
- public ListenableFuture<Object> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public Object createOrPropagate(Throwable t) throws Exception {
if (checkNotNull(t, "throwable") instanceof KeyAlreadyExistsException) {
return null;
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/core/src/main/java/org/jclouds/Fallback.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/Fallback.java b/core/src/main/java/org/jclouds/Fallback.java
index bb7bd07..e24a245 100644
--- a/core/src/main/java/org/jclouds/Fallback.java
+++ b/core/src/main/java/org/jclouds/Fallback.java
@@ -17,7 +17,6 @@
package org.jclouds;
import com.google.common.annotations.Beta;
-import com.google.common.util.concurrent.FutureFallback;
/**
* Provides a backup value to replace an earlier exception.
@@ -25,11 +24,10 @@ import com.google.common.util.concurrent.FutureFallback;
* @param <V>
* the result type of the backup value
*
- * @see FutureFallback
* @since 1.6
*/
@Beta
-public interface Fallback<V> extends FutureFallback<V> {
+public interface Fallback<V> {
/**
* The exception is provided so that the {@code Fallback} implementation can
* conditionally determine whether to propagate the exception or to attempt
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/core/src/main/java/org/jclouds/Fallbacks.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/Fallbacks.java b/core/src/main/java/org/jclouds/Fallbacks.java
index c49994b..823e5ea 100644
--- a/core/src/main/java/org/jclouds/Fallbacks.java
+++ b/core/src/main/java/org/jclouds/Fallbacks.java
@@ -21,7 +21,6 @@ import static com.google.common.base.Predicates.equalTo;
import static com.google.common.base.Predicates.in;
import static com.google.common.base.Throwables.propagate;
import static com.google.common.primitives.Ints.asList;
-import static com.google.common.util.concurrent.Futures.immediateFuture;
import static org.jclouds.http.HttpUtils.contains404;
import static org.jclouds.http.HttpUtils.returnValueOnCodeOrNull;
import static org.jclouds.util.Throwables2.getFirstThrowableOfType;
@@ -38,57 +37,36 @@ import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableMultimap;
import com.google.common.collect.ImmutableSet;
-import com.google.common.util.concurrent.ListenableFuture;
public final class Fallbacks {
private Fallbacks() {
}
public static final class NullOnNotFoundOr404 implements Fallback<Object> {
- public ListenableFuture<Object> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public Object createOrPropagate(Throwable t) throws Exception {
return valOnNotFoundOr404(null, checkNotNull(t, "throwable"));
}
}
public static final class VoidOnNotFoundOr404 implements Fallback<Void> {
- public ListenableFuture<Void> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public Void createOrPropagate(Throwable t) throws Exception {
return valOnNotFoundOr404(null, checkNotNull(t, "throwable"));
}
}
public static final class TrueOnNotFoundOr404 implements Fallback<Boolean> {
- public ListenableFuture<Boolean> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public Boolean createOrPropagate(Throwable t) throws Exception {
return valOnNotFoundOr404(true, checkNotNull(t, "throwable"));
}
}
public static final class FalseOnNotFoundOr404 implements Fallback<Boolean> {
- public ListenableFuture<Boolean> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public Boolean createOrPropagate(Throwable t) throws Exception {
return valOnNotFoundOr404(false, checkNotNull(t, "throwable"));
}
}
public static final class FalseOnNotFoundOr422 implements Fallback<Boolean> {
- public ListenableFuture<Boolean> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public Boolean createOrPropagate(Throwable t) throws Exception {
if (containsResourceNotFoundException(checkNotNull(t, "throwable"))
|| returnValueOnCodeOrNull(t, true, equalTo(422)) != null)
@@ -100,10 +78,6 @@ public final class Fallbacks {
/**
*/
public static final class AbsentOn403Or404Or500 implements Fallback<Optional<Object>> {
- public ListenableFuture<Optional<Object>> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public Optional<Object> createOrPropagate(Throwable t) throws Exception {
Boolean returnVal = returnValueOnCodeOrNull(checkNotNull(t, "throwable"), true, in(asList(403, 404, 500)));
if (returnVal != null)
@@ -113,30 +87,18 @@ public final class Fallbacks {
}
public static final class EmptyFluentIterableOnNotFoundOr404 implements Fallback<FluentIterable<Object>> {
- public ListenableFuture<FluentIterable<Object>> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public FluentIterable<Object> createOrPropagate(Throwable t) throws Exception {
return valOnNotFoundOr404(FluentIterable.from(ImmutableSet.of()), checkNotNull(t, "throwable"));
}
}
public static final class EmptyIterableWithMarkerOnNotFoundOr404 implements Fallback<IterableWithMarker<Object>> {
- public ListenableFuture<IterableWithMarker<Object>> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public IterableWithMarker<Object> createOrPropagate(Throwable t) throws Exception {
return valOnNotFoundOr404(IterableWithMarkers.from(ImmutableSet.of()), checkNotNull(t, "throwable"));
}
}
public static final class EmptyPagedIterableOnNotFoundOr404 implements Fallback<PagedIterable<Object>> {
- public ListenableFuture<PagedIterable<Object>> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public PagedIterable<Object> createOrPropagate(Throwable t) throws Exception {
return valOnNotFoundOr404(PagedIterables.of(IterableWithMarkers.from(ImmutableSet.of())),
checkNotNull(t, "throwable"));
@@ -144,44 +106,24 @@ public final class Fallbacks {
}
public static final class EmptyListOnNotFoundOr404 implements Fallback<ImmutableList<Object>> { // NO_UCD
- // (unused
- // code)
- public ListenableFuture<ImmutableList<Object>> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public ImmutableList<Object> createOrPropagate(Throwable t) throws Exception {
return valOnNotFoundOr404(ImmutableList.of(), checkNotNull(t, "throwable"));
}
}
public static final class EmptySetOnNotFoundOr404 implements Fallback<ImmutableSet<Object>> {
- public ListenableFuture<ImmutableSet<Object>> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public ImmutableSet<Object> createOrPropagate(Throwable t) throws Exception {
return valOnNotFoundOr404(ImmutableSet.of(), checkNotNull(t, "throwable"));
}
}
public static final class EmptyMapOnNotFoundOr404 implements Fallback<ImmutableMap<Object, Object>> {
- public ListenableFuture<ImmutableMap<Object, Object>> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public ImmutableMap<Object, Object> createOrPropagate(Throwable t) throws Exception {
return valOnNotFoundOr404(ImmutableMap.of(), checkNotNull(t, "throwable"));
}
}
public static final class EmptyMultimapOnNotFoundOr404 implements Fallback<ImmutableMultimap<Object, Object>> { // NO_UCD
- // (unused
- // code)
- public ListenableFuture<ImmutableMultimap<Object, Object>> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
public ImmutableMultimap<Object, Object> createOrPropagate(Throwable t) throws Exception {
return valOnNotFoundOr404(ImmutableMultimap.of(), checkNotNull(t, "throwable"));
}
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/core/src/main/java/org/jclouds/fallbacks/HeaderToRetryAfterException.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/fallbacks/HeaderToRetryAfterException.java b/core/src/main/java/org/jclouds/fallbacks/HeaderToRetryAfterException.java
index f21b3c2..1d330a5 100644
--- a/core/src/main/java/org/jclouds/fallbacks/HeaderToRetryAfterException.java
+++ b/core/src/main/java/org/jclouds/fallbacks/HeaderToRetryAfterException.java
@@ -18,7 +18,6 @@ package org.jclouds.fallbacks;
import static com.google.common.base.Preconditions.checkNotNull;
import static com.google.common.base.Throwables.propagate;
-import static com.google.common.util.concurrent.Futures.immediateFuture;
import static java.util.concurrent.TimeUnit.MILLISECONDS;
import static java.util.concurrent.TimeUnit.NANOSECONDS;
@@ -34,7 +33,6 @@ import com.google.common.annotations.Beta;
import com.google.common.base.Optional;
import com.google.common.base.Ticker;
import com.google.common.net.HttpHeaders;
-import com.google.common.util.concurrent.ListenableFuture;
/**
* propagates as {@link RetryAfterException} if a Throwable is an
@@ -54,7 +52,7 @@ public final class HeaderToRetryAfterException implements PropagateIfRetryAfter
*
* @param ticker
* how to read current time
- * @param dateParser
+ * @param dateCodec
* how to parse the {@link HttpHeaders#RETRY_AFTER} header, if it
* is a Date.
* @return
@@ -76,13 +74,13 @@ public final class HeaderToRetryAfterException implements PropagateIfRetryAfter
this.dateCodec = checkNotNull(dateCodec, "dateCodec");
}
- @Override
- public ListenableFuture<Object> create(Throwable t) {
+ @Override public Object createOrPropagate(Throwable t) throws Exception {
if (!(t instanceof HttpResponseException))
throw propagate(t);
HttpResponse response = HttpResponseException.class.cast(t).getResponse();
- if (response == null)
- return immediateFuture(null);
+ if (response == null) {
+ return null;
+ }
// https://tools.ietf.org/html/rfc2616#section-14.37
String retryAfter = response.getFirstHeaderOrNull(HttpHeaders.RETRY_AFTER);
@@ -92,7 +90,7 @@ public final class HeaderToRetryAfterException implements PropagateIfRetryAfter
throw retryException.get();
}
- return immediateFuture(null);
+ return null;
}
/**
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/core/src/main/java/org/jclouds/fallbacks/MapHttp4xxCodesToExceptions.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/fallbacks/MapHttp4xxCodesToExceptions.java b/core/src/main/java/org/jclouds/fallbacks/MapHttp4xxCodesToExceptions.java
index 9078e32..a810c9f 100644
--- a/core/src/main/java/org/jclouds/fallbacks/MapHttp4xxCodesToExceptions.java
+++ b/core/src/main/java/org/jclouds/fallbacks/MapHttp4xxCodesToExceptions.java
@@ -18,7 +18,6 @@ package org.jclouds.fallbacks;
import static com.google.common.base.Preconditions.checkNotNull;
import static com.google.common.base.Throwables.propagate;
-import static com.google.common.util.concurrent.Futures.immediateFuture;
import javax.inject.Inject;
import javax.inject.Singleton;
@@ -28,8 +27,6 @@ import org.jclouds.http.HttpResponseException;
import org.jclouds.rest.AuthorizationException;
import org.jclouds.rest.ResourceNotFoundException;
-import com.google.common.util.concurrent.ListenableFuture;
-
@Singleton
public final class MapHttp4xxCodesToExceptions implements Fallback<Object> {
@@ -39,15 +36,9 @@ public final class MapHttp4xxCodesToExceptions implements Fallback<Object> {
MapHttp4xxCodesToExceptions(PropagateIfRetryAfter propagateIfRetryAfter) { // NO_UCD
this.propagateIfRetryAfter = checkNotNull(propagateIfRetryAfter, "propagateIfRetryAfter");
}
-
- @Override
- public ListenableFuture<Object> create(Throwable t) throws Exception { // NO_UCD
- return immediateFuture(createOrPropagate(t));
- }
-
@Override
public Object createOrPropagate(Throwable t) throws Exception {
- propagateIfRetryAfter.create(t); // if we pass here, we aren't a retry-after exception
+ propagateIfRetryAfter.createOrPropagate(t); // if we pass here, we aren't a retry-after exception
if (t instanceof HttpResponseException) {
HttpResponseException responseException = HttpResponseException.class.cast(t);
if (responseException.getResponse() != null)
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/core/src/main/java/org/jclouds/fallbacks/PropagateIfRetryAfter.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/fallbacks/PropagateIfRetryAfter.java b/core/src/main/java/org/jclouds/fallbacks/PropagateIfRetryAfter.java
index c76d6c0..aac6e76 100644
--- a/core/src/main/java/org/jclouds/fallbacks/PropagateIfRetryAfter.java
+++ b/core/src/main/java/org/jclouds/fallbacks/PropagateIfRetryAfter.java
@@ -16,8 +16,8 @@
*/
package org.jclouds.fallbacks;
-import com.google.common.util.concurrent.FutureFallback;
-import com.google.common.util.concurrent.ListenableFuture;
+import org.jclouds.Fallback;
+
import com.google.inject.ImplementedBy;
/**
@@ -25,12 +25,10 @@ import com.google.inject.ImplementedBy;
* offset.
*/
@ImplementedBy(HeaderToRetryAfterException.class)
-public interface PropagateIfRetryAfter extends FutureFallback<Object> {
+public interface PropagateIfRetryAfter extends Fallback<Object> {
/**
- * if input is not of type {@link org.jclouds.http.HttpResponseException}, this method propagates. Otherwise, immediate future of
+ * if input is not of type {@link org.jclouds.http.HttpResponseException}, this method propagates. Otherwise,
* {@code null}, if didn't coerce to {@link org.jclouds.rest.RetryAfterException}
*/
- @Override
- ListenableFuture<Object> create(Throwable t);
-
+ @Override Object createOrPropagate(Throwable t) throws Exception;
}
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/core/src/test/java/org/jclouds/fallbacks/HeaderToRetryAfterExceptionTest.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/jclouds/fallbacks/HeaderToRetryAfterExceptionTest.java b/core/src/test/java/org/jclouds/fallbacks/HeaderToRetryAfterExceptionTest.java
index d00a4aa..f81eeaa 100644
--- a/core/src/test/java/org/jclouds/fallbacks/HeaderToRetryAfterExceptionTest.java
+++ b/core/src/test/java/org/jclouds/fallbacks/HeaderToRetryAfterExceptionTest.java
@@ -34,47 +34,42 @@ import com.google.common.net.HttpHeaders;
public class HeaderToRetryAfterExceptionTest {
@Test(expectedExceptions = RuntimeException.class)
- public void testArbitraryExceptionDoesntConvert() {
- fn.create(new RuntimeException());
+ public void testArbitraryExceptionDoesntConvert() throws Exception {
+ fn.createOrPropagate(new RuntimeException());
}
- public void testHttpResponseExceptionWithoutResponseDoesntPropagate() {
- fn.create(new HttpResponseException("message", command, null));
+ public void testHttpResponseExceptionWithoutResponseDoesntPropagate() throws Exception {
+ fn.createOrPropagate(new HttpResponseException("message", command, null));
}
- public void testHttpResponseExceptionWithoutRetryAfterHeaderDoesntPropagate() {
- fn.create(new HttpResponseException(command, HttpResponse.builder().statusCode(500).build()));
+ public void testHttpResponseExceptionWithoutRetryAfterHeaderDoesntPropagate() throws Exception {
+ fn.createOrPropagate(new HttpResponseException(command, HttpResponse.builder().statusCode(500).build()));
}
- public void testHttpResponseExceptionWithMalformedRetryAfterHeaderDoesntConvert() {
- fn.create(new HttpResponseException(command,
- HttpResponse.builder()
- .statusCode(503)
- .addHeader(HttpHeaders.RETRY_AFTER, "Fri, 31 Dec 1999 23:59:59 ZBW").build()));
+ public void testHttpResponseExceptionWithMalformedRetryAfterHeaderDoesntConvert() throws Exception {
+ fn.createOrPropagate(new HttpResponseException(command,
+ HttpResponse.builder().statusCode(503).addHeader(HttpHeaders.RETRY_AFTER, "Fri, 31 Dec 1999 23:59:59 ZBW")
+ .build()));
}
@Test(expectedExceptions = RetryAfterException.class, expectedExceptionsMessageRegExp = "retry now")
- public void testHttpResponseExceptionWithRetryAfterDate() {
- fn.create(new HttpResponseException(command,
- HttpResponse.builder()
- .statusCode(503)
- .addHeader(HttpHeaders.RETRY_AFTER, "Fri, 31 Dec 1999 23:59:59 GMT").build()));
+ public void testHttpResponseExceptionWithRetryAfterDate() throws Exception {
+ fn.createOrPropagate(new HttpResponseException(command,
+ HttpResponse.builder().statusCode(503).addHeader(HttpHeaders.RETRY_AFTER, "Fri, 31 Dec 1999 23:59:59 GMT")
+ .build()));
}
@Test(expectedExceptions = RetryAfterException.class, expectedExceptionsMessageRegExp = "retry in 700 seconds")
- public void testHttpResponseExceptionWithRetryAfterOffset() {
- fn.create(new HttpResponseException(command,
- HttpResponse.builder()
- .statusCode(503)
- .addHeader(HttpHeaders.RETRY_AFTER, "700").build()));
+ public void testHttpResponseExceptionWithRetryAfterOffset() throws Exception {
+ fn.createOrPropagate(new HttpResponseException(command,
+ HttpResponse.builder().statusCode(503).addHeader(HttpHeaders.RETRY_AFTER, "700").build()));
}
@Test(expectedExceptions = RetryAfterException.class, expectedExceptionsMessageRegExp = "retry in 86400 seconds")
- public void testHttpResponseExceptionWithRetryAfterPastIsZero() {
- fn.create(new HttpResponseException(command,
- HttpResponse.builder()
- .statusCode(503)
- .addHeader(HttpHeaders.RETRY_AFTER, "Sun, 2 Jan 2000 00:00:00 GMT").build()));
+ public void testHttpResponseExceptionWithRetryAfterPastIsZero() throws Exception {
+ fn.createOrPropagate(new HttpResponseException(command,
+ HttpResponse.builder().statusCode(503).addHeader(HttpHeaders.RETRY_AFTER, "Sun, 2 Jan 2000 00:00:00 GMT")
+ .build()));
}
public static HttpCommand command = new HttpCommand(HttpRequest.builder().method("GET").endpoint("http://stub").build());
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/core/src/test/java/org/jclouds/fallbacks/MapHttp4xxCodesToExceptionsTest.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/jclouds/fallbacks/MapHttp4xxCodesToExceptionsTest.java b/core/src/test/java/org/jclouds/fallbacks/MapHttp4xxCodesToExceptionsTest.java
index 7cbd5f4..4bbcf57 100644
--- a/core/src/test/java/org/jclouds/fallbacks/MapHttp4xxCodesToExceptionsTest.java
+++ b/core/src/test/java/org/jclouds/fallbacks/MapHttp4xxCodesToExceptionsTest.java
@@ -31,27 +31,27 @@ public class MapHttp4xxCodesToExceptionsTest {
@Test(expectedExceptions = AuthorizationException.class)
public void test401ToAuthorizationException() throws Exception {
- fn.create(new HttpResponseException(command, HttpResponse.builder().statusCode(401).build()));
+ fn.createOrPropagate(new HttpResponseException(command, HttpResponse.builder().statusCode(401).build()));
}
@Test(expectedExceptions = AuthorizationException.class)
public void test403ToAuthorizationException() throws Exception {
- fn.create(new HttpResponseException(command, HttpResponse.builder().statusCode(403).build()));
+ fn.createOrPropagate(new HttpResponseException(command, HttpResponse.builder().statusCode(403).build()));
}
@Test(expectedExceptions = ResourceNotFoundException.class)
public void test404ToResourceNotFoundException() throws Exception {
- fn.create(new HttpResponseException(command, HttpResponse.builder().statusCode(404).build()));
+ fn.createOrPropagate(new HttpResponseException(command, HttpResponse.builder().statusCode(404).build()));
}
@Test(expectedExceptions = IllegalStateException.class)
public void test409ToIllegalStateException() throws Exception {
- fn.create(new HttpResponseException(command, HttpResponse.builder().statusCode(409).build()));
+ fn.createOrPropagate(new HttpResponseException(command, HttpResponse.builder().statusCode(409).build()));
}
@Test(expectedExceptions = RetryAfterException.class, expectedExceptionsMessageRegExp = "retry now")
public void testHttpResponseExceptionWithRetryAfterDate() throws Exception {
- fn.create(new HttpResponseException(command,
+ fn.createOrPropagate(new HttpResponseException(command,
HttpResponse.builder()
.statusCode(503)
.addHeader(HttpHeaders.RETRY_AFTER, "Fri, 31 Dec 1999 23:59:59 GMT").build()));
@@ -59,7 +59,7 @@ public class MapHttp4xxCodesToExceptionsTest {
@Test(expectedExceptions = RetryAfterException.class, expectedExceptionsMessageRegExp = "retry in 700 seconds")
public void testHttpResponseExceptionWithRetryAfterOffset() throws Exception {
- fn.create(new HttpResponseException(command,
+ fn.createOrPropagate(new HttpResponseException(command,
HttpResponse.builder()
.statusCode(503)
.addHeader(HttpHeaders.RETRY_AFTER, "700").build()));
@@ -67,7 +67,7 @@ public class MapHttp4xxCodesToExceptionsTest {
@Test(expectedExceptions = RetryAfterException.class, expectedExceptionsMessageRegExp = "retry in 86400 seconds")
public void testHttpResponseExceptionWithRetryAfterPastIsZero() throws Exception {
- fn.create(new HttpResponseException(command,
+ fn.createOrPropagate(new HttpResponseException(command,
HttpResponse.builder()
.statusCode(503)
.addHeader(HttpHeaders.RETRY_AFTER, "Sun, 2 Jan 2000 00:00:00 GMT").build()));
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/core/src/test/java/org/jclouds/http/IntegrationTestClient.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/jclouds/http/IntegrationTestClient.java b/core/src/test/java/org/jclouds/http/IntegrationTestClient.java
index 27ec54b..afdfa59 100644
--- a/core/src/test/java/org/jclouds/http/IntegrationTestClient.java
+++ b/core/src/test/java/org/jclouds/http/IntegrationTestClient.java
@@ -16,8 +16,6 @@
*/
package org.jclouds.http;
-import static com.google.common.util.concurrent.Futures.immediateFuture;
-
import java.io.Closeable;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
@@ -51,7 +49,6 @@ import org.jclouds.util.Strings2;
import com.google.common.base.Function;
import com.google.common.collect.Multimap;
-import com.google.common.util.concurrent.ListenableFuture;
import com.google.inject.Provides;
/**
@@ -89,10 +86,6 @@ public interface IntegrationTestClient extends Closeable {
String downloadException(@PathParam("id") String id, HttpRequestOptions options);
static class FooOnException implements org.jclouds.Fallback<String> {
- public ListenableFuture<String> create(Throwable t) throws Exception {
- return immediateFuture("foo");
- }
-
public String createOrPropagate(Throwable t) throws Exception {
return "foo";
}
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/core/src/test/java/org/jclouds/rest/internal/RestAnnotationProcessorTest.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/jclouds/rest/internal/RestAnnotationProcessorTest.java b/core/src/test/java/org/jclouds/rest/internal/RestAnnotationProcessorTest.java
index 16ace50..4e5782c 100644
--- a/core/src/test/java/org/jclouds/rest/internal/RestAnnotationProcessorTest.java
+++ b/core/src/test/java/org/jclouds/rest/internal/RestAnnotationProcessorTest.java
@@ -146,7 +146,6 @@ import com.google.common.io.ByteSource;
import com.google.common.io.Files;
import com.google.common.net.HttpHeaders;
import com.google.common.reflect.Invokable;
-import com.google.common.util.concurrent.ListenableFuture;
import com.google.inject.AbstractModule;
import com.google.inject.ConfigurationException;
import com.google.inject.Injector;
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/providers/azureblob/src/main/java/org/jclouds/azureblob/AzureBlobFallbacks.java
----------------------------------------------------------------------
diff --git a/providers/azureblob/src/main/java/org/jclouds/azureblob/AzureBlobFallbacks.java b/providers/azureblob/src/main/java/org/jclouds/azureblob/AzureBlobFallbacks.java
index c12bf71..71a5dca 100644
--- a/providers/azureblob/src/main/java/org/jclouds/azureblob/AzureBlobFallbacks.java
+++ b/providers/azureblob/src/main/java/org/jclouds/azureblob/AzureBlobFallbacks.java
@@ -18,24 +18,16 @@ package org.jclouds.azureblob;
import static com.google.common.base.Preconditions.checkNotNull;
import static com.google.common.base.Throwables.propagate;
-import static com.google.common.util.concurrent.Futures.immediateFuture;
import org.jclouds.Fallback;
import org.jclouds.azure.storage.AzureStorageResponseException;
-import com.google.common.util.concurrent.ListenableFuture;
-
public final class AzureBlobFallbacks {
private AzureBlobFallbacks() {
}
public static final class FalseIfContainerAlreadyExists implements Fallback<Boolean> {
@Override
- public ListenableFuture<Boolean> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
- @Override
public Boolean createOrPropagate(Throwable t) throws Exception {
if (checkNotNull(t, "throwable") instanceof AzureStorageResponseException) {
AzureStorageResponseException responseException = AzureStorageResponseException.class.cast(t);
http://git-wip-us.apache.org/repos/asf/jclouds/blob/b9525a08/providers/dynect/src/main/java/org/jclouds/dynect/v3/DynECTFallbacks.java
----------------------------------------------------------------------
diff --git a/providers/dynect/src/main/java/org/jclouds/dynect/v3/DynECTFallbacks.java b/providers/dynect/src/main/java/org/jclouds/dynect/v3/DynECTFallbacks.java
index 0f87e7b..6cc3b3d 100644
--- a/providers/dynect/src/main/java/org/jclouds/dynect/v3/DynECTFallbacks.java
+++ b/providers/dynect/src/main/java/org/jclouds/dynect/v3/DynECTFallbacks.java
@@ -18,24 +18,16 @@ package org.jclouds.dynect.v3;
import static com.google.common.base.Predicates.equalTo;
import static com.google.common.base.Throwables.propagate;
-import static com.google.common.util.concurrent.Futures.immediateFuture;
import static org.jclouds.http.HttpUtils.returnValueOnCodeOrNull;
import org.jclouds.Fallback;
-import com.google.common.util.concurrent.ListenableFuture;
-
public final class DynECTFallbacks {
private DynECTFallbacks() {
}
public static class FalseOn400 implements Fallback<Boolean> {
@Override
- public ListenableFuture<Boolean> create(Throwable t) throws Exception {
- return immediateFuture(createOrPropagate(t));
- }
-
- @Override
public Boolean createOrPropagate(Throwable t) throws Exception {
if (returnValueOnCodeOrNull(t, false, equalTo(400)) != null)
return false;