diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeyStoneAuthenticationModule.java b/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeyStoneAuthenticationModule.java index 74bed2c0d3..eb6e1b57d3 100644 --- a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeyStoneAuthenticationModule.java +++ b/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/config/KeyStoneAuthenticationModule.java @@ -65,6 +65,7 @@ public class KeyStoneAuthenticationModule extends AbstractModule { protected void configure() { bind(new TypeLiteral>() { }).to(GetAccess.class); + bind(HttpRetryHandler.class).annotatedWith(ClientError.class).to(RetryOnRenew.class); } /** diff --git a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/handlers/RetryOnRenew.java b/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/handlers/RetryOnRenew.java index b8fce31df8..91fc560eaa 100644 --- a/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/handlers/RetryOnRenew.java +++ b/common/openstack/src/main/java/org/jclouds/openstack/keystone/v2_0/handlers/RetryOnRenew.java @@ -67,6 +67,7 @@ public class RetryOnRenew implements HttpRetryHandler { retry = false; } else { byte[] content = closeClientButKeepContentStream(response); + //TODO: what is the error when the session token expires?? if (content != null && new String(content).contains("lease renew")) { logger.debug("invalidating authentication token"); authenticationResponseCache.invalidateAll(); diff --git a/labs/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/config/NovaRestClientModule.java b/labs/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/config/NovaRestClientModule.java index 100a8d75fc..9dea1989fc 100644 --- a/labs/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/config/NovaRestClientModule.java +++ b/labs/openstack-nova/src/main/java/org/jclouds/openstack/nova/v1_1/config/NovaRestClientModule.java @@ -24,12 +24,10 @@ import java.util.Map; import javax.inject.Singleton; import org.jclouds.http.HttpErrorHandler; -import org.jclouds.http.HttpRetryHandler; import org.jclouds.http.RequiresHttp; import org.jclouds.http.annotation.ClientError; import org.jclouds.http.annotation.Redirection; import org.jclouds.http.annotation.ServerError; -import org.jclouds.http.handlers.BackoffLimitedRetryHandler; import org.jclouds.openstack.keystone.v2_0.config.KeyStoneAuthenticationModule; import org.jclouds.openstack.keystone.v2_0.domain.Access; import org.jclouds.openstack.keystone.v2_0.domain.Service; @@ -86,11 +84,6 @@ public class NovaRestClientModule extends RestClientModule