public class CryptoModuleDispatcher extends S3CryptoModule<MultipartUploadContext>
| Constructor and Description |
|---|
CryptoModuleDispatcher(AWSKMS kms,
S3Direct s3,
AWSCredentialsProvider credentialsProvider,
EncryptionMaterialsProvider encryptionMaterialsProvider,
CryptoConfiguration cryptoConfig) |
| Modifier and Type | Method and Description |
|---|---|
void |
abortMultipartUploadSecurely(AbortMultipartUploadRequest req) |
CompleteMultipartUploadResult |
completeMultipartUploadSecurely(CompleteMultipartUploadRequest req) |
CopyPartResult |
copyPartSecurely(CopyPartRequest req) |
S3Object |
getObjectSecurely(GetObjectRequest req) |
ObjectMetadata |
getObjectSecurely(GetObjectRequest req,
File destinationFile) |
InitiateMultipartUploadResult |
initiateMultipartUploadSecurely(InitiateMultipartUploadRequest req) |
PutObjectResult |
putInstructionFileSecurely(PutInstructionFileRequest req) |
void |
putLocalObjectSecurely(UploadObjectRequest req,
String uploadId,
OutputStream os) |
PutObjectResult |
putObjectSecurely(PutObjectRequest putObjectRequest) |
UploadPartResult |
uploadPartSecurely(UploadPartRequest req) |
public CryptoModuleDispatcher(AWSKMS kms, S3Direct s3, AWSCredentialsProvider credentialsProvider, EncryptionMaterialsProvider encryptionMaterialsProvider, CryptoConfiguration cryptoConfig)
public PutObjectResult putObjectSecurely(PutObjectRequest putObjectRequest)
putObjectSecurely in class S3CryptoModule<MultipartUploadContext>public S3Object getObjectSecurely(GetObjectRequest req)
getObjectSecurely in class S3CryptoModule<MultipartUploadContext>public ObjectMetadata getObjectSecurely(GetObjectRequest req, File destinationFile)
getObjectSecurely in class S3CryptoModule<MultipartUploadContext>public CompleteMultipartUploadResult completeMultipartUploadSecurely(CompleteMultipartUploadRequest req) throws SdkClientException, AmazonServiceException
completeMultipartUploadSecurely in class S3CryptoModule<MultipartUploadContext>SdkClientExceptionAmazonServiceExceptionpublic void abortMultipartUploadSecurely(AbortMultipartUploadRequest req)
abortMultipartUploadSecurely in class S3CryptoModule<MultipartUploadContext>public InitiateMultipartUploadResult initiateMultipartUploadSecurely(InitiateMultipartUploadRequest req) throws SdkClientException, AmazonServiceException
initiateMultipartUploadSecurely in class S3CryptoModule<MultipartUploadContext>SdkClientExceptionAmazonServiceExceptionpublic UploadPartResult uploadPartSecurely(UploadPartRequest req) throws SdkClientException, AmazonServiceException
NOTE: Because the encryption process requires context from block N-1 in order to encrypt block N, parts uploaded with the AmazonS3EncryptionClient (as opposed to the normal AmazonS3Client) must be uploaded serially, and in order. Otherwise, the previous encryption context isn't available to use when encrypting the current part.
uploadPartSecurely in class S3CryptoModule<MultipartUploadContext>SdkClientExceptionAmazonServiceExceptionpublic CopyPartResult copyPartSecurely(CopyPartRequest req)
copyPartSecurely in class S3CryptoModule<MultipartUploadContext>public PutObjectResult putInstructionFileSecurely(PutInstructionFileRequest req)
putInstructionFileSecurely in class S3CryptoModule<MultipartUploadContext>EncryptedGetObjectRequest.public void putLocalObjectSecurely(UploadObjectRequest req, String uploadId, OutputStream os) throws IOException
putLocalObjectSecurely in class S3CryptoModule<MultipartUploadContext>uploadId - multipart upload idos - output stream which will be closed upon method completion.IOException