JCLOUDS-641 swift is not immediately consistent.
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 @@
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 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 @@
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
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 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 @@
@Override
protected void configure() {
+ bind(ConsistencyModel.class).toInstance(ConsistencyModel.EVENTUAL);
bind(BlobStoreContext.class).to(RegionScopedBlobStoreContext.class);
install(new FactoryModuleBuilder().build(Factory.class));
}