MQTTSuite
Loading...
Searching...
No Matches
mqtt::mqttbroker::lib::Mqtt Class Reference

#include <Mqtt.h>

Inheritance diagram for mqtt::mqttbroker::lib::Mqtt:
Collaboration diagram for mqtt::mqttbroker::lib::Mqtt:

Public Member Functions

 Mqtt (const std::string &connectionName, const std::shared_ptr< iot::mqtt::server::broker::Broker > &broker, const nlohmann::json &mappingJson)
Public Member Functions inherited from mqtt::lib::MqttMapper
 MqttMapper (const nlohmann::json &mappingJson)
 MqttMapper (const MqttMapper &)=delete
MqttMapperoperator= (const MqttMapper &)=delete
virtual ~MqttMapper ()

Private Member Functions

void onConnect (const iot::mqtt::packets::Connect &connect) final
void onPublish (const iot::mqtt::packets::Publish &publish) final
void onDisconnected () final
void publishMapping (const std::string &topic, const std::string &message, uint8_t qoS, bool retain) final

Additional Inherited Members

Protected Member Functions inherited from mqtt::lib::MqttMapper
std::string dump ()
std::list< iot::mqtt::Topic > extractSubscriptions ()
void publishMappings (const iot::mqtt::packets::Publish &publish)

Detailed Description

Definition at line 63 of file Mqtt.h.

Constructor & Destructor Documentation

◆ Mqtt()

mqtt::mqttbroker::lib::Mqtt::Mqtt ( const std::string & connectionName,
const std::shared_ptr< iot::mqtt::server::broker::Broker > & broker,
const nlohmann::json & mappingJson )
explicit

Definition at line 57 of file Mqtt.cpp.

60 : iot::mqtt::server::Mqtt(connectionName, broker)
61 , mqtt::lib::MqttMapper(mappingJson) {
62 }
const nlohmann::json & mappingJson
Definition MqttMapper.h:99

References mqtt::lib::MqttMapper::MqttMapper().

Here is the call graph for this function:

Member Function Documentation

◆ onConnect()

void mqtt::mqttbroker::lib::Mqtt::onConnect ( const iot::mqtt::packets::Connect & connect)
finalprivate

Definition at line 64 of file Mqtt.cpp.

64 {
65 VLOG(1) << "MQTT: Connected";
66
67 MqttModel::instance().addClient(clientId, this);
68 }
void addClient(const std::string &clientId, Mqtt *mqtt)
static MqttModel & instance()
Definition MqttModel.cpp:76

References mqtt::mqttbroker::lib::MqttModel::addClient(), and mqtt::mqttbroker::lib::MqttModel::instance().

Here is the call graph for this function:

◆ onDisconnected()

void mqtt::mqttbroker::lib::Mqtt::onDisconnected ( )
finalprivate

Definition at line 76 of file Mqtt.cpp.

76 {
78
79 VLOG(1) << "MQTT: Disconnected";
80 }
void delClient(const std::string &clientId)

References mqtt::mqttbroker::lib::MqttModel::delClient(), and mqtt::mqttbroker::lib::MqttModel::instance().

Here is the call graph for this function:

◆ onPublish()

void mqtt::mqttbroker::lib::Mqtt::onPublish ( const iot::mqtt::packets::Publish & publish)
finalprivate

Definition at line 70 of file Mqtt.cpp.

70 {
72
73 publishMappings(publish);
74 }
void publishMappings(const iot::mqtt::packets::Publish &publish)
void publish(const iot::mqtt::packets::Publish &publish)

References mqtt::mqttbroker::lib::MqttModel::instance(), mqtt::mqttbroker::lib::MqttModel::publish(), and mqtt::lib::MqttMapper::publishMappings().

Here is the call graph for this function:

◆ publishMapping()

void mqtt::mqttbroker::lib::Mqtt::publishMapping ( const std::string & topic,
const std::string & message,
uint8_t qoS,
bool retain )
finalprivatevirtual

Implements mqtt::lib::MqttMapper.

Definition at line 82 of file Mqtt.cpp.

82 {
83 broker->publish(clientId, topic, message, qoS, retain);
84
85 publishMappings(iot::mqtt::packets::Publish(getPacketIdentifier(), topic, message, qoS, false, retain));
86 }

References mqtt::lib::MqttMapper::publishMappings().

Here is the call graph for this function:

The documentation for this class was generated from the following files: