Session

Struct Session 

Source
pub struct Session { /* private fields */ }
Expand description

Represents a client and holds all of its data, may it be active or not. If the client is connected, peer is used to retrieve its information and send him packets.

Implementations§

Source§

impl Session

Source

pub fn new(client_id: &str, peer: Arc<Peer>, cache: Arc<Cache>) -> Self

Creates a new session, giving a peer and an id

Source

pub fn id(&self) -> &str

A unique ID that cannot be changed neither can collide with other instances of Session This ID is not part of MQTT specification but is used to ensure a new session can be created with a same client_id

Source

pub fn client_id(&self) -> &str

Returns the client_id of the session

Source

pub fn bind(&self, peer: Arc<Peer>)

Assign the session to another peer

Source

pub fn peer(&self) -> Option<Arc<Peer>>

Gets the currently bound peer as as owning pointer

Source

pub fn subs(&self) -> &RwLock<Subs>

Gets the subscriptions this session has

Trait Implementations§

Source§

impl Debug for Session

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V