2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
42#include "lib/Bridge.h"
45#include "lib/SSEDistributor.h"
47#include <core/socket/stream/SocketConnection.h>
48#include <iot/mqtt/MqttContext.h>
49#include <iot/mqtt/packets/Publish.h>
51#ifndef DOXYGEN_SHOULD_SKIP_THIS
61 Bridge::
Bridge(
const std::string& name,
const std::string& prefix,
bool disabled)
74 brokerMap.emplace(fullInstanceName, std::move(broker));
78 return &
brokerMap.find(fullInstanceName)->second;
89 mqtt->getMqttContext()->getSocketConnection()->getInstanceName()
);
100 mqtt->getMqttContext()->getSocketConnection()->getInstanceName()
);
109 if (originMqtt != destinationMqtt) {
110 destinationMqtt->sendPublish(
prefix
113 + publish.getTopic(),
114 publish.getMessage(),
116 publish.getRetain());
Broker * getBroker(const std::string &fullInstanceName)
void addMqtt(mqtt::bridge::lib::Mqtt *mqtt)
const std::string & getName() const
const std::list< const mqtt::bridge::lib::Mqtt * > & getMqttList() const
const std::map< const std::string, Broker > & getBrokerMap() const
void publish(const mqtt::bridge::lib::Mqtt *originMqtt, const iot::mqtt::packets::Publish &publish)
bool operator<(const Bridge &rhs) const
void addBroker(const std::string &fullInstanceName, Broker &&broker)
std::size_t enabledBroker
std::list< const mqtt::bridge::lib::Mqtt * > mqttList
bool getAllConnected1() const
Bridge(const std::string &name, const std::string &prefix, bool disabled)
std::map< const std::string, Broker > brokerMap
void removeMqtt(mqtt::bridge::lib::Mqtt *mqtt)
const std::string & getPrefix() const
const std::string & getPrefix() const
const Broker & getBroker() const
void bridgeStopped(const std::string &bridgeName)
void brokerConnected(const std::string &bridgeName, const std::string &instanceName)
void bridgeStarted(const std::string &bridgeName)
static SSEDistributor & instance()
void brokerDisconnected(const std::string &bridgeName, const std::string &instanceName)