org.jets3t.service.impl.rest.httpclient
Class RestS3Service

java.lang.Object
  extended by org.jets3t.service.StorageService
      extended by org.jets3t.service.impl.rest.httpclient.RestStorageService
          extended by org.jets3t.service.S3Service
              extended by org.jets3t.service.impl.rest.httpclient.RestS3Service
All Implemented Interfaces:
JetS3tRequestAuthorizer, SignedUrlHandler

public class RestS3Service
extends S3Service

REST/HTTP implementation of an S3Service based on the HttpClient library.

This class uses properties obtained through Jets3tProperties. For more information on these properties please refer to JetS3t Configuration


Nested Class Summary
 
Nested classes/interfaces inherited from class org.jets3t.service.impl.rest.httpclient.RestStorageService
RestStorageService.HTTP_METHOD
 
Field Summary
 
Fields inherited from class org.jets3t.service.impl.rest.httpclient.RestStorageService
credentialsProvider, defaultServerSideEncryptionAlgorithm, defaultStorageClass, httpClient, shuttingDown
 
Fields inherited from class org.jets3t.service.StorageService
BUCKET_STATUS__ALREADY_CLAIMED, BUCKET_STATUS__DOES_NOT_EXIST, BUCKET_STATUS__MY_BUCKET, timeOffset
 
Constructor Summary
RestS3Service(ProviderCredentials credentials)
          Constructs the service and initialises the properties.
RestS3Service(ProviderCredentials credentials, java.lang.String invokingApplicationDescription, org.apache.http.client.CredentialsProvider credentialsProvider)
          Constructs the service and initialises the properties.
RestS3Service(ProviderCredentials credentials, java.lang.String invokingApplicationDescription, org.apache.http.client.CredentialsProvider credentialsProvider, Jets3tProperties jets3tProperties)
          Constructs the service and initialises the properties.
 
Method Summary
protected  void deleteBucketPolicyImpl(java.lang.String bucketName)
           
 void deleteLifecycleConfigImpl(java.lang.String bucketName)
           
 MultipleDeleteResult deleteMultipleObjectsWithMFAImpl(java.lang.String bucketName, ObjectKeyAndVersion[] objectNameAndVersions, java.lang.String multiFactorSerialNumber, java.lang.String multiFactorAuthCode, boolean isQuiet)
           
protected  java.lang.String getBucketLocationImpl(java.lang.String bucketName)
           
protected  java.lang.String getBucketPolicyImpl(java.lang.String bucketName)
           
protected  S3BucketVersioningStatus getBucketVersioningStatusImpl(java.lang.String bucketName)
           
 java.lang.String getDevPayProductToken()
           
 java.lang.String getDevPayUserToken()
           
protected  boolean getDisableDnsBuckets()
           
protected  boolean getEnableServerSideEncryption()
           
protected  boolean getEnableStorageClasses()
           
 java.lang.String getEndpoint()
           
protected  int getHttpPort()
           
protected  boolean getHttpsOnly()
           
protected  int getHttpsPort()
           
 LifecycleConfig getLifecycleConfigImpl(java.lang.String bucketName)
           
protected  NotificationConfig getNotificationConfigImpl(java.lang.String bucketName)
           
 java.util.List<java.lang.String> getResourceParameterNames()
           
 java.lang.String getRestHeaderPrefix()
           
 java.lang.String getRestMetadataPrefix()
           
protected  java.lang.String getSignatureIdentifier()
           
protected  java.lang.String getVirtualPath()
           
protected  XmlResponsesSaxParser getXmlResponseSaxParser()
           
protected  boolean isRequesterPaysBucketImpl(java.lang.String bucketName)
           
 boolean isRequesterPaysEnabled()
          Is this service configured to generate Requester Pays requests when uploading data to S3, or retrieving data from the service.
protected  boolean isTargettingGoogleStorageService()
           
protected  VersionOrDeleteMarkersChunk listVersionedObjectsChunkedImpl(java.lang.String bucketName, java.lang.String prefix, java.lang.String delimiter, long maxListingLength, java.lang.String priorLastKey, java.lang.String priorLastVersion, boolean completeListing)
          Lists version or delete markers in a versioned bucket, up to the maximum listing length specified.
protected  BaseVersionOrDeleteMarker[] listVersionedObjectsImpl(java.lang.String bucketName, java.lang.String prefix, java.lang.String delimiter, java.lang.String keyMarker, java.lang.String versionMarker, long maxListingLength)
           
protected  VersionOrDeleteMarkersChunk listVersionedObjectsInternal(java.lang.String bucketName, java.lang.String prefix, java.lang.String delimiter, long maxListingLength, boolean automaticallyMergeChunks, java.lang.String nextKeyMarker, java.lang.String nextVersionIdMarker)
           
protected  void multipartAbortUploadImpl(java.lang.String uploadId, java.lang.String bucketName, java.lang.String objectKey)
           
protected  MultipartCompleted multipartCompleteUploadImpl(java.lang.String uploadId, java.lang.String bucketName, java.lang.String objectKey, java.util.List<MultipartPart> parts)
           
protected  java.util.List<MultipartPart> multipartListPartsImpl(java.lang.String uploadId, java.lang.String bucketName, java.lang.String objectKey)
           
protected  MultipartUploadChunk multipartListUploadsChunkedImpl(java.lang.String bucketName, java.lang.String prefix, java.lang.String delimiter, java.lang.String keyMarker, java.lang.String uploadIdMarker, java.lang.Integer maxUploads, boolean autoMergeChunks)
           
protected  MultipartUpload multipartStartUploadImpl(java.lang.String bucketName, java.lang.String objectKey, java.util.Map<java.lang.String,java.lang.Object> metadataProvided, AccessControlList acl, java.lang.String storageClass)
           
protected  MultipartUpload multipartStartUploadImpl(java.lang.String bucketName, java.lang.String objectKey, java.util.Map<java.lang.String,java.lang.Object> metadataProvided, AccessControlList acl, java.lang.String storageClass, java.lang.String serverSideEncryptionAlgorithm)
           
protected  MultipartPart multipartUploadPartCopyImpl(java.lang.String uploadId, java.lang.String targetBucketName, java.lang.String targetObjectKey, java.lang.Integer partNumber, java.lang.String sourceBucketName, java.lang.String sourceObjectKey, java.util.Calendar ifModifiedSince, java.util.Calendar ifUnmodifiedSince, java.lang.String[] ifMatchTags, java.lang.String[] ifNoneMatchTags, java.lang.Long byteRangeStart, java.lang.Long byteRangeEnd, java.lang.String versionId)
           
protected  MultipartPart multipartUploadPartImpl(java.lang.String uploadId, java.lang.String bucketName, java.lang.Integer partNumber, S3Object object)
           
protected  StorageBucket newBucket()
           
protected  StorageObject newObject()
           
protected  void setBucketPolicyImpl(java.lang.String bucketName, java.lang.String policyDocument)
           
 void setDevPayProductToken(java.lang.String productToken)
          Set the Product Token value to use for requests to a DevPay S3 account.
 void setDevPayUserToken(java.lang.String userToken)
          Set the User Token value to use for requests to a DevPay S3 account.
 void setLifecycleConfigImpl(java.lang.String bucketName, LifecycleConfig config)
           
protected  void setNotificationConfigImpl(java.lang.String bucketName, NotificationConfig config)
           
protected  void setRequesterPaysBucketImpl(java.lang.String bucketName, boolean requesterPays)
           
 void setRequesterPaysEnabled(boolean isRequesterPays)
          Instruct the service whether to generate Requester Pays requests when uploading data to S3, or retrieving data from the service.
protected  org.apache.http.client.methods.HttpUriRequest setupConnection(RestStorageService.HTTP_METHOD method, java.lang.String bucketName, java.lang.String objectKey, java.util.Map<java.lang.String,java.lang.String> requestParameters)
          Creates an HttpUriRequest object to handle a particular connection method.
protected  void updateBucketVersioningStatusImpl(java.lang.String bucketName, boolean enabled, boolean multiFactorAuthDeleteEnabled, java.lang.String multiFactorSerialNumber, java.lang.String multiFactorAuthCode)
           
 
Methods inherited from class org.jets3t.service.S3Service
buildPostForm, buildPostForm, buildPostForm, copyVersionedObject, copyVersionedObject, createBucket, createBucket, createBucket, createBucket, createSignedDeleteUrl, createSignedDeleteUrl, createSignedDeleteUrl, createSignedDeleteUrl, createSignedGetUrl, createSignedGetUrl, createSignedGetUrl, createSignedGetUrl, createSignedHeadUrl, createSignedHeadUrl, createSignedHeadUrl, createSignedHeadUrl, createSignedPutUrl, createSignedPutUrl, createSignedPutUrl, createSignedPutUrl, createSignedUrl, createSignedUrl, createSignedUrl, createSignedUrl, createSignedUrl, createSignedUrl, createTorrentUrl, createUnsignedObjectUrl, deleteBucket, deleteBucketPolicy, deleteLifecycleConfig, deleteMultipleObjects, deleteMultipleObjects, deleteMultipleObjects, deleteMultipleObjectsWithMFA, deleteObject, deleteVersionedObject, deleteVersionedObjectWithMFA, deleteWebsiteConfig, disableMFAForVersionedBucket, enableBucketVersioning, enableBucketVersioningAndMFA, enableBucketVersioningWithMFA, generatePostPolicyCondition_AllowAnyValue, generatePostPolicyCondition_Equality, generatePostPolicyCondition_Equality, generatePostPolicyCondition_Equality, generatePostPolicyCondition_Range, generatePostPolicyCondition, getBucket, getBucketAcl, getBucketLocation, getBucketLoggingStatus, getBucketPolicy, getBucketVersioningStatus, getLifecycleConfig, getNotificationConfig, getObject, getObject, getObject, getObject, getObjectAcl, getObjectDetails, getObjectDetails, getObjectVersions, getOrCreateBucket, getOrCreateBucket, getVersionedObject, getVersionedObject, getVersionedObject, getVersionedObjectAcl, getVersionedObjectAcl, getVersionedObjectDetails, getVersionedObjectDetails, getVersionedObjectDetails, getWebsiteConfig, isRequesterPaysBucket, listAllBuckets, listObjects, listObjects, listObjects, listObjects, listObjects, listObjects, listVersionedObjects, listVersionedObjectsChunked, multipartAbortUpload, multipartCompleteUpload, multipartCompleteUpload, multipartListParts, multipartListUploads, multipartListUploads, multipartListUploads, multipartListUploadsChunked, multipartStartUpload, multipartStartUpload, multipartStartUpload, multipartUploadPart, multipartUploadPartCopy, multipartUploadPartCopy, multipartUploadPartCopy, putObject, putObject, putObjectAcl, putObjectAcl, putObjectMaybeAsMultipart, putVersionedObjectAcl, putVersionedObjectAcl, setBucketLoggingStatus, setBucketPolicy, setLifecycleConfig, setNotificationConfig, setRequesterPaysBucket, setWebsiteConfig, suspendBucketVersioning, suspendBucketVersioningWithMFA, unsetNotificationConfig
 
Methods inherited from class org.jets3t.service.impl.rest.httpclient.RestStorageService
addMetadataToHeaders, addRequestHeadersToConnection, addRequestParametersToUrlPath, authorizeHttpRequest, checkBucketStatus, copyObjectImpl, createBucketImpl, createObjectImpl, deleteBucketImpl, deleteObjectImpl, deleteObjectWithSignedUrl, deleteWebsiteConfigImpl, getAccountOwnerImpl, getBucketAclImpl, getBucketLoggingStatusImpl, getCredentialsProvider, getHttpClient, getHttpConnectionManager, getObjectAclImpl, getObjectAclImpl, getObjectAclWithSignedUrl, getObjectDetailsImpl, getObjectDetailsWithSignedUrl, getObjectImpl, getObjectWithSignedUrl, getWebsiteConfigImpl, initHttpConnection, initializeDefaults, initializeProxy, isBucketAccessible, isLiveMD5HashingRequired, isRecoverable403, isXmlContentType, listAllBucketsImpl, listObjectsChunkedImpl, listObjectsImpl, listObjectsInternal, performRequest, performRequest, performRestDelete, performRestGet, performRestGet, performRestHead, performRestPost, performRestPostWithXmlBuilder, performRestPut, performRestPutWithXmlBuilder, prepareRESTHeaderAcl, prepareServerSideEncryption, prepareStorageClass, putAclImpl, putBucketAclImpl, putObjectAclImpl, putObjectAclWithSignedUrl, putObjectImpl, putObjectWithRequestEntityImpl, putObjectWithSignedUrl, setBucketLoggingStatusImpl, setCredentialsProvider, setHttpClient, setWebsiteConfigImpl, shutdownImpl, verifyExpectedAndActualETagValues
 
Methods inherited from class org.jets3t.service.StorageService
assertAuthenticatedConnection, assertValidBucket, assertValidObject, assertValidObject, copyObject, copyObject, createBucket, createBucketImpl, deleteBucket, deleteBucket, deleteObject, getAccountOwner, getBucketAcl, getCurrentTimeWithOffset, getInternalErrorRetryMax, getInvokingApplicationDescription, getJetS3tProperties, getObjectAcl, getObjectDetails, getObjectDetails, getProviderCredentials, isAuthenticatedConnection, isHttpsOnly, isObjectInBucket, isShutdown, listAllBucketsImpl, listObjectsChunked, listObjectsChunked, moveObject, putBucketAcl, putBucketAcl, putObject, putObjectAcl, putObjectAcl, renameMetadataKeys, renameObject, setProviderCredentials, shutdown, sleepOnInternalError, updateObjectMetadata
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jets3t.service.utils.signedurl.SignedUrlHandler
deleteObjectWithSignedUrl, getObjectAclWithSignedUrl, getObjectDetailsWithSignedUrl, getObjectWithSignedUrl, putObjectAclWithSignedUrl, putObjectWithSignedUrl
 

Constructor Detail

RestS3Service

public RestS3Service(ProviderCredentials credentials)
Constructs the service and initialises the properties.

Parameters:
credentials - the user credentials to use when communicating with S3, may be null in which case the communication is done as an anonymous user.

RestS3Service

public RestS3Service(ProviderCredentials credentials,
                     java.lang.String invokingApplicationDescription,
                     org.apache.http.client.CredentialsProvider credentialsProvider)
Constructs the service and initialises the properties.

Parameters:
credentials - the S3 user credentials to use when communicating with S3, may be null in which case the communication is done as an anonymous user.
invokingApplicationDescription - a short description of the application using the service, suitable for inclusion in a user agent string for REST/HTTP requests. Ideally this would include the application's version number, for example: Cockpit/0.7.3 or My App Name/1.0
credentialsProvider - an implementation of the HttpClient CredentialsProvider interface, to provide a means for prompting for credentials when necessary.

RestS3Service

public RestS3Service(ProviderCredentials credentials,
                     java.lang.String invokingApplicationDescription,
                     org.apache.http.client.CredentialsProvider credentialsProvider,
                     Jets3tProperties jets3tProperties)
Constructs the service and initialises the properties.

Parameters:
credentials - the S3 user credentials to use when communicating with S3, may be null in which case the communication is done as an anonymous user.
invokingApplicationDescription - a short description of the application using the service, suitable for inclusion in a user agent string for REST/HTTP requests. Ideally this would include the application's version number, for example: Cockpit/0.7.3 or My App Name/1.0
credentialsProvider - an implementation of the HttpClient CredentialsProvider interface, to provide a means for prompting for credentials when necessary.
jets3tProperties - JetS3t properties that will be applied within this service.
Method Detail

isTargettingGoogleStorageService

protected boolean isTargettingGoogleStorageService()
Specified by:
isTargettingGoogleStorageService in class RestStorageService

getXmlResponseSaxParser

protected XmlResponsesSaxParser getXmlResponseSaxParser()
                                                 throws ServiceException
Specified by:
getXmlResponseSaxParser in class StorageService
Returns:
an XML SAX Parser capable of parsing responses from the implemented storage service.
Throws:
ServiceException

newBucket

protected StorageBucket newBucket()
Specified by:
newBucket in class StorageService
Returns:
a service-specific {#link StorageBucket implementation.

newObject

protected StorageObject newObject()
Specified by:
newObject in class StorageService
Returns:
a service-specific {#link StorageObject implementation.

setDevPayUserToken

public void setDevPayUserToken(java.lang.String userToken)
Set the User Token value to use for requests to a DevPay S3 account. The user token is not required for DevPay web products for which the user token was created after 15th May 2008.

Parameters:
userToken - the user token value provided by the AWS DevPay activation service.

getDevPayUserToken

public java.lang.String getDevPayUserToken()
Returns:
the user token value to use in requests to a DevPay S3 account, or null if no such token value has been set.

setDevPayProductToken

public void setDevPayProductToken(java.lang.String productToken)
Set the Product Token value to use for requests to a DevPay S3 account.

Parameters:
productToken - the token that identifies your DevPay product.

getDevPayProductToken

public java.lang.String getDevPayProductToken()
Returns:
the product token value to use in requests to a DevPay S3 account, or null if no such token value has been set.

setRequesterPaysEnabled

public void setRequesterPaysEnabled(boolean isRequesterPays)
Instruct the service whether to generate Requester Pays requests when uploading data to S3, or retrieving data from the service. The default value for the Requester Pays Enabled setting is set according to the jets3t.properties setting httpclient.requester-pays-buckets-enabled.

Parameters:
isRequesterPays - if true, all subsequent S3 service requests will include the Requester Pays flag.

isRequesterPaysEnabled

public boolean isRequesterPaysEnabled()
Is this service configured to generate Requester Pays requests when uploading data to S3, or retrieving data from the service. The default value for the Requester Pays Enabled setting is set according to the jets3t.properties setting httpclient.requester-pays-buckets-enabled.

Returns:
true if S3 service requests will include the Requester Pays flag, false otherwise.

setupConnection

protected org.apache.http.client.methods.HttpUriRequest setupConnection(RestStorageService.HTTP_METHOD method,
                                                                        java.lang.String bucketName,
                                                                        java.lang.String objectKey,
                                                                        java.util.Map<java.lang.String,java.lang.String> requestParameters)
                                                                 throws S3ServiceException
Creates an HttpUriRequest object to handle a particular connection method.

Overrides:
setupConnection in class RestStorageService
Parameters:
method - the HTTP method/connection-type to use, must be one of: PUT, HEAD, GET, DELETE
bucketName - the bucket's name
objectKey - the object's key name, may be null if the operation is on a bucket only.
Returns:
the HTTP method object used to perform the request
Throws:
S3ServiceException

getEndpoint

public java.lang.String getEndpoint()
Specified by:
getEndpoint in class StorageService
Returns:
the endpoint to be used to connect to S3.

getVirtualPath

protected java.lang.String getVirtualPath()
Specified by:
getVirtualPath in class StorageService
Returns:
the virtual path inside the S3 server.

getSignatureIdentifier

protected java.lang.String getSignatureIdentifier()
Specified by:
getSignatureIdentifier in class StorageService
Returns:
the identifier for the signature algorithm.

getRestHeaderPrefix

public java.lang.String getRestHeaderPrefix()
Specified by:
getRestHeaderPrefix in class StorageService
Returns:
header prefix for general Amazon headers: x-amz-.

getResourceParameterNames

public java.util.List<java.lang.String> getResourceParameterNames()
Specified by:
getResourceParameterNames in class StorageService
Returns:
GET parameter names that represent specific resources in the target service, as opposed to representing REST operation "plumbing". For example the "acl" parameter might be used to represent a resource's access control list settings.

getRestMetadataPrefix

public java.lang.String getRestMetadataPrefix()
Specified by:
getRestMetadataPrefix in class StorageService
Returns:
header prefix for Amazon metadata headers: x-amz-meta-.

getHttpPort

protected int getHttpPort()
Specified by:
getHttpPort in class StorageService
Returns:
the port number to be used for insecure connections over HTTP.

getHttpsPort

protected int getHttpsPort()
Specified by:
getHttpsPort in class StorageService
Returns:
the port number to be used for secure connections over HTTPS.

getHttpsOnly

protected boolean getHttpsOnly()
Specified by:
getHttpsOnly in class StorageService
Returns:
If true, all communication with S3 will be via encrypted HTTPS connections, otherwise communications will be sent unencrypted via HTTP.

getDisableDnsBuckets

protected boolean getDisableDnsBuckets()
Specified by:
getDisableDnsBuckets in class StorageService
Returns:
If true, JetS3t will specify bucket names in the request path of the HTTP message instead of the Host header.

getEnableStorageClasses

protected boolean getEnableStorageClasses()
Specified by:
getEnableStorageClasses in class StorageService
Returns:
If true, JetS3t will enable support for Storage Classes.

getEnableServerSideEncryption

protected boolean getEnableServerSideEncryption()
Specified by:
getEnableServerSideEncryption in class StorageService
Returns:
If true, JetS3t will enable support for Server-Side Encryption. Only enabled for Amazon S3 end-point by default.

listVersionedObjectsImpl

protected BaseVersionOrDeleteMarker[] listVersionedObjectsImpl(java.lang.String bucketName,
                                                               java.lang.String prefix,
                                                               java.lang.String delimiter,
                                                               java.lang.String keyMarker,
                                                               java.lang.String versionMarker,
                                                               long maxListingLength)
                                                        throws S3ServiceException
Specified by:
listVersionedObjectsImpl in class S3Service
Throws:
S3ServiceException

updateBucketVersioningStatusImpl

protected void updateBucketVersioningStatusImpl(java.lang.String bucketName,
                                                boolean enabled,
                                                boolean multiFactorAuthDeleteEnabled,
                                                java.lang.String multiFactorSerialNumber,
                                                java.lang.String multiFactorAuthCode)
                                         throws S3ServiceException
Specified by:
updateBucketVersioningStatusImpl in class S3Service
Throws:
S3ServiceException

getBucketVersioningStatusImpl

protected S3BucketVersioningStatus getBucketVersioningStatusImpl(java.lang.String bucketName)
                                                          throws S3ServiceException
Specified by:
getBucketVersioningStatusImpl in class S3Service
Throws:
S3ServiceException

listVersionedObjectsInternal

protected VersionOrDeleteMarkersChunk listVersionedObjectsInternal(java.lang.String bucketName,
                                                                   java.lang.String prefix,
                                                                   java.lang.String delimiter,
                                                                   long maxListingLength,
                                                                   boolean automaticallyMergeChunks,
                                                                   java.lang.String nextKeyMarker,
                                                                   java.lang.String nextVersionIdMarker)
                                                            throws S3ServiceException
Throws:
S3ServiceException

listVersionedObjectsChunkedImpl

protected VersionOrDeleteMarkersChunk listVersionedObjectsChunkedImpl(java.lang.String bucketName,
                                                                      java.lang.String prefix,
                                                                      java.lang.String delimiter,
                                                                      long maxListingLength,
                                                                      java.lang.String priorLastKey,
                                                                      java.lang.String priorLastVersion,
                                                                      boolean completeListing)
                                                               throws S3ServiceException
Description copied from class: S3Service
Lists version or delete markers in a versioned bucket, up to the maximum listing length specified.

Implementation notes The implementation of this method returns only as many items as requested in the chunk size. It is the responsibility of the caller to build a complete object listing from multiple chunks, should this be necessary.

Specified by:
listVersionedObjectsChunkedImpl in class S3Service
delimiter - only list objects with key names up to this delimiter, may be null.
Throws:
S3ServiceException

getBucketLocationImpl

protected java.lang.String getBucketLocationImpl(java.lang.String bucketName)
                                          throws S3ServiceException
Overrides:
getBucketLocationImpl in class RestStorageService
Throws:
S3ServiceException

getBucketPolicyImpl

protected java.lang.String getBucketPolicyImpl(java.lang.String bucketName)
                                        throws S3ServiceException
Specified by:
getBucketPolicyImpl in class S3Service
Throws:
S3ServiceException

setBucketPolicyImpl

protected void setBucketPolicyImpl(java.lang.String bucketName,
                                   java.lang.String policyDocument)
                            throws S3ServiceException
Specified by:
setBucketPolicyImpl in class S3Service
Throws:
S3ServiceException

deleteBucketPolicyImpl

protected void deleteBucketPolicyImpl(java.lang.String bucketName)
                               throws S3ServiceException
Specified by:
deleteBucketPolicyImpl in class S3Service
Throws:
S3ServiceException

isRequesterPaysBucketImpl

protected boolean isRequesterPaysBucketImpl(java.lang.String bucketName)
                                     throws S3ServiceException
Specified by:
isRequesterPaysBucketImpl in class S3Service
Throws:
S3ServiceException

setRequesterPaysBucketImpl

protected void setRequesterPaysBucketImpl(java.lang.String bucketName,
                                          boolean requesterPays)
                                   throws S3ServiceException
Specified by:
setRequesterPaysBucketImpl in class S3Service
Throws:
S3ServiceException

multipartStartUploadImpl

protected MultipartUpload multipartStartUploadImpl(java.lang.String bucketName,
                                                   java.lang.String objectKey,
                                                   java.util.Map<java.lang.String,java.lang.Object> metadataProvided,
                                                   AccessControlList acl,
                                                   java.lang.String storageClass)
                                            throws S3ServiceException
Throws:
S3ServiceException

multipartStartUploadImpl

protected MultipartUpload multipartStartUploadImpl(java.lang.String bucketName,
                                                   java.lang.String objectKey,
                                                   java.util.Map<java.lang.String,java.lang.Object> metadataProvided,
                                                   AccessControlList acl,
                                                   java.lang.String storageClass,
                                                   java.lang.String serverSideEncryptionAlgorithm)
                                            throws S3ServiceException
Specified by:
multipartStartUploadImpl in class S3Service
Throws:
S3ServiceException

multipartUploadPartImpl

protected MultipartPart multipartUploadPartImpl(java.lang.String uploadId,
                                                java.lang.String bucketName,
                                                java.lang.Integer partNumber,
                                                S3Object object)
                                         throws S3ServiceException
Specified by:
multipartUploadPartImpl in class S3Service
Throws:
S3ServiceException

multipartUploadPartCopyImpl

protected MultipartPart multipartUploadPartCopyImpl(java.lang.String uploadId,
                                                    java.lang.String targetBucketName,
                                                    java.lang.String targetObjectKey,
                                                    java.lang.Integer partNumber,
                                                    java.lang.String sourceBucketName,
                                                    java.lang.String sourceObjectKey,
                                                    java.util.Calendar ifModifiedSince,
                                                    java.util.Calendar ifUnmodifiedSince,
                                                    java.lang.String[] ifMatchTags,
                                                    java.lang.String[] ifNoneMatchTags,
                                                    java.lang.Long byteRangeStart,
                                                    java.lang.Long byteRangeEnd,
                                                    java.lang.String versionId)
                                             throws S3ServiceException
Specified by:
multipartUploadPartCopyImpl in class S3Service
Throws:
S3ServiceException

multipartAbortUploadImpl

protected void multipartAbortUploadImpl(java.lang.String uploadId,
                                        java.lang.String bucketName,
                                        java.lang.String objectKey)
                                 throws S3ServiceException
Specified by:
multipartAbortUploadImpl in class S3Service
Throws:
S3ServiceException

multipartCompleteUploadImpl

protected MultipartCompleted multipartCompleteUploadImpl(java.lang.String uploadId,
                                                         java.lang.String bucketName,
                                                         java.lang.String objectKey,
                                                         java.util.List<MultipartPart> parts)
                                                  throws S3ServiceException
Specified by:
multipartCompleteUploadImpl in class S3Service
Throws:
S3ServiceException

multipartListUploadsChunkedImpl

protected MultipartUploadChunk multipartListUploadsChunkedImpl(java.lang.String bucketName,
                                                               java.lang.String prefix,
                                                               java.lang.String delimiter,
                                                               java.lang.String keyMarker,
                                                               java.lang.String uploadIdMarker,
                                                               java.lang.Integer maxUploads,
                                                               boolean autoMergeChunks)
                                                        throws S3ServiceException
Specified by:
multipartListUploadsChunkedImpl in class S3Service
Throws:
S3ServiceException

multipartListPartsImpl

protected java.util.List<MultipartPart> multipartListPartsImpl(java.lang.String uploadId,
                                                               java.lang.String bucketName,
                                                               java.lang.String objectKey)
                                                        throws S3ServiceException
Specified by:
multipartListPartsImpl in class S3Service
Throws:
S3ServiceException

getNotificationConfigImpl

protected NotificationConfig getNotificationConfigImpl(java.lang.String bucketName)
                                                throws S3ServiceException
Specified by:
getNotificationConfigImpl in class S3Service
Throws:
S3ServiceException

setNotificationConfigImpl

protected void setNotificationConfigImpl(java.lang.String bucketName,
                                         NotificationConfig config)
                                  throws S3ServiceException
Specified by:
setNotificationConfigImpl in class S3Service
Throws:
S3ServiceException

getLifecycleConfigImpl

public LifecycleConfig getLifecycleConfigImpl(java.lang.String bucketName)
                                       throws S3ServiceException
Specified by:
getLifecycleConfigImpl in class S3Service
Throws:
S3ServiceException

setLifecycleConfigImpl

public void setLifecycleConfigImpl(java.lang.String bucketName,
                                   LifecycleConfig config)
                            throws S3ServiceException
Specified by:
setLifecycleConfigImpl in class S3Service
Throws:
S3ServiceException

deleteLifecycleConfigImpl

public void deleteLifecycleConfigImpl(java.lang.String bucketName)
                               throws S3ServiceException
Specified by:
deleteLifecycleConfigImpl in class S3Service
Throws:
S3ServiceException

deleteMultipleObjectsWithMFAImpl

public MultipleDeleteResult deleteMultipleObjectsWithMFAImpl(java.lang.String bucketName,
                                                             ObjectKeyAndVersion[] objectNameAndVersions,
                                                             java.lang.String multiFactorSerialNumber,
                                                             java.lang.String multiFactorAuthCode,
                                                             boolean isQuiet)
                                                      throws S3ServiceException
Specified by:
deleteMultipleObjectsWithMFAImpl in class S3Service
Throws:
S3ServiceException