Class RegionScopedSwiftBlobStore
- java.lang.Object
-
- org.jclouds.openstack.swift.v1.blobstore.RegionScopedSwiftBlobStore
-
-
Field Summary
Fields Modifier and Type Field Description protected com.google.common.cache.LoadingCache<String,com.google.common.base.Optional<Container>>containerCacheprotected org.jclouds.logging.Loggerloggerprotected intretryCountLimitprotected org.jclouds.io.PayloadSlicerslicerprotected com.google.common.util.concurrent.ListeningExecutorServiceuserExecutor
-
Constructor Summary
Constructors Modifier Constructor Description protectedRegionScopedSwiftBlobStore(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
-
-
-
Field Detail
-
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
protected final com.google.common.cache.LoadingCache<String,com.google.common.base.Optional<Container>> containerCache
-
retryCountLimit
@Inject(optional=true) @Named("jclouds.max-retries") protected int retryCountLimit
-
-
Constructor Detail
-
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 Detail
-
listAssignableLocations
public Set<? extends org.jclouds.domain.Location> listAssignableLocations()
- Specified by:
listAssignableLocationsin interfaceBlobStore
-
list
public PageSet<? extends StorageMetadata> list()
-
containerExists
public boolean containerExists(String container)
- Specified by:
containerExistsin interfaceBlobStore
-
createContainerInLocation
public boolean createContainerInLocation(org.jclouds.domain.Location location, String container)- Specified by:
createContainerInLocationin interfaceBlobStore
-
createContainerInLocation
public boolean createContainerInLocation(org.jclouds.domain.Location location, String container, CreateContainerOptions options)- Specified by:
createContainerInLocationin interfaceBlobStore
-
getContainerAccess
public ContainerAccess getContainerAccess(String name)
- Specified by:
getContainerAccessin interfaceBlobStore
-
setContainerAccess
public void setContainerAccess(String name, ContainerAccess access)
- Specified by:
setContainerAccessin interfaceBlobStore
-
list
public PageSet<? extends StorageMetadata> list(String container)
-
list
public PageSet<? extends StorageMetadata> list(String container, ListContainerOptions options)
-
blobExists
public boolean blobExists(String container, String name)
- Specified by:
blobExistsin interfaceBlobStore
-
putBlob
public String putBlob(String container, Blob blob, PutOptions options)
-
copyBlob
public String copyBlob(String fromContainer, String fromName, String toContainer, String toName, CopyOptions options)
-
blobMetadata
public BlobMetadata blobMetadata(String container, String name)
- Specified by:
blobMetadatain interfaceBlobStore
-
getBlob
public Blob getBlob(String container, String name, GetOptions options)
-
removeBlob
public void removeBlob(String container, String name)
- Specified by:
removeBlobin interfaceBlobStore
-
removeBlobs
public void removeBlobs(String container, Iterable<String> names)
Delete multiple single-part objects. Note that this does not remove the subobjects of a multi-part upload.- Specified by:
removeBlobsin interfaceBlobStore
-
getBlobAccess
public BlobAccess getBlobAccess(String container, String name)
- Specified by:
getBlobAccessin interfaceBlobStore
-
setBlobAccess
public void setBlobAccess(String container, String name, BlobAccess access)
- Specified by:
setBlobAccessin interfaceBlobStore
-
getContext
public BlobStoreContext getContext()
- Specified by:
getContextin interfaceBlobStore
-
blobBuilder
public BlobBuilder blobBuilder(String name)
- Specified by:
blobBuilderin interfaceBlobStore
-
directoryExists
public boolean directoryExists(String containerName, String directory)
- Specified by:
directoryExistsin interfaceBlobStore
-
createDirectory
public void createDirectory(String containerName, String directory)
- Specified by:
createDirectoryin interfaceBlobStore
-
deleteDirectory
public void deleteDirectory(String containerName, String directory)
- Specified by:
deleteDirectoryin interfaceBlobStore
-
countBlobs
public long countBlobs(String containerName)
- Specified by:
countBlobsin interfaceBlobStore
-
initiateMultipartUpload
public MultipartUpload initiateMultipartUpload(String container, BlobMetadata blobMetadata, PutOptions options)
- Specified by:
initiateMultipartUploadin interfaceBlobStore
-
abortMultipartUpload
public void abortMultipartUpload(MultipartUpload mpu)
- Specified by:
abortMultipartUploadin interfaceBlobStore
-
completeMultipartUpload
public String completeMultipartUpload(MultipartUpload mpu, List<MultipartPart> parts)
- Specified by:
completeMultipartUploadin interfaceBlobStore
-
uploadMultipartPart
public MultipartPart uploadMultipartPart(MultipartUpload mpu, int partNumber, org.jclouds.io.Payload payload)
- Specified by:
uploadMultipartPartin interfaceBlobStore
-
listMultipartUpload
public List<MultipartPart> listMultipartUpload(MultipartUpload mpu)
- Specified by:
listMultipartUploadin interfaceBlobStore
-
listMultipartUploads
public List<MultipartUpload> listMultipartUploads(String container)
- 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
public void clearContainer(String containerName)
- Specified by:
clearContainerin interfaceBlobStore
-
clearContainer
public void clearContainer(String containerName, ListContainerOptions options)
- Specified by:
clearContainerin interfaceBlobStore
-
deleteContainer
public void deleteContainer(String container)
- Specified by:
deleteContainerin interfaceBlobStore
-
deleteContainerIfEmpty
public boolean deleteContainerIfEmpty(String container)
- Specified by:
deleteContainerIfEmptyin interfaceBlobStore
-
toBlobMetadata
protected com.google.common.base.Function<SwiftObject,MutableBlobMetadata> toBlobMetadata(String container)
-
countBlobs
public long countBlobs(String containerName, ListContainerOptions options)
- Specified by:
countBlobsin interfaceBlobStore
-
putMultipartBlob
@Beta protected String putMultipartBlob(String container, Blob blob, PutOptions overrides)
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
@Beta public void downloadBlob(String container, String name, File destination)
- Specified by:
downloadBlobin interfaceBlobStore
-
downloadBlob
@Beta public void downloadBlob(String container, String name, File destination, ExecutorService executor)
- Specified by:
downloadBlobin interfaceBlobStore
-
streamBlob
@Beta public InputStream streamBlob(String container, String name)
- Specified by:
streamBlobin interfaceBlobStore
-
streamBlob
@Beta public InputStream streamBlob(String container, String name, ExecutorService executor)
- Specified by:
streamBlobin interfaceBlobStore
-
-