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
47#ifndef DOXYGEN_SHOULD_SKIP_THIS
55 template <
typename ConcretConfigApplication>
57 : utils::SubCommand(parent, concretConfigApplication,
"Applications")
61 "--mqtt-mapping-file",
62 [
this](
const std::string& mappingFile) {
65 }
catch (std::runtime_error& e) {
66 throw CLI::ValidationError(
67 getName(), std::string(
"Activating mapping description in '" + mappingFile +
"' failed\nWhat: " + e.what()));
70 "MQTT mapping file (json format) for integration",
72 !CLI::ExistingDirectory))
75 "--mqtt-session-store",
76 "Path to file for the persistent session store",
78 !CLI::ExistingDirectory)) {
118 "HTML root directory",
120 CLI::ExistingDirectory)) {
134 std::string htmlRoot;
CLI::Option * sessionStoreOpt
std::string getMappingFilename() const
const std::shared_ptr< MqttMapper > getMqttMapper() const
bool setMappingFile(const std::string &mappingFile)
ConfigApplication & setSessionStore(const std::string &sessionStore)
ConfigApplication(utils::SubCommand *parent, ConcretConfigApplicationT *concretConfigApplication)
CLI::Option * mappingFileOpt
~ConfigApplication() override
std::shared_ptr< MqttMapper > mqttMapper
bool setMapping(const nlohmann::json &json)
std::string getSessionStore() const
ConfigMqttBroker & setHtmlRoot(const std::string &htmlRoot)
std::string getHtmlRoot()
CLI::Option * htmlRootOpt
ConfigMqttBroker(utils::SubCommand *parent)
~ConfigMqttBroker() override
~ConfigMqttIntegrator() override
ConfigMqttIntegrator(utils::SubCommand *parent)
static nlohmann::json readMappingFromFile(const std::string &mapFilePath)
bool setMapping(nlohmann::json mappingJson)