S3FileStorageAdapter class

S3 and S3-compatible object stores (AWS S3, Cloudflare R2, MinIO), authenticated with AWS Signature Version 4.

Path-style addressing ({endpoint}/{bucket}/{key}) is the default because R2 and MinIO require it; set usePathStyle to false for virtual-hosted AWS buckets.

Implemented types

Constructors

S3FileStorageAdapter({required String bucket, required String region, required DVAwsCredentials credentials, Uri? endpoint, bool usePathStyle = true, DVHttpSend transport = dvSendHttpRequest, DateTime now()?})

Properties

bucket → String
final
credentials → DVAwsCredentials
final
endpoint → Uri
final
hashCode → int
The hash code for this object.
no setterinherited
now → DateTime Function()
Injectable clock; SigV4 signatures are time-bound.
final
region → String
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
transport → DVHttpSend
final
usePathStyle → bool
final

Methods

delete(String key) → Future<void>
override
exists(String key) → Future<bool>
override
get(String key) → Future<List<int>>
override
list({String prefix = ''}) → Future<List<String>>
Object keys, optionally restricted to those beginning with prefix.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
put(String key, List<int> bytes, {String? contentType}) → Future<void>
override
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited

Static Methods

parseListKeys(String xml) → List<String>
Reads <Key> entries out of an S3 ListBucketResult.