diff options
Diffstat (limited to 'src/client/send.rs')
-rw-r--r-- | src/client/send.rs | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/src/client/send.rs b/src/client/send.rs index 161e130..204b77e 100644 --- a/src/client/send.rs +++ b/src/client/send.rs @@ -215,22 +215,19 @@ pub struct PacketIdentifierExhausted; pub(crate) struct ClientHandlers { pub(crate) on_packet_recv: OnPacketRecvFn, - pub(crate) handle_qos1_acknowledge: HandleQos1AcknowledgeFn, - // handle_qos2_receive: Box<dyn Fn(&crate::packets::MqttPacket) + Send>, - // handle_qos2_complete: Box<dyn Fn(&crate::packets::MqttPacket) + Send>, + pub(crate) on_qos1_acknowledge: OnQos1AcknowledgeFn, + // on_qos2_receive: Box<dyn Fn(crate::packets::MqttPacket) + Send>, + // on_qos2_complete: Box<dyn Fn(crate::packets::MqttPacket) + Send>, } -pub type OnPacketRecvFn = Box<dyn Fn(&crate::packets::MqttPacket) + Send>; -pub type HandleQos1AcknowledgeFn = Box< - dyn for<'p> Fn(&'p crate::packets::MqttPacket) -> futures::future::BoxFuture<'p, Acknowledge> - + Send, ->; +pub type OnPacketRecvFn = Box<dyn Fn(crate::packets::MqttPacket) + Send>; +pub type OnQos1AcknowledgeFn = Box<dyn Fn(crate::packets::Puback) + Send>; impl Default for ClientHandlers { fn default() -> Self { Self { on_packet_recv: Box::new(|_| ()), - handle_qos1_acknowledge: Box::new(|_| async move { Acknowledge::Yes }.boxed()), + on_qos1_acknowledge: Box::new(|_| ()), } } } @@ -301,7 +298,7 @@ impl Callbacks { } pub(crate) struct Qos1Callbacks { - pub(crate) on_acknowledge: futures::channel::oneshot::Sender<crate::packets::MqttPacket>, + pub(crate) on_acknowledge: futures::channel::oneshot::Sender<crate::packets::Puback>, } pub(crate) struct Qos2ReceiveCallback { @@ -344,7 +341,7 @@ enum PublishedReceiver { } pub struct PublishedQos1 { - recv: futures::channel::oneshot::Receiver<MqttPacket>, + recv: futures::channel::oneshot::Receiver<crate::packets::Puback>, } impl PublishedQos1 { |