SNode.C
Loading...
Searching...
No Matches
net::in::stream::config::ConfigSocketClient Class Reference

#include <ConfigSocketClient.h>

Inheritance diagram for net::in::stream::config::ConfigSocketClient:
Collaboration diagram for net::in::stream::config::ConfigSocketClient:

Public Member Functions

ConfigSocketClientsetDisableNagleAlgorithm (bool disableNagleAlgorithm=true)
 
bool getDisableNagleAlgorithm () const
 
- Public Member Functions inherited from net::config::ConfigConnection
utils::Timeval getReadTimeout () const
 
ConfigConnectionsetReadTimeout (const utils::Timeval &newReadTimeoutSet)
 
utils::Timeval getWriteTimeout () const
 
ConfigConnectionsetWriteTimeout (const utils::Timeval &newWriteTimeoutSet)
 
std::size_t getReadBlockSize () const
 
ConfigConnectionsetReadBlockSize (std::size_t newReadBlockSize)
 
std::size_t getWriteBlockSize () const
 
ConfigConnectionsetWriteBlockSize (std::size_t newWriteBlockSize)
 
utils::Timeval getTerminateTimeout () const
 
ConfigConnectionsetTerminateTimeout (const utils::Timeval &newTerminateTimeout)
 
- Public Member Functions inherited from net::config::ConfigPhysicalSocketClient
ConfigPhysicalSocketClientsetReconnect (bool reconnect=true)
 
bool getReconnect () const
 
ConfigPhysicalSocketClientsetReconnectTime (double time)
 
double getReconnectTime () const
 
ConfigPhysicalSocketClientsetConnectTimeout (const utils::Timeval &connectTimeout)
 
utils::Timeval getConnectTimeout () const
 
- Public Member Functions inherited from net::config::ConfigPhysicalSocket
const std::map< int, std::map< int, const net::phy::PhysicalSocketOption > > & getSocketOptions ()
 
ConfigPhysicalSocketaddSocketOption (int optLevel, int optName, int optValue)
 
ConfigPhysicalSocketaddSocketOption (int optLevel, int optName, const std::string &optValue)
 
ConfigPhysicalSocketaddSocketOption (int optLevel, int optName, const std::vector< char > &optValue)
 
ConfigPhysicalSocketremoveSocketOption (int optLevel, int optName)
 
ConfigPhysicalSocketsetRetry (bool retry=true)
 
bool getRetry () const
 
ConfigPhysicalSocketsetRetryOnFatal (bool retry=true)
 
bool getRetryOnFatal () const
 
ConfigPhysicalSocketsetRetryTimeout (double sec)
 
double getRetryTimeout () const
 
ConfigPhysicalSocketsetRetryTries (unsigned int tries=0)
 
unsigned int getRetryTries () const
 
ConfigPhysicalSocketsetRetryBase (double base)
 
double getRetryBase () const
 
ConfigPhysicalSocketsetRetryLimit (unsigned int limit)
 
unsigned int getRetryLimit () const
 
ConfigPhysicalSocketsetRetryJitter (double percent)
 
double getRetryJitter () const
 

Protected Member Functions

 ConfigSocketClient (net::config::ConfigInstance *instance)
 
 ~ConfigSocketClient () override
 
- Protected Member Functions inherited from net::config::stream::ConfigSocketClient< net::in::config::ConfigAddress >
 ConfigSocketClient (net::config::ConfigInstance *instance)
 
- Protected Member Functions inherited from net::config::ConfigConnection
 ConfigConnection (ConfigInstance *instance)
 
- Protected Member Functions inherited from net::config::ConfigSection
 ConfigSection (ConfigInstance *instance, const std::string &name, const std::string &description)
 
 ConfigSection (const ConfigSection &)=delete
 
 ConfigSection (ConfigSection &&)=delete
 
ConfigSectionoperator= (const ConfigSection &)=delete
 
ConfigSectionoperator= (ConfigSection &&)=delete
 
CLI::Option * addOption (const std::string &name, const std::string &description)
 
CLI::Option * addOption (const std::string &name, const std::string &description, const std::string &typeName)
 
CLI::Option * addOption (const std::string &name, const std::string &description, const std::string &typeName, const CLI::Validator &additionalValidator)
 
template<typename ValueTypeT >
CLI::Option * addOption (const std::string &name, const std::string &description, const std::string &typeName, ValueTypeT defaultValue)
 
template<typename ValueTypeT >
CLI::Option * addOption (const std::string &name, const std::string &description, const std::string &typeName, ValueTypeT defaultValue, const CLI::Validator &additionalValidator)
 
CLI::Option * addFlag (const std::string &name, const std::string &description, const std::string &typeName)
 
CLI::Option * addFlag (const std::string &name, const std::string &description, const std::string &typeName, const CLI::Validator &additionalValidator)
 
template<typename ValueTypeT >
CLI::Option * addFlag (const std::string &name, const std::string &description, const std::string &typeName, ValueTypeT defaultValue)
 
template<typename ValueTypeT >
CLI::Option * addFlag (const std::string &name, const std::string &description, const std::string &typeName, ValueTypeT defaultValue, const CLI::Validator &additionalValidator)
 
CLI::Option * addFlagFunction (const std::string &name, const std::function< void()> &callback, const std::string &description, const std::string &typeName, const std::string &defaultValue)
 
CLI::Option * addFlagFunction (const std::string &name, const std::function< void()> &callback, const std::string &description, const std::string &typeName, const std::string &defaultValue, const CLI::Validator &validator)
 
void required (CLI::Option *opt, bool req=true)
 
bool required () const
 
template<typename ValueType >
CLI::Option * addOption (const std::string &name, const std::string &description, const std::string &typeName, ValueType defaultValue)
 
template<typename ValueType >
CLI::Option * addOption (const std::string &name, const std::string &description, const std::string &typeName, ValueType defaultValue, const CLI::Validator &additionalValidator)
 
template<typename ValueType >
CLI::Option * addFlag (const std::string &name, const std::string &description, const std::string &typeName, ValueType defaultValue)
 
template<typename ValueType >
CLI::Option * addFlag (const std::string &name, const std::string &description, const std::string &typeName, ValueType defaultValue, const CLI::Validator &additionalValidator)
 
- Protected Member Functions inherited from net::config::ConfigPhysicalSocketClient
 ConfigPhysicalSocketClient (ConfigInstance *instance)
 
- Protected Member Functions inherited from net::config::ConfigPhysicalSocket
 ConfigPhysicalSocket (ConfigInstance *instance)
 
CLI::Option * addSocketOption (const std::string &name, int optLevel, int optName, const std::string &description, const std::string &typeName, const std::string &defaultValue, const CLI::Validator &validator)
 

Private Attributes

CLI::Option * disableNagleAlgorithmOpt = nullptr
 

Additional Inherited Members

- Public Types inherited from net::config::stream::ConfigSocketClient< net::in::config::ConfigAddress >
using Remote = net::in::config::ConfigAddress< net::config::ConfigAddressRemote >
 
using Local = net::in::config::ConfigAddress< net::config::ConfigAddressLocal >
 
- Public Types inherited from net::config::ConfigConnection
using Connection = ConfigConnection
 
- Public Types inherited from net::config::ConfigPhysicalSocketClient
using Socket = ConfigPhysicalSocketClient
 
- Protected Attributes inherited from net::config::ConfigSection
CLI::App * section = nullptr
 

Detailed Description

Definition at line 62 of file ConfigSocketClient.h.

Constructor & Destructor Documentation

◆ ConfigSocketClient()

net::in::stream::config::ConfigSocketClient::ConfigSocketClient ( net::config::ConfigInstance instance)
explicitprotected

Definition at line 78 of file ConfigSocketClient.cpp.

86
88 "--disable-nagle-algorithm{true}",
89 IPPROTO_TCP,
90 TCP_NODELAY,
91 "Turn of Nagle algorithm",
92 "tristat",
93 XSTR(IN_CLIENT_DISABLE_NAGLE_ALGORITHM),
94 CLI::IsMember({"true", "false", "default"}));
95 }
#define XSTR(s)
ConfigPhysicalSocket & addSocketOption(int optLevel, int optName, int optValue)
ConfigAddress & setPortRequired(bool required=true)
ConfigAddress & setAiSockType(int aiSocktype)
ConfigAddress & setHostRequired(bool required=true)
ConfigAddress & setAiProtocol(int aiProtocol)

References net::config::ConfigPhysicalSocket::addSocketOption(), net::config::stream::ConfigSocketClient< ConfigAddressLocalT, ConfigAddressRemoteT >::ConfigSocketClient(), disableNagleAlgorithmOpt, net::in::config::ConfigAddress< ConfigAddressTypeT >::setAiProtocol(), net::in::config::ConfigAddress< ConfigAddressTypeT >::setAiSockType(), net::in::config::ConfigAddress< ConfigAddressTypeT >::setHostRequired(), and net::in::config::ConfigAddress< ConfigAddressTypeT >::setPortRequired().

Here is the call graph for this function:

◆ ~ConfigSocketClient()

net::in::stream::config::ConfigSocketClient::~ConfigSocketClient ( )
overrideprotected

Definition at line 97 of file ConfigSocketClient.cpp.

97 {
98 }

Member Function Documentation

◆ getDisableNagleAlgorithm()

bool net::in::stream::config::ConfigSocketClient::getDisableNagleAlgorithm ( ) const

Definition at line 114 of file ConfigSocketClient.cpp.

114 {
115 return disableNagleAlgorithmOpt->as<bool>();
116 }

References disableNagleAlgorithmOpt.

◆ setDisableNagleAlgorithm()

ConfigSocketClient & net::in::stream::config::ConfigSocketClient::setDisableNagleAlgorithm ( bool  disableNagleAlgorithm = true)

Definition at line 100 of file ConfigSocketClient.cpp.

100 {
101 if (disableNagleAlgorithm) {
102 addSocketOption(IPPROTO_TCP, TCP_NODELAY, 1);
103 } else {
104 addSocketOption(IPPROTO_TCP, TCP_NODELAY, 0);
105 }
106
108 ->default_val(disableNagleAlgorithm ? "true" : "false")
109 ->clear();
110
111 return *this;
112 }

References net::config::ConfigPhysicalSocket::addSocketOption(), and disableNagleAlgorithmOpt.

Here is the call graph for this function:

Member Data Documentation

◆ disableNagleAlgorithmOpt

CLI::Option* net::in::stream::config::ConfigSocketClient::disableNagleAlgorithmOpt = nullptr
private

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