Skip to content

AWS S3 Client Implementation

This page documents the AWS S3 cloud storage client implementation.

Bases: Client

Concrete AWS S3 implementation of the Cloud Storage Client interface.

UploadObjectResult dataclass

Outcome of a single S3 upload attempt (success flag, key, metadata, error).

DeleteObjectResult dataclass

Outcome of a single S3 delete attempt (success flag, key, error).

__init__(s3=None, config=None)

Create an S3-backed cloud storage client.

upload_object(container_name, object_name, data)

Upload data as an object inside a container.

Returns:

Name Type Description
UploadObjectResult UploadObjectResult

Structured result indicating success or failure.

download_object(container_name, object_name)

Download and return the data of an object from a container.

delete_object(container_name, object_name)

Delete an object from a container.

Returns:

Name Type Description
DeleteObjectResult DeleteObjectResult

Indicates if deletion was successful,

DeleteObjectResult

and provides the object_key and any error message.

list_objects(container_name)

Return the names of all objects stored in a container.