Class BambooS3TransferManager
java.lang.Object
com.atlassian.bamboo.build.artifact.BambooS3TransferManager
Simple wrapper around Amazon's
S3TransferManager that adds some synchronization methods.
The supported usage pattern is: first use all copy/upload/download methods, then call waitForCompletionAndShutdown().
The object is not supposed to be used after waitForCompletionAndShutdown() has been called.-
Constructor Summary
ConstructorsConstructorDescriptionBambooS3TransferManager(software.amazon.awssdk.services.s3.S3AsyncClient s3Client, Executor executor) -
Method Summary
Modifier and TypeMethodDescriptionvoidcopy(software.amazon.awssdk.transfer.s3.model.CopyRequest.Builder copyRequestBuilder, String transferObjectKey) voiddownload(software.amazon.awssdk.transfer.s3.model.DownloadFileRequest.Builder downloadFileRequestBuilder, String transferObjectKey) voidupload(software.amazon.awssdk.transfer.s3.model.UploadFileRequest.Builder uploadFileRequestBuilder, String transferObjectKey) seeS3TransferManager.upload(Consumer)UploadFileRequestvoidWaits for all transfers to complete and shuts down the transfer manager.
-
Constructor Details
-
BambooS3TransferManager
public BambooS3TransferManager(software.amazon.awssdk.services.s3.S3AsyncClient s3Client, Executor executor)
-
-
Method Details
-
upload
public void upload(software.amazon.awssdk.transfer.s3.model.UploadFileRequest.Builder uploadFileRequestBuilder, String transferObjectKey) throws IOException seeS3TransferManager.upload(Consumer)UploadFileRequest- Throws:
IOException
-
download
public void download(software.amazon.awssdk.transfer.s3.model.DownloadFileRequest.Builder downloadFileRequestBuilder, String transferObjectKey) throws IOException - Throws:
IOException
-
copy
public void copy(software.amazon.awssdk.transfer.s3.model.CopyRequest.Builder copyRequestBuilder, String transferObjectKey) throws IOException - Throws:
IOException
-
waitForCompletionAndShutdown
Waits for all transfers to complete and shuts down the transfer manager. The underlying S3 client is not shut down.- Throws:
IOException
-