GcsS3Client

This client is currently the primary class. It is specifically built around the S3Client. It exists to allow us to no load the S3 toolkit and avoid client collision. We specifically need it because we are forced into the HMAC auth for legacy reasons. At the end of the day, this is just a bare-bone wrapper around the S3Client

Constructors

Link copied to clipboard
constructor(s3Client: S3Client, config: GcsClientConfiguration)

Functions

Link copied to clipboard
open suspend override fun delete(remoteObject: GcsBlob)
open suspend override fun delete(key: String)
open suspend override fun delete(keys: Set<String>)
Link copied to clipboard
open suspend override fun <U> get(key: String, block: (InputStream) -> U): U
Link copied to clipboard
open suspend override fun getMetadata(key: String): Map<String, String>
Link copied to clipboard
open suspend override fun list(prefix: String): Flow<GcsBlob>
Link copied to clipboard
open suspend override fun move(remoteObject: GcsBlob, toKey: String): GcsBlob
open suspend override fun move(key: String, toKey: String): GcsBlob
Link copied to clipboard
open suspend override fun put(key: String, bytes: ByteArray): GcsBlob
Link copied to clipboard
open suspend override fun startStreamingUpload(key: String, metadata: Map<String, String>): StreamingUpload<GcsBlob>