ClientEvent

Enum ClientEvent 

pub enum ClientEvent<'a> {
    Connected {
        session_present: bool,
        capabilities: ServerCapabilities,
    },
    MessageReceived {
        topic: Option<&'a Topic>,
        payload: &'a [u8],
        qos: QoS,
        retain: bool,
    },
    PublishAcked {
        packet_id: PacketId,
        reason_code: ReasonCode,
    },
    PublishComplete {
        packet_id: PacketId,
        reason_code: ReasonCode,
    },
    SubscribeAcked {
        packet_id: PacketId,
        reason_codes: &'a [u8],
    },
    UnsubscribeAcked {
        packet_id: PacketId,
        reason_codes: &'a [u8],
    },
    Disconnected {
        reason_code: ReasonCode,
    },
    PingResponse,
}
Expand description

Events produced by the client state machine for the application layer.

Variants§

§

Connected

Connection established successfully.

Fields

§session_present: bool

Whether the server had existing session state.

§capabilities: ServerCapabilities

Server-advertised capabilities from CONNACK properties.

§

MessageReceived

An application message was received (server → client PUBLISH).

Fields

§topic: Option<&'a Topic>

Topic name, or None if resolved via topic alias.

§payload: &'a [u8]

Application message payload.

§qos: QoS

Quality of Service level.

§retain: bool

Retain flag.

§

PublishAcked

A QoS 1 publish was acknowledged (PUBACK received).

Fields

§packet_id: PacketId

Packet identifier of the acknowledged publish.

§reason_code: ReasonCode

Reason code from the PUBACK.

§

PublishComplete

A QoS 2 publish flow completed (PUBCOMP received, or PUBREC with error reason code).

Fields

§packet_id: PacketId

Packet identifier of the completed publish.

§reason_code: ReasonCode

Reason code from the final acknowledgement.

§

SubscribeAcked

SUBACK received.

Fields

§packet_id: PacketId

Packet identifier of the SUBSCRIBE.

§reason_codes: &'a [u8]

One reason code per requested subscription.

§

UnsubscribeAcked

UNSUBACK received.

Fields

§packet_id: PacketId

Packet identifier of the UNSUBSCRIBE.

§reason_codes: &'a [u8]

One reason code per requested unsubscription.

§

Disconnected

Server sent DISCONNECT.

Fields

§reason_code: ReasonCode

Reason code from the DISCONNECT packet.

§

PingResponse

PINGRESP received.

Trait Implementations§

§

impl<'a> Debug for ClientEvent<'a>

§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<'a> Freeze for ClientEvent<'a>

§

impl<'a> RefUnwindSafe for ClientEvent<'a>

§

impl<'a> Send for ClientEvent<'a>

§

impl<'a> Sync for ClientEvent<'a>

§

impl<'a> Unpin for ClientEvent<'a>

§

impl<'a> UnwindSafe for ClientEvent<'a>

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.