pub struct PickledOutboundGroupSession {
pub pickle: GroupSessionPickle,
pub settings: Arc<EncryptionSettings>,
pub room_id: OwnedRoomId,
pub creation_time: SecondsSinceUnixEpoch,
pub message_count: u64,
pub shared: bool,
pub invalidated: bool,
pub shared_with_set: BTreeMap<OwnedUserId, BTreeMap<OwnedDeviceId, ShareInfo>>,
pub requests: BTreeMap<OwnedTransactionId, (Arc<ToDeviceRequest>, BTreeMap<OwnedUserId, BTreeMap<OwnedDeviceId, ShareInfo>>)>,
}
Expand description
A pickled version of an InboundGroupSession
.
Holds all the information that needs to be stored in a database to restore an InboundGroupSession.
Fields§
§pickle: GroupSessionPickle
The pickle string holding the OutboundGroupSession.
settings: Arc<EncryptionSettings>
The settings this session adheres to.
room_id: OwnedRoomId
The room id this session is used for.
creation_time: SecondsSinceUnixEpoch
The timestamp when this session was created.
message_count: u64
The number of messages this session has already encrypted.
Is the session shared.
invalidated: bool
Has the session been invalidated.
The set of users the session has been already shared with.
requests: BTreeMap<OwnedTransactionId, (Arc<ToDeviceRequest>, BTreeMap<OwnedUserId, BTreeMap<OwnedDeviceId, ShareInfo>>)>
Requests that need to be sent out to share the session.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for PickledOutboundGroupSession
impl<'de> Deserialize<'de> for PickledOutboundGroupSession
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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for PickledOutboundGroupSession
impl RefUnwindSafe for PickledOutboundGroupSession
impl Send for PickledOutboundGroupSession
impl Sync for PickledOutboundGroupSession
impl Unpin for PickledOutboundGroupSession
impl UnwindSafe for PickledOutboundGroupSession
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
Mutably borrows from an owned value. Read more
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,
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>
Converts
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>
Converts
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