#include <MqttMapper.h>
Public Member Functions | |
| MqttMapper (const nlohmann::json &mappingJson) | |
| MqttMapper (const MqttMapper &)=delete | |
| MqttMapper & | operator= (const MqttMapper &)=delete |
| virtual | ~MqttMapper () |
Protected Member Functions | |
| std::string | dump () |
| std::list< iot::mqtt::Topic > | extractSubscriptions () |
| void | publishMappings (const iot::mqtt::packets::Publish &publish) |
Private Member Functions | |
| virtual void | publishMapping (const std::string &topic, const std::string &message, uint8_t qoS, bool retain)=0 |
| nlohmann::json | findMatchingTopicLevel (const nlohmann::json &topicLevel, const std::string &topic) |
| void | publishMappedTemplate (const nlohmann::json &templateMapping, nlohmann::json &json) |
| void | publishMappedTemplates (const nlohmann::json &templateMapping, nlohmann::json &json, const iot::mqtt::packets::Publish &publish) |
| void | publishMappedMessage (const std::string &topic, const std::string &message, uint8_t qoS, bool retain) |
| void | publishMappedMessage (const nlohmann::json &staticMapping, const iot::mqtt::packets::Publish &publish) |
| void | publishMappedMessages (const nlohmann::json &staticMapping, const iot::mqtt::packets::Publish &publish) |
Static Private Member Functions | |
| static void | extractSubscription (const nlohmann::json &topicLevelJson, const std::string &topic, std::list< iot::mqtt::Topic > &topicList) |
| static void | extractSubscriptions (const nlohmann::json &mappingJson, const std::string &topic, std::list< iot::mqtt::Topic > &topicList) |
Private Attributes | |
| const nlohmann::json & | mappingJson |
| std::list< void * > | pluginHandles |
| inja::Environment * | injaEnvironment |
Definition at line 67 of file MqttMapper.h.
| mqtt::lib::MqttMapper::MqttMapper | ( | const nlohmann::json & | mappingJson | ) |
Definition at line 82 of file MqttMapper.cpp.
References injaEnvironment, mappingJson, mqtt::lib::FunctionBase::name, mqtt::lib::FunctionBase::numArgs, and pluginHandles.
Referenced by mqtt::mqttbroker::lib::Mqtt::Mqtt(), and mqtt::mqttintegrator::lib::Mqtt::Mqtt().
|
delete |
|
virtual |
Definition at line 145 of file MqttMapper.cpp.
References injaEnvironment, and pluginHandles.
|
protected |
Definition at line 153 of file MqttMapper.cpp.
References mappingJson.
|
staticprivate |
Definition at line 221 of file MqttMapper.cpp.
References extractSubscriptions().
Referenced by extractSubscriptions().
|
protected |
Definition at line 157 of file MqttMapper.cpp.
References extractSubscriptions(), and mappingJson.
Referenced by mqtt::mqttintegrator::lib::Mqtt::onConnack().
|
staticprivate |
Definition at line 238 of file MqttMapper.cpp.
References extractSubscription().
Referenced by extractSubscription(), and extractSubscriptions().
|
private |
Definition at line 250 of file MqttMapper.cpp.
References findMatchingTopicLevel().
Referenced by findMatchingTopicLevel(), and publishMappings().
|
delete |
|
private |
Definition at line 367 of file MqttMapper.cpp.
References publishMappedMessage().
Referenced by publishMappedMessages().
|
private |
Definition at line 353 of file MqttMapper.cpp.
References publishMapping().
Referenced by publishMappedMessage().
|
private |
Definition at line 396 of file MqttMapper.cpp.
References publishMappedMessage().
Referenced by publishMappings().
|
private |
Definition at line 277 of file MqttMapper.cpp.
References inja::SourceLocation::column, injaEnvironment, inja::SourceLocation::line, inja::InjaError::location, inja::InjaError::message, publishMapping(), and inja::InjaError::type.
Referenced by publishMappedTemplates().
|
private |
Definition at line 330 of file MqttMapper.cpp.
References publishMappedTemplate().
Referenced by publishMappings().
|
privatepure virtual |
Implemented in mqtt::mqttbroker::lib::Mqtt, and mqtt::mqttintegrator::lib::Mqtt.
Referenced by publishMappedMessage(), and publishMappedTemplate().
|
protected |
Definition at line 165 of file MqttMapper.cpp.
References findMatchingTopicLevel(), mappingJson, publishMappedMessages(), and publishMappedTemplates().
Referenced by mqtt::mqttbroker::lib::Mqtt::onPublish(), mqtt::mqttintegrator::lib::Mqtt::onPublish(), and mqtt::mqttbroker::lib::Mqtt::publishMapping().
|
private |
Definition at line 103 of file MqttMapper.h.
Referenced by MqttMapper(), publishMappedTemplate(), and ~MqttMapper().
|
private |
Definition at line 99 of file MqttMapper.h.
Referenced by dump(), extractSubscriptions(), MqttMapper(), and publishMappings().
|
private |
Definition at line 101 of file MqttMapper.h.
Referenced by MqttMapper(), and ~MqttMapper().