MQTTSuite
Loading...
Searching...
No Matches
mqtt::mqttcli::lib::ConfigPublish Class Reference

#include <ConfigSections.h>

Inheritance diagram for mqtt::mqttcli::lib::ConfigPublish:
Collaboration diagram for mqtt::mqttcli::lib::ConfigPublish:

Public Member Functions

 ConfigPublish (utils::SubCommand *parent)
 ~ConfigPublish () override
std::string getTopic () const
const ConfigPublishsetTopic (const std::string &topic)
std::string getMessage () const
const ConfigPublishsetMessage (const std::string &message)
bool getRetain () const
const ConfigPublishsetRetain (bool retain)

Static Public Attributes

static constexpr std::string_view NAME {"pub"}
static constexpr std::string_view DESCRIPTION {"Configuration for application mqttpub"}

Private Attributes

CLI::Option * topicOpt
CLI::Option * messageOpt
CLI::Option * retainOpt

Detailed Description

Definition at line 74 of file ConfigSections.h.

Constructor & Destructor Documentation

◆ ConfigPublish()

mqtt::mqttcli::lib::ConfigPublish::ConfigPublish ( utils::SubCommand * parent)

Definition at line 77 of file ConfigSections.cpp.

78 : utils::SubCommand(parent, this, "Applications (at least one required)")
79 , topicOpt( //
80 setConfigurable(addOption("--topic", "List of topics subscribing to", "string", CLI::TypeValidator<std::string>()), true))
81 , messageOpt( //
82 setConfigurable(addOption("--message", "Message to be published", "string", CLI::TypeValidator<std::string>()), true))
83 , retainOpt( //
84 setConfigurable(addFlag("--retain{true}", "Message retain", "bool", "false", CLI::IsMember({"true", "false"})), true)) {
85 required(messageOpt);
86 required(topicOpt);
87
88 required(false, true);
89 }

References messageOpt, retainOpt, and topicOpt.

◆ ~ConfigPublish()

mqtt::mqttcli::lib::ConfigPublish::~ConfigPublish ( )
overridedefault

Member Function Documentation

◆ getMessage()

std::string mqtt::mqttcli::lib::ConfigPublish::getMessage ( ) const

Definition at line 103 of file ConfigSections.cpp.

103 {
104 return messageOpt->as<std::string>();
105 }

References messageOpt.

Referenced by mqtt::mqttcli::SocketContextFactory::create().

Here is the caller graph for this function:

◆ getRetain()

bool mqtt::mqttcli::lib::ConfigPublish::getRetain ( ) const

Definition at line 113 of file ConfigSections.cpp.

113 {
114 return retainOpt->as<bool>();
115 }

References retainOpt.

Referenced by mqtt::mqttcli::SocketContextFactory::create().

Here is the caller graph for this function:

◆ getTopic()

std::string mqtt::mqttcli::lib::ConfigPublish::getTopic ( ) const

Definition at line 93 of file ConfigSections.cpp.

93 {
94 return topicOpt->as<std::string>();
95 }

References topicOpt.

Referenced by mqtt::mqttcli::SocketContextFactory::create(), and createConfig().

Here is the caller graph for this function:

◆ setMessage()

const ConfigPublish & mqtt::mqttcli::lib::ConfigPublish::setMessage ( const std::string & message)

Definition at line 107 of file ConfigSections.cpp.

107 {
108 messageOpt->default_val(message);
109
110 return *this;
111 }

References messageOpt.

◆ setRetain()

const ConfigPublish & mqtt::mqttcli::lib::ConfigPublish::setRetain ( bool retain)

Definition at line 117 of file ConfigSections.cpp.

117 {
118 retainOpt->default_val(retain);
119
120 return *this;
121 }

References retainOpt.

◆ setTopic()

const ConfigPublish & mqtt::mqttcli::lib::ConfigPublish::setTopic ( const std::string & topic)

Definition at line 97 of file ConfigSections.cpp.

97 {
98 topicOpt->default_val(topic);
99
100 return *this;
101 }

References topicOpt.

Member Data Documentation

◆ DESCRIPTION

std::string_view mqtt::mqttcli::lib::ConfigPublish::DESCRIPTION {"Configuration for application mqttpub"}
staticconstexpr

Definition at line 77 of file ConfigSections.h.

77{"Configuration for application mqttpub"};

◆ messageOpt

CLI::Option* mqtt::mqttcli::lib::ConfigPublish::messageOpt
private

Definition at line 94 of file ConfigSections.h.

Referenced by ConfigPublish(), getMessage(), and setMessage().

◆ NAME

std::string_view mqtt::mqttcli::lib::ConfigPublish::NAME {"pub"}
staticconstexpr

Definition at line 76 of file ConfigSections.h.

76{"pub"};

◆ retainOpt

CLI::Option* mqtt::mqttcli::lib::ConfigPublish::retainOpt
private

Definition at line 95 of file ConfigSections.h.

Referenced by ConfigPublish(), getRetain(), and setRetain().

◆ topicOpt

CLI::Option* mqtt::mqttcli::lib::ConfigPublish::topicOpt
private

Definition at line 93 of file ConfigSections.h.

Referenced by ConfigPublish(), getTopic(), and setTopic().


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