pub enum JmapErrorType {
Show 13 variants
NotJson,
NotRequest,
Limit,
UnknownCapability,
UnknownMethod,
InvalidArguments,
AccountNotFound,
AccountNotSupportedByMethod,
AccountReadOnly,
ServerFail,
ServerUnavailable,
ServerPartialFailure,
Forbidden,
}Expand description
JMAP error types as defined in RFC 8620 Section 3.6
Variants§
NotJson
The content type of the request was not “application/json” or the request did not parse as I-JSON.
NotRequest
The request parsed as JSON but did not match the structure defined in RFC 8620 Section 3.3.
Limit
The server has a limit on the number of calls in a single request
UnknownCapability
Unknown capability in “using” property
UnknownMethod
Unknown method
InvalidArguments
Invalid arguments to method
AccountNotFound
Account not found or does not support this data type
AccountNotSupportedByMethod
Account not supported by this method
AccountReadOnly
Account is read-only
ServerFail
Server error
Server is unavailable
ServerPartialFailure
Server has a hard limit on the number of objects
Forbidden
The authenticated principal is not permitted to access the requested account.
Per RFC 8620 §3.6 there is no top-level forbidden error code (the closest
standardized concept is the forbidden setError in §5.3); we use this
dedicated method-level error so that ownership-mismatch responses are
distinguishable from accountNotFound (which would also be RFC-defensible
because it does not reveal whether the foreign account exists).
Implementations§
Trait Implementations§
Source§impl Clone for JmapErrorType
impl Clone for JmapErrorType
Source§fn clone(&self) -> JmapErrorType
fn clone(&self) -> JmapErrorType
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for JmapErrorType
impl Debug for JmapErrorType
Source§impl PartialEq for JmapErrorType
impl PartialEq for JmapErrorType
Source§fn eq(&self, other: &JmapErrorType) -> bool
fn eq(&self, other: &JmapErrorType) -> bool
self and other values to be equal, and is used by ==.impl Eq for JmapErrorType
impl StructuralPartialEq for JmapErrorType
Auto Trait Implementations§
impl Freeze for JmapErrorType
impl RefUnwindSafe for JmapErrorType
impl Send for JmapErrorType
impl Sync for JmapErrorType
impl Unpin for JmapErrorType
impl UnsafeUnpin for JmapErrorType
impl UnwindSafe for JmapErrorType
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request