pub struct SessionMetadata {
pub id: Uuid,
pub name: Option<String>,
pub description: Option<String>,
pub created_at: DateTime<Utc>,
pub user_preferences: UserPreferences,
}Expand description
Immutable session metadata
Wrapped in ArcSwap for rare updates without cloning entire session.
Fields§
§id: UuidUnique session identifier
name: Option<String>Human-readable session name
description: Option<String>Human-readable session description
created_at: DateTime<Utc>When the session was created
user_preferences: UserPreferencesUser-configurable session preferences
Implementations§
Source§impl SessionMetadata
impl SessionMetadata
Sourcepub fn new(
id: Uuid,
name: Option<String>,
description: Option<String>,
user_preferences: UserPreferences,
) -> SessionMetadata
pub fn new( id: Uuid, name: Option<String>, description: Option<String>, user_preferences: UserPreferences, ) -> SessionMetadata
Create new session metadata (uses current time as created_at).
Sourcepub fn with_created_at(
id: Uuid,
name: Option<String>,
description: Option<String>,
user_preferences: UserPreferences,
created_at: DateTime<Utc>,
) -> SessionMetadata
pub fn with_created_at( id: Uuid, name: Option<String>, description: Option<String>, user_preferences: UserPreferences, created_at: DateTime<Utc>, ) -> SessionMetadata
Rebuild session metadata while preserving an existing created_at.
Used by set_name/set_description/update_metadata so renames don’t lie
about when the session was actually created.
Trait Implementations§
Source§impl Clone for SessionMetadata
impl Clone for SessionMetadata
Source§fn clone(&self) -> SessionMetadata
fn clone(&self) -> SessionMetadata
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SessionMetadata
impl Debug for SessionMetadata
Source§impl<'de> Deserialize<'de> for SessionMetadata
impl<'de> Deserialize<'de> for SessionMetadata
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<SessionMetadata, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<SessionMetadata, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Serialize for SessionMetadata
impl Serialize for SessionMetadata
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
Auto Trait Implementations§
impl Freeze for SessionMetadata
impl RefUnwindSafe for SessionMetadata
impl Send for SessionMetadata
impl Sync for SessionMetadata
impl Unpin for SessionMetadata
impl UnsafeUnpin for SessionMetadata
impl UnwindSafe for SessionMetadata
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 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>
Wrap the input message
T in a tonic::RequestSource§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>
Wrap the input message
T in a tonic::RequestSource§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>
Wrap the input message
T in a tonic::Request