pub struct SessionId { /* private fields */ }
Expand description
Session Identification URI. See the spec.
Implementations§
Source§impl SessionId
impl SessionId
Sourcepub fn new<D>(realm: impl Into<SharedString>, key: impl AsRef<[u8]>) -> Self
pub fn new<D>(realm: impl Into<SharedString>, key: impl AsRef<[u8]>) -> Self
Creates a new instance.
Sourcepub fn validate_with<D>(&self, realm: &str, key: impl AsRef<[u8]>) -> Validation
pub fn validate_with<D>(&self, realm: &str, key: impl AsRef<[u8]>) -> Validation
Validates the session identifier using the realm and the key.
Sourcepub fn accepts(&self, session_id: &SessionId) -> bool
pub fn accepts(&self, session_id: &SessionId) -> bool
Returns true
if the given SessionId
can be accepted by self
.
Sourcepub fn set_thread(&mut self, thread: u8)
pub fn set_thread(&mut self, thread: u8)
Sets the thread used to differentiate concurrent uses of the same session identifier.
Sourcepub fn increment_count(&mut self)
pub fn increment_count(&mut self)
Increments the count used to prevent replay attacks.
Sourcepub fn identifier(&self) -> &str
pub fn identifier(&self) -> &str
Returns the identifier as &str
.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for SessionId
impl<'de> Deserialize<'de> for SessionId
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 SessionId
impl RefUnwindSafe for SessionId
impl Send for SessionId
impl Sync for SessionId
impl Unpin for SessionId
impl UnwindSafe for SessionId
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 more