uploadBytes
Creates a flow that uploads bytes to an Amazon S3 bucket.
This function works under the assumption that the upstream size is unknown, so it always uses the multipart upload strategy, as a versatile, "one-size-fits-all" solution.
This function takes a initialRequest for the initial multipart upload request. The function processes bytes concurrently using concurrency.
Return
A Flow of S3Response objects.
Example usage:
val s3Client: S3Client = ...
val byteFlow = flowOf<Byte> { ... } // A Flow<Byte> containing the bytes to upload.
s3Client
.uploadBytes(byteFlow) {
bucket = "my-bucket"
key = "path/to/myfile.txt"
}
.collect { response ->
println("Upload response: $response")
}
Parameters
A Flow of bytes to upload.
The level of concurrency for uploading bytes.
A builder function for the initial multipart upload request.
Creates a flow that uploads bytes to an Amazon S3 bucket.
This function works under the assumption that the upstream size is unknown, so it always uses the multipart upload strategy, as a versatile, "one-size-fits-all" solution.
This function takes a bucket, key, and upstream flow of bytes and uploads them to the specified S3 bucket. The function processes bytes concurrently using concurrency.
Return
A Flow of S3Response objects.
Example usage:
val s3Client: S3Client = ...
val bucket = "my-bucket"
val key = "path/to/myfile.txt"
val byteFlow = flowOf<Byte> { ... } // A Flow<Byte> containing the bytes to upload.
s3Client.uploadBytes(bucket, key, byteFlow)
.collect { response ->
println("Upload response: $response")
}
Parameters
The name of the S3 bucket.
The key of the file to upload.
A Flow of bytes to upload.
The level of concurrency for uploading bytes.