Trait S3Store
Source pub trait S3Store: Send + Sync {
Show 13 methods
// Required methods
fn load(&self) -> StoreResult<S3State>;
fn put_bucket_meta(
&self,
bucket: &str,
meta: &BucketMeta,
) -> StoreResult<()>;
fn put_bucket_subresource(
&self,
bucket: &str,
kind: BucketSubresource,
payload: &str,
) -> StoreResult<()>;
fn delete_bucket_subresource(
&self,
bucket: &str,
kind: BucketSubresource,
) -> StoreResult<()>;
fn delete_bucket(&self, bucket: &str) -> StoreResult<()>;
fn put_object(
&self,
bucket: &str,
key: &str,
version: Option<&str>,
body: BodySource,
meta: &ObjectMeta,
) -> StoreResult<BodyRef>;
fn put_object_meta(
&self,
bucket: &str,
key: &str,
version: Option<&str>,
meta: &ObjectMeta,
) -> StoreResult<()>;
fn delete_object(
&self,
bucket: &str,
key: &str,
version: Option<&str>,
) -> StoreResult<()>;
fn open_object_body(&self, body: &BodyRef) -> StoreResult<Bytes>;
fn mpu_create(
&self,
bucket: &str,
upload_id: &str,
init: &MpuInit,
) -> StoreResult<()>;
fn mpu_put_part(
&self,
bucket: &str,
upload_id: &str,
part_number: u32,
body: BodySource,
etag: &str,
) -> StoreResult<()>;
fn mpu_abort(&self, bucket: &str, upload_id: &str) -> StoreResult<()>;
fn mpu_complete(
&self,
bucket: &str,
upload_id: &str,
final_key: &str,
version: Option<&str>,
meta: &ObjectMeta,
) -> StoreResult<BodyRef>;
}