public interface AmazonS3EncryptionV2 extends AmazonS3
ENDPOINT_PREFIX
Modifier and Type | Method and Description |
---|---|
PutObjectResult |
putInstructionFile(PutInstructionFileRequest req)
Creates a new crypto instruction file by re-encrypting the CEK of an
existing encrypted S3 object with a new encryption material identifiable
via a new set of material description.
|
CompleteMultipartUploadResult |
uploadObject(UploadObjectRequest req)
Used to encrypt data first to disk with pipelined concurrent multi-part
uploads to S3.
|
abortMultipartUpload, changeObjectStorageClass, completeMultipartUpload, copyObject, copyObject, copyPart, createBucket, createBucket, createBucket, createBucket, deleteBucket, deleteBucket, deleteBucketAnalyticsConfiguration, deleteBucketAnalyticsConfiguration, deleteBucketCrossOriginConfiguration, deleteBucketCrossOriginConfiguration, deleteBucketEncryption, deleteBucketEncryption, deleteBucketIntelligentTieringConfiguration, deleteBucketIntelligentTieringConfiguration, deleteBucketInventoryConfiguration, deleteBucketInventoryConfiguration, deleteBucketLifecycleConfiguration, deleteBucketLifecycleConfiguration, deleteBucketMetricsConfiguration, deleteBucketMetricsConfiguration, deleteBucketOwnershipControls, deleteBucketPolicy, deleteBucketPolicy, deleteBucketReplicationConfiguration, deleteBucketReplicationConfiguration, deleteBucketTaggingConfiguration, deleteBucketTaggingConfiguration, deleteBucketWebsiteConfiguration, deleteBucketWebsiteConfiguration, deleteObject, deleteObject, deleteObjects, deleteObjectTagging, deletePublicAccessBlock, deleteVersion, deleteVersion, disableRequesterPays, doesBucketExist, doesBucketExistV2, doesObjectExist, download, download, enableRequesterPays, generatePresignedUrl, generatePresignedUrl, generatePresignedUrl, getBucketAccelerateConfiguration, getBucketAccelerateConfiguration, getBucketAcl, getBucketAcl, getBucketAnalyticsConfiguration, getBucketAnalyticsConfiguration, getBucketCrossOriginConfiguration, getBucketCrossOriginConfiguration, getBucketEncryption, getBucketEncryption, getBucketIntelligentTieringConfiguration, getBucketIntelligentTieringConfiguration, getBucketInventoryConfiguration, getBucketInventoryConfiguration, getBucketLifecycleConfiguration, getBucketLifecycleConfiguration, getBucketLocation, getBucketLocation, getBucketLoggingConfiguration, getBucketLoggingConfiguration, getBucketMetricsConfiguration, getBucketMetricsConfiguration, getBucketNotificationConfiguration, getBucketNotificationConfiguration, getBucketOwnershipControls, getBucketPolicy, getBucketPolicy, getBucketPolicyStatus, getBucketReplicationConfiguration, getBucketReplicationConfiguration, getBucketTaggingConfiguration, getBucketTaggingConfiguration, getBucketVersioningConfiguration, getBucketVersioningConfiguration, getBucketWebsiteConfiguration, getBucketWebsiteConfiguration, getCachedResponseMetadata, getObject, getObject, getObject, getObjectAcl, getObjectAcl, getObjectAcl, getObjectAsString, getObjectLegalHold, getObjectLockConfiguration, getObjectMetadata, getObjectMetadata, getObjectRetention, getObjectTagging, getPublicAccessBlock, getRegion, getRegionName, getS3AccountOwner, getS3AccountOwner, getUrl, headBucket, initiateMultipartUpload, isRequesterPaysEnabled, listBucketAnalyticsConfigurations, listBucketIntelligentTieringConfigurations, listBucketInventoryConfigurations, listBucketMetricsConfigurations, listBuckets, listBuckets, listMultipartUploads, listNextBatchOfObjects, listNextBatchOfObjects, listNextBatchOfVersions, listNextBatchOfVersions, listObjects, listObjects, listObjects, listObjectsV2, listObjectsV2, listObjectsV2, listParts, listVersions, listVersions, listVersions, putObject, putObject, putObject, putObject, restoreObject, restoreObject, restoreObjectV2, selectObjectContent, setBucketAccelerateConfiguration, setBucketAccelerateConfiguration, setBucketAcl, setBucketAcl, setBucketAcl, setBucketAnalyticsConfiguration, setBucketAnalyticsConfiguration, setBucketCrossOriginConfiguration, setBucketCrossOriginConfiguration, setBucketEncryption, setBucketIntelligentTieringConfiguration, setBucketIntelligentTieringConfiguration, setBucketInventoryConfiguration, setBucketInventoryConfiguration, setBucketLifecycleConfiguration, setBucketLifecycleConfiguration, setBucketLoggingConfiguration, setBucketMetricsConfiguration, setBucketMetricsConfiguration, setBucketNotificationConfiguration, setBucketNotificationConfiguration, setBucketOwnershipControls, setBucketOwnershipControls, setBucketPolicy, setBucketPolicy, setBucketReplicationConfiguration, setBucketReplicationConfiguration, setBucketTaggingConfiguration, setBucketTaggingConfiguration, setBucketVersioningConfiguration, setBucketWebsiteConfiguration, setBucketWebsiteConfiguration, setEndpoint, setObjectAcl, setObjectAcl, setObjectAcl, setObjectAcl, setObjectAcl, setObjectLegalHold, setObjectLockConfiguration, setObjectRedirectLocation, setObjectRetention, setObjectTagging, setPublicAccessBlock, setRegion, setRequestPaymentConfiguration, setS3ClientOptions, shutdown, upload, uploadPart, waiters, writeGetObjectResponse
PutObjectResult putInstructionFile(PutInstructionFileRequest req)
User of this method is responsible for explicitly deleting/updating the instruction file so created should the corresponding S3 object is deleted/created.
CompleteMultipartUploadResult uploadObject(UploadObjectRequest req) throws IOException, InterruptedException, ExecutionException
There are many ways you can customize the behavior of this method, including
MultiFileOutputStream
for
custom pipeline behaviorUploadObjectObserver
for custom
multi-part upload behaviorA request is handled with the following life cycle, calling the necessary Service Provider Interface:
UploadObjectObserver
UploadObjectObserver
is constructed (or retrieved from the
request) for execution of concurrent uploads to S3UploadObjectObserver
UploadObjectObserver.onUploadInitiation(UploadObjectRequest)
MultiFileOutputStream
is constructed (or retrieved from the
request) which serves as the pipeline for incremental (but serial)
encryption to disk with concurrent multipart uploads to S3 whenever the
parts on the disk are readyMultiFileOutputStream
UploadObjectObserver.onPartCreate(PartCreationEvent)
UploadObjectObserver.onCompletion(List)
.IOException
- if the encryption to disk failedInterruptedException
- if the current thread was interrupted while waitingExecutionException
- if the concurrent uploads threw an exceptionCopyright © 2021. All rights reserved.