Package org.jclouds.s3.blobstore
Class S3BlobRequestSigner<T extends S3Client>
- java.lang.Object
 - 
- org.jclouds.s3.blobstore.S3BlobRequestSigner<T>
 
 
- 
- All Implemented Interfaces:
 BlobRequestSigner
- Direct Known Subclasses:
 AWSS3BlobRequestSignerV4
@Singleton public class S3BlobRequestSigner<T extends S3Client> extends Object implements BlobRequestSigner
 
- 
- 
Field Summary
Fields Modifier and Type Field Description protected BlobToHttpGetOptionsblob2HttpGetOptionsprotected BlobToObjectblobToObjectprotected com.google.common.reflect.Invokable<?,?>createMethodprotected com.google.common.reflect.Invokable<?,?>deleteMethodprotected com.google.common.reflect.Invokable<?,?>getMethodprotected RestAnnotationProcessorprocessor 
- 
Constructor Summary
Constructors Constructor Description S3BlobRequestSigner(RestAnnotationProcessor processor, BlobToObject blobToObject, BlobToHttpGetOptions blob2HttpGetOptions, Class<T> interfaceClass, RequestAuthorizeSignature authSigner) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description HttpRequestsignGetBlob(String container, String name)gets a signed request, including headers as necessary, to access a blob from an external client.HttpRequestsignGetBlob(String container, String name, long timeInSeconds)gets a signed request, including headers as necessary, to allow access to a blob from an external client for a limited period of timeHttpRequestsignGetBlob(String container, String name, GetOptions options)HttpRequestsignPutBlob(String container, Blob blob)gets a signed request, including headers as necessary, to upload a blob from an external client.HttpRequestsignPutBlob(String container, Blob blob, long timeInSeconds)gets a signed request, including headers as necessary, to upload a blob from an external client for a limited period of time 
 - 
 
- 
- 
Field Detail
- 
processor
protected final RestAnnotationProcessor processor
 
- 
blobToObject
protected final BlobToObject blobToObject
 
- 
blob2HttpGetOptions
protected final BlobToHttpGetOptions blob2HttpGetOptions
 
- 
getMethod
protected final com.google.common.reflect.Invokable<?,?> getMethod
 
- 
deleteMethod
protected final com.google.common.reflect.Invokable<?,?> deleteMethod
 
- 
createMethod
protected final com.google.common.reflect.Invokable<?,?> createMethod
 
 - 
 
- 
Constructor Detail
- 
S3BlobRequestSigner
@Inject public S3BlobRequestSigner(RestAnnotationProcessor processor, BlobToObject blobToObject, BlobToHttpGetOptions blob2HttpGetOptions, Class<T> interfaceClass, RequestAuthorizeSignature authSigner) throws SecurityException, NoSuchMethodException
 
 - 
 
- 
Method Detail
- 
signGetBlob
public HttpRequest signGetBlob(String container, String name)
Description copied from interface:BlobRequestSignergets a signed request, including headers as necessary, to access a blob from an external client.- Specified by:
 signGetBlobin interfaceBlobRequestSigner- Parameters:
 container- container where the blob resides
 
- 
signGetBlob
public HttpRequest signGetBlob(String container, String name, long timeInSeconds)
Description copied from interface:BlobRequestSignergets a signed request, including headers as necessary, to allow access to a blob from an external client for a limited period of time- Specified by:
 signGetBlobin interfaceBlobRequestSignertimeInSeconds- validity time in seconds for the generated request- See Also:
 BlobRequestSigner.signGetBlob(String, String)
 
- 
signPutBlob
public HttpRequest signPutBlob(String container, Blob blob)
Description copied from interface:BlobRequestSignergets a signed request, including headers as necessary, to upload a blob from an external client.Blob blob = context.getBlobStore.blobBuilder().name("name").forSigning().contentType("text/plain") .contentLength(length).build();- Specified by:
 signPutBlobin interfaceBlobRequestSigner- Parameters:
 container- container where the blob residesblob- what to upload- See Also:
 BlobBuilder#forSigning
 
- 
signPutBlob
public HttpRequest signPutBlob(String container, Blob blob, long timeInSeconds)
Description copied from interface:BlobRequestSignergets a signed request, including headers as necessary, to upload a blob from an external client for a limited period of time- Specified by:
 signPutBlobin interfaceBlobRequestSignertimeInSeconds- validity time in seconds for the generated request- See Also:
 BlobBuilder#forSigning,BlobRequestSigner.signPutBlob(java.lang.String, org.jclouds.blobstore.domain.Blob)
 
- 
signGetBlob
public HttpRequest signGetBlob(String container, String name, GetOptions options)
- Specified by:
 signGetBlobin interfaceBlobRequestSigner- See Also:
 BlobRequestSigner.signGetBlob(String, String)
 
 - 
 
 -