@Singleton public class S3BlobStore extends BaseBlobStore
blobUtils, context, defaultLocation, locations, slicer| Modifier | Constructor and Description |
|---|---|
protected |
S3BlobStore(BlobStoreContext context,
BlobUtils blobUtils,
com.google.common.base.Supplier<Location> defaultLocation,
com.google.common.base.Supplier<Set<? extends Location>> locations,
PayloadSlicer slicer,
S3Client sync,
com.google.common.base.Function<Set<BucketMetadata>,PageSet<? extends StorageMetadata>> convertBucketsToStorageMetadata,
ContainerToBucketListOptions container2BucketListOptions,
BucketToResourceList bucket2ResourceList,
ObjectToBlob object2Blob,
BlobToHttpGetOptions blob2ObjectGetOptions,
BlobToObject blob2Object,
BlobToObjectMetadata blob2ObjectMetadata,
ObjectToBlobMetadata object2BlobMd,
javax.inject.Provider<FetchBlobMetadata> fetchBlobMetadataProvider) |
blobBuilder, clearContainer, clearContainer, countBlobs, countBlobs, createDirectory, deleteContainer, deleteContainerIfEmpty, deleteDirectory, directoryExists, downloadBlob, downloadBlob, getBlob, getContext, list, listAssignableLocations, putMultipartBlob, putMultipartBlob, streamBlob, streamBlob@Inject protected S3BlobStore(BlobStoreContext context, BlobUtils blobUtils, com.google.common.base.Supplier<Location> defaultLocation, com.google.common.base.Supplier<Set<? extends Location>> locations, PayloadSlicer slicer, S3Client sync, com.google.common.base.Function<Set<BucketMetadata>,PageSet<? extends StorageMetadata>> convertBucketsToStorageMetadata, ContainerToBucketListOptions container2BucketListOptions, BucketToResourceList bucket2ResourceList, ObjectToBlob object2Blob, BlobToHttpGetOptions blob2ObjectGetOptions, BlobToObject blob2Object, BlobToObjectMetadata blob2ObjectMetadata, ObjectToBlobMetadata object2BlobMd, javax.inject.Provider<FetchBlobMetadata> fetchBlobMetadataProvider)
public PageSet<? extends StorageMetadata> list()
S3Client.listOwnedBuckets()public boolean containerExists(String container)
S3Client.bucketExists(java.lang.String)container - bucket namepublic boolean createContainerInLocation(Location location, String container)
S3Client.putBucketInRegion(java.lang.String, java.lang.String, org.jclouds.s3.options.PutBucketOptions...)location - corresponds to a Regioncontainer - bucket namepublic ContainerAccess getContainerAccess(String container)
public void setContainerAccess(String container, ContainerAccess access)
public PageSet<? extends StorageMetadata> list(String container, ListContainerOptions options)
S3Client.listBucket(java.lang.String, org.jclouds.s3.options.ListBucketOptions...)container - bucket nameoptions - size, recursion, and context of the listprotected void deletePathAndEnsureGone(String path)
BaseBlobStore.clearContainer(java.lang.String) then S3Client.deleteBucketIfEmpty(java.lang.String) until it is true.deletePathAndEnsureGone in class BaseBlobStorepublic boolean blobExists(String container, String key)
S3Client.objectExists(java.lang.String, java.lang.String)container - bucket namekey - object keypublic BlobMetadata blobMetadata(String container, String key)
S3Client.headObject(java.lang.String, java.lang.String)container - bucket namekey - object keypublic Blob getBlob(String container, String key, GetOptions optionsList)
S3Client.getObject(java.lang.String, java.lang.String, org.jclouds.http.options.GetOptions...)container - bucket namekey - object keyoptionsList - byte range or condition optionspublic String putBlob(String container, Blob blob)
S3Client.putObject(java.lang.String, org.jclouds.s3.domain.S3Object, org.jclouds.s3.options.PutObjectOptions...)container - bucket nameblob - objectpublic String putBlob(String container, Blob blob, PutOptions overrides)
S3Client.putObject(java.lang.String, org.jclouds.s3.domain.S3Object, org.jclouds.s3.options.PutObjectOptions...)container - bucket nameblob - objectoverrides - byte range optionspublic String copyBlob(String fromContainer, String fromName, String toContainer, String toName, CopyOptions options)
BlobStorecopyBlob in interface BlobStorecopyBlob in class BaseBlobStorepublic void removeBlob(String container, String key)
S3Client.deleteObject(java.lang.String, java.lang.String)container - bucket namekey - object keypublic void removeBlobs(String container, Iterable<String> keys)
BlobStoreBlobs representing the data at location container/nameremoveBlobs in interface BlobStoreremoveBlobs in class BaseBlobStorecontainer - container where this exists.keys - fully qualified names relative to the container.public BlobAccess getBlobAccess(String container, String name)
public void setBlobAccess(String container, String name, BlobAccess access)
public MultipartUpload initiateMultipartUpload(String container, BlobMetadata blobMetadata, PutOptions overrides)
public void abortMultipartUpload(MultipartUpload mpu)
public String completeMultipartUpload(MultipartUpload mpu, List<MultipartPart> parts)
public MultipartPart uploadMultipartPart(MultipartUpload mpu, int partNumber, Payload payload)
public List<MultipartPart> listMultipartUpload(MultipartUpload mpu)
public List<MultipartUpload> listMultipartUploads(String container)
public long getMinimumMultipartPartSize()
public long getMaximumMultipartPartSize()
public int getMaximumNumberOfParts()
protected boolean deleteAndVerifyContainerGone(String container)
S3Utils.deleteAndVerifyContainerGone(org.jclouds.s3.S3Client, java.lang.String)deleteAndVerifyContainerGone in class BaseBlobStorecontainer - what to deletepublic boolean createContainerInLocation(Location location, String container, CreateContainerOptions options)
options - controls default access controlBlobStore.createContainerInLocation(Location,String)Copyright © 2009-2016 The Apache Software Foundation. All Rights Reserved.