pub enum QueueWedgeError {
InsecureDevices {
user_device_map: BTreeMap<OwnedUserId, Vec<OwnedDeviceId>>,
},
IdentityViolations {
users: Vec<OwnedUserId>,
},
CrossVerificationRequired,
MissingMediaContent,
InvalidMimeType {
mime_type: String,
},
GenericApiError {
msg: String,
},
}
Expand description
Represents a failed to send unrecoverable error of an event sent via the send queue.
It is a serializable representation of a client error, see
From
implementation for more details. These errors can not be
automatically retried, but yet some manual action can be taken before retry
sending. If not the only solution is to delete the local event.
Variants§
InsecureDevices
This error occurs when there are some insecure devices in the room, and the current encryption setting prohibits sharing with them.
Fields
user_device_map: BTreeMap<OwnedUserId, Vec<OwnedDeviceId>>
The insecure devices as a Map of userID to deviceID.
IdentityViolations
This error occurs when a previously verified user is not anymore, and the current encryption setting prohibits sharing when it happens.
Fields
users: Vec<OwnedUserId>
The users that are expected to be verified but are not.
CrossVerificationRequired
It is required to set up cross-signing and properly verify the current session before sending.
MissingMediaContent
Media content was cached in the media store, but has disappeared before we could upload it.
InvalidMimeType
We tried to upload some media content with an unknown mime type.
GenericApiError
Other errors.
Trait Implementations§
Source§impl Clone for QueueWedgeError
impl Clone for QueueWedgeError
Source§fn clone(&self) -> QueueWedgeError
fn clone(&self) -> QueueWedgeError
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for QueueWedgeError
impl Debug for QueueWedgeError
Source§impl<'de> Deserialize<'de> for QueueWedgeError
impl<'de> Deserialize<'de> for QueueWedgeError
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Display for QueueWedgeError
impl Display for QueueWedgeError
Source§impl Error for QueueWedgeError
impl Error for QueueWedgeError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
Auto Trait Implementations§
impl Freeze for QueueWedgeError
impl RefUnwindSafe for QueueWedgeError
impl Send for QueueWedgeError
impl Sync for QueueWedgeError
impl Unpin for QueueWedgeError
impl UnwindSafe for QueueWedgeError
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,
§impl<T> CompatExt for T
impl<T> CompatExt for T
Source§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
Source§fn consume_handle(handle: Handle) -> Arc<T>
fn consume_handle(handle: Handle) -> Arc<T>
Arc<>
Source§impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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 more