[][src]Enum melib::backends::jmap::objects::email::import::ImportError

pub enum ImportError {
    AlreadyExists {
        description: Option<String>,
        existing_id: Id<EmailObject>,
    },
    InvalidProperties {
        description: Option<String>,
        properties: Vec<String>,
    },
    OverQuota {
        description: Option<String>,
    },
    InvalidEmail {
        description: Option<String>,
    },
    StateMismatch,
}

Variants

AlreadyExists

The server MAY forbid two Email objects with the same exact content [RFC5322], or even just with the same Message-ID [RFC5322], to coexist within an account. In this case, it MUST reject attempts to import an Email considered to be a duplicate with an "alreadyExists" SetError.

Fields of AlreadyExists

description: Option<String>existing_id: Id<EmailObject>

An "existingId" property of type "Id" MUST be included on the SetError object with the id of the existing Email. If duplicates are allowed, the newly created Email object MUST have a separate id and independent mutable properties to the existing object.

InvalidProperties

If the "blobId", "mailboxIds", or "keywords" properties are invalid (e.g., missing, wrong type, id not found), the server MUST reject the import with an "invalidProperties" SetError.

Fields of InvalidProperties

description: Option<String>properties: Vec<String>
OverQuota

If the Email cannot be imported because it would take the account over quota, the import should be rejected with an "overQuota" SetError.

Fields of OverQuota

description: Option<String>
InvalidEmail

If the blob referenced is not a valid message [RFC5322], the server MAY modify the message to fix errors (such as removing NUL octets or fixing invalid headers). If it does this, the "blobId" on the response MUST represent the new representation and therefore be different to the "blobId" on the EmailImport object. Alternatively, the server MAY reject the import with an "invalidEmail" SetError.

Fields of InvalidEmail

description: Option<String>
StateMismatch

An "ifInState" argument was supplied, and it does not match the current state.

Trait Implementations

impl Debug for ImportError[src]

impl<'de> Deserialize<'de> for ImportError[src]

impl Serialize for ImportError[src]

Auto Trait Implementations

impl RefUnwindSafe for ImportError

impl Send for ImportError

impl Sync for ImportError

impl Unpin for ImportError

impl UnwindSafe for ImportError

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 

impl<T> WithSubscriber for T[src]