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 "net/l2/config/ConfigAddress.h"
44#include "net/config/ConfigAddressBase.hpp"
45#include "net/config/ConfigAddressLocal.hpp"
46#include "net/config/ConfigAddressRemote.hpp"
47#include "net/config/ConfigAddressReverse.hpp"
48#include "net/config/ConfigSection.hpp"
50#ifndef DOXYGEN_SHOULD_SKIP_THIS
52#include "utils/PreserveErrno.h"
58 template <
template <
typename SocketAddress>
typename ConfigAddressType>
60 const std::string& addressOptionName,
61 const std::string& addressOptionDescription)
62 : Super(instance, addressOptionName, addressOptionDescription) {
68 CLI::TypeValidator<std::string>());
71 "Protocol service multiplexer",
75 template <
template <
typename SocketAddress>
typename ConfigAddressType>
77 SocketAddress* socketAddress =
new SocketAddress
(btAddressOpt->as<std::string>()
, psmOpt->as<uint16_t>()
);
83 template <
template <
typename SocketAddress>
typename ConfigAddressType>
91 template <
template <
typename SocketAddress>
typename ConfigAddressType>
96 ->default_val(btAddress)
103 template <
template <
typename SocketAddress>
typename ConfigAddressType>
108 template <
template <
typename SocketAddress>
typename ConfigAddressType>
115 Super::required(
psmOpt,
false);
120 template <
template <
typename SocketAddress>
typename ConfigAddressType>
122 return psmOpt->as<uint16_t>();
125 template <
template <
typename SocketAddress>
typename ConfigAddressType>
132 template <
template <
typename SocketAddress>
typename ConfigAddressType>
134 Super::required(
psmOpt, required);
SocketAddress(const std::string &btAddress, uint16_t psm)
std::string getBtAddress() const
ConfigAddress & setPsm(uint16_t psm)
ConfigAddress & setSocketAddress(const SocketAddress &socketAddress)
ConfigAddress & setBtAddress(const std::string &btAddress)
CLI::Option * btAddressOpt
ConfigAddress & setPsmRequired(bool required=true)
std::string getBtAddress() const
ConfigAddress & setBtAddressRequired(bool required=true)
SocketAddress * init() final
ConfigAddress(net::config::ConfigInstance *instance, const std::string &addressOptionName, const std::string &addressOptionDescription)