pub trait AsyncAttachmentService<O> {
    type GetContentBody: AsyncWriteBody<O> + 'static + Send;
    // Required methods
    fn create(
        &self,
        auth_: BearerToken,
        request: CreateAttachmentRequest,
    ) -> impl Future<Output = Result<Attachment, Error>> + Send;
    fn get(
        &self,
        auth_: BearerToken,
        rid: AttachmentRid,
    ) -> impl Future<Output = Result<Attachment, Error>> + Send;
    fn get_batch(
        &self,
        auth_: BearerToken,
        request: GetAttachmentsRequest,
    ) -> impl Future<Output = Result<GetAttachmentsResponse, Error>> + Send;
    fn get_content(
        &self,
        auth_: BearerToken,
        rid: AttachmentRid,
    ) -> impl Future<Output = Result<Self::GetContentBody, Error>> + Send;
    fn get_uri(
        &self,
        auth_: BearerToken,
        rid: AttachmentRid,
    ) -> impl Future<Output = Result<AttachmentUri, Error>> + Send;
    fn update(
        &self,
        auth_: BearerToken,
        rid: AttachmentRid,
        request: UpdateAttachmentRequest,
    ) -> impl Future<Output = Result<Attachment, Error>> + Send;
    fn archive(
        &self,
        auth_: BearerToken,
        rid: AttachmentRid,
    ) -> impl Future<Output = Result<(), Error>> + Send;
    fn unarchive(
        &self,
        auth_: BearerToken,
        rid: AttachmentRid,
    ) -> impl Future<Output = Result<(), Error>> + Send;
}Expand description
The attachment service provides functionality for creating, updating, and archiving attachments uploaded to S3.
Required Associated Types§
Sourcetype GetContentBody: AsyncWriteBody<O> + 'static + Send
 
type GetContentBody: AsyncWriteBody<O> + 'static + Send
The body type returned by the get_content method.
Required Methods§
Sourcefn create(
    &self,
    auth_: BearerToken,
    request: CreateAttachmentRequest,
) -> impl Future<Output = Result<Attachment, Error>> + Send
 
fn create( &self, auth_: BearerToken, request: CreateAttachmentRequest, ) -> impl Future<Output = Result<Attachment, Error>> + Send
Create a new attachment. Assumes the file is already uploaded to S3 through the upload service.
Sourcefn get(
    &self,
    auth_: BearerToken,
    rid: AttachmentRid,
) -> impl Future<Output = Result<Attachment, Error>> + Send
 
fn get( &self, auth_: BearerToken, rid: AttachmentRid, ) -> impl Future<Output = Result<Attachment, Error>> + Send
Get an attachment by its RID.
Sourcefn get_batch(
    &self,
    auth_: BearerToken,
    request: GetAttachmentsRequest,
) -> impl Future<Output = Result<GetAttachmentsResponse, Error>> + Send
 
fn get_batch( &self, auth_: BearerToken, request: GetAttachmentsRequest, ) -> impl Future<Output = Result<GetAttachmentsResponse, Error>> + Send
Get a set of attachments by their RIDs.
Sourcefn get_content(
    &self,
    auth_: BearerToken,
    rid: AttachmentRid,
) -> impl Future<Output = Result<Self::GetContentBody, Error>> + Send
 
fn get_content( &self, auth_: BearerToken, rid: AttachmentRid, ) -> impl Future<Output = Result<Self::GetContentBody, Error>> + Send
Get the binary content of an attachment.
Sourcefn get_uri(
    &self,
    auth_: BearerToken,
    rid: AttachmentRid,
) -> impl Future<Output = Result<AttachmentUri, Error>> + Send
 
fn get_uri( &self, auth_: BearerToken, rid: AttachmentRid, ) -> impl Future<Output = Result<AttachmentUri, Error>> + Send
Get a pre-signed URI to download an attachment. The link expires in 1 minute.
Sourcefn update(
    &self,
    auth_: BearerToken,
    rid: AttachmentRid,
    request: UpdateAttachmentRequest,
) -> impl Future<Output = Result<Attachment, Error>> + Send
 
fn update( &self, auth_: BearerToken, rid: AttachmentRid, request: UpdateAttachmentRequest, ) -> impl Future<Output = Result<Attachment, Error>> + Send
Update an attachment. Only the fields that are set in the request will be updated.
Sourcefn archive(
    &self,
    auth_: BearerToken,
    rid: AttachmentRid,
) -> impl Future<Output = Result<(), Error>> + Send
 
fn archive( &self, auth_: BearerToken, rid: AttachmentRid, ) -> impl Future<Output = Result<(), Error>> + Send
Archive an attachment.
Sourcefn unarchive(
    &self,
    auth_: BearerToken,
    rid: AttachmentRid,
) -> impl Future<Output = Result<(), Error>> + Send
 
fn unarchive( &self, auth_: BearerToken, rid: AttachmentRid, ) -> impl Future<Output = Result<(), Error>> + Send
Unarchive an attachment.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.