Class RegionScopedSwiftBlobStore
java.lang.Object
org.jclouds.openstack.swift.v1.blobstore.RegionScopedSwiftBlobStore
- All Implemented Interfaces:
BlobStore
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final com.google.common.cache.LoadingCache<String, com.google.common.base.Optional<Container>> protected org.jclouds.logging.Loggerprotected intprotected final org.jclouds.io.PayloadSlicerprotected final com.google.common.util.concurrent.ListeningExecutorService -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedRegionScopedSwiftBlobStore(com.google.inject.Injector baseGraph, BlobStoreContext context, SwiftApi api, com.google.common.base.Supplier<Set<? extends org.jclouds.domain.Location>> locations, String regionId, org.jclouds.io.PayloadSlicer slicer, com.google.common.util.concurrent.ListeningExecutorService userExecutor) -
Method Summary
Modifier and TypeMethodDescriptionvoidblobBuilder(String name) booleanblobExists(String container, String name) blobMetadata(String container, String name) voidclearContainer(String containerName) voidclearContainer(String containerName, ListContainerOptions options) completeMultipartUpload(MultipartUpload mpu, List<MultipartPart> parts) booleancontainerExists(String container) copyBlob(String fromContainer, String fromName, String toContainer, String toName, CopyOptions options) longcountBlobs(String containerName) longcountBlobs(String containerName, ListContainerOptions options) booleancreateContainerInLocation(org.jclouds.domain.Location location, String container) booleancreateContainerInLocation(org.jclouds.domain.Location location, String container, CreateContainerOptions options) voidcreateDirectory(String containerName, String directory) voiddeleteContainer(String container) booleandeleteContainerIfEmpty(String container) voiddeleteDirectory(String containerName, String directory) booleandirectoryExists(String containerName, String directory) voiddownloadBlob(String container, String name, File destination) voiddownloadBlob(String container, String name, File destination, ExecutorService executor) getBlob(String container, String name, GetOptions options) getBlobAccess(String container, String name) getContainerAccess(String name) longintlonginitiateMultipartUpload(String container, BlobMetadata blobMetadata, PutOptions options) PageSet<? extends StorageMetadata> list()PageSet<? extends StorageMetadata> PageSet<? extends StorageMetadata> list(String container, ListContainerOptions options) Set<? extends org.jclouds.domain.Location> listMultipartUploads(String container) putBlob(String container, Blob blob, PutOptions options) protected StringputMultipartBlob(String container, Blob blob, PutOptions overrides) Upload using a user-provided executor, or the jclouds userExecutorprotected StringputMultipartBlob(String container, Blob blob, PutOptions overrides, com.google.common.util.concurrent.ListeningExecutorService executor) voidremoveBlob(String container, String name) voidremoveBlobs(String container, Iterable<String> names) Delete multiple single-part objects.voidsetBlobAccess(String container, String name, BlobAccess access) voidsetContainerAccess(String name, ContainerAccess access) streamBlob(String container, String name) streamBlob(String container, String name, ExecutorService executor) protected com.google.common.base.Function<SwiftObject, MutableBlobMetadata> toBlobMetadata(String container) uploadMultipartPart(MultipartUpload mpu, int partNumber, org.jclouds.io.Payload payload)
-
Field Details
-
slicer
protected final org.jclouds.io.PayloadSlicer slicer -
userExecutor
protected final com.google.common.util.concurrent.ListeningExecutorService userExecutor -
logger
protected org.jclouds.logging.Logger logger -
containerCache
-
retryCountLimit
@Inject(optional=true) @Named("jclouds.max-retries") protected int retryCountLimit
-
-
Constructor Details
-
RegionScopedSwiftBlobStore
@Inject protected RegionScopedSwiftBlobStore(com.google.inject.Injector baseGraph, BlobStoreContext context, SwiftApi api, com.google.common.base.Supplier<Set<? extends org.jclouds.domain.Location>> locations, String regionId, org.jclouds.io.PayloadSlicer slicer, @Named("jclouds.user-threads") com.google.common.util.concurrent.ListeningExecutorService userExecutor)
-
-
Method Details
-
listAssignableLocations
- Specified by:
listAssignableLocationsin interfaceBlobStore
-
list
-
containerExists
- Specified by:
containerExistsin interfaceBlobStore
-
createContainerInLocation
- Specified by:
createContainerInLocationin interfaceBlobStore
-
createContainerInLocation
public boolean createContainerInLocation(org.jclouds.domain.Location location, String container, CreateContainerOptions options) - Specified by:
createContainerInLocationin interfaceBlobStore
-
getContainerAccess
- Specified by:
getContainerAccessin interfaceBlobStore
-
setContainerAccess
- Specified by:
setContainerAccessin interfaceBlobStore
-
list
-
list
-
blobExists
- Specified by:
blobExistsin interfaceBlobStore
-
putBlob
-
putBlob
-
copyBlob
-
blobMetadata
- Specified by:
blobMetadatain interfaceBlobStore
-
getBlob
-
getBlob
-
removeBlob
- Specified by:
removeBlobin interfaceBlobStore
-
removeBlobs
Delete multiple single-part objects. Note that this does not remove the subobjects of a multi-part upload.- Specified by:
removeBlobsin interfaceBlobStore
-
getBlobAccess
- Specified by:
getBlobAccessin interfaceBlobStore
-
setBlobAccess
- Specified by:
setBlobAccessin interfaceBlobStore
-
getContext
- Specified by:
getContextin interfaceBlobStore
-
blobBuilder
- Specified by:
blobBuilderin interfaceBlobStore
-
directoryExists
- Specified by:
directoryExistsin interfaceBlobStore
-
createDirectory
- Specified by:
createDirectoryin interfaceBlobStore
-
deleteDirectory
- Specified by:
deleteDirectoryin interfaceBlobStore
-
countBlobs
- Specified by:
countBlobsin interfaceBlobStore
-
initiateMultipartUpload
public MultipartUpload initiateMultipartUpload(String container, BlobMetadata blobMetadata, PutOptions options) - Specified by:
initiateMultipartUploadin interfaceBlobStore
-
abortMultipartUpload
- Specified by:
abortMultipartUploadin interfaceBlobStore
-
completeMultipartUpload
- Specified by:
completeMultipartUploadin interfaceBlobStore
-
uploadMultipartPart
public MultipartPart uploadMultipartPart(MultipartUpload mpu, int partNumber, org.jclouds.io.Payload payload) - Specified by:
uploadMultipartPartin interfaceBlobStore
-
listMultipartUpload
- Specified by:
listMultipartUploadin interfaceBlobStore
-
listMultipartUploads
- Specified by:
listMultipartUploadsin interfaceBlobStore
-
getMinimumMultipartPartSize
public long getMinimumMultipartPartSize()- Specified by:
getMinimumMultipartPartSizein interfaceBlobStore
-
getMaximumMultipartPartSize
public long getMaximumMultipartPartSize()- Specified by:
getMaximumMultipartPartSizein interfaceBlobStore
-
getMaximumNumberOfParts
public int getMaximumNumberOfParts()- Specified by:
getMaximumNumberOfPartsin interfaceBlobStore
-
clearContainer
- Specified by:
clearContainerin interfaceBlobStore
-
clearContainer
- Specified by:
clearContainerin interfaceBlobStore
-
deleteContainer
- Specified by:
deleteContainerin interfaceBlobStore
-
deleteContainerIfEmpty
- Specified by:
deleteContainerIfEmptyin interfaceBlobStore
-
toBlobMetadata
protected com.google.common.base.Function<SwiftObject,MutableBlobMetadata> toBlobMetadata(String container) -
countBlobs
- Specified by:
countBlobsin interfaceBlobStore
-
putMultipartBlob
Upload using a user-provided executor, or the jclouds userExecutor- Parameters:
container-blob-overrides-- Returns:
- the multipart blob etag
-
putMultipartBlob
@Beta protected String putMultipartBlob(String container, Blob blob, PutOptions overrides, com.google.common.util.concurrent.ListeningExecutorService executor) -
downloadBlob
- Specified by:
downloadBlobin interfaceBlobStore
-
downloadBlob
@Beta public void downloadBlob(String container, String name, File destination, ExecutorService executor) - Specified by:
downloadBlobin interfaceBlobStore
-
streamBlob
- Specified by:
streamBlobin interfaceBlobStore
-
streamBlob
- Specified by:
streamBlobin interfaceBlobStore
-