Red Hat Data Grid HotRod C++ Client  7.2.0
ConfigurationChildBuilder.h
Go to the documentation of this file.
1 #ifndef ISPN_HOTROD_CONFIGURATION_CONFIGURATIONCHILDBUILDER_H
2 #define ISPN_HOTROD_CONFIGURATION_CONFIGURATIONCHILDBUILDER_H
3 
4 
5 
6 #include <string>
8 #include "Configuration.h"
9 
10 namespace infinispan {
11 namespace hotrod {
12 
13 class ConfigurationBuilder;
14 class ConnectionPoolConfigurationBuilder;
15 class ServerConfigurationBuilder;
16 class SslConfigurationBuilder;
17 
19 {
20  public:
21  ConfigurationChildBuilder(ConfigurationBuilder &builder): m_builder(&builder) {}
22 
27  ServerConfigurationBuilder& addServer();
28 
34  ConfigurationBuilder& addServers(const std::string &servers);
35 
41  ConnectionPoolConfigurationBuilder& connectionPool();
42 
49  ConfigurationBuilder& connectionTimeout(int connectionTimeout);
50 
56  ConfigurationBuilder& forceReturnValues(bool forceReturnValues);
57 
64  ConfigurationBuilder& keySizeEstimate(int keySizeEstimate);
65 
73  ConfigurationBuilder& protocolVersion(const std::string &protocolVersion);
74 
81  ConfigurationBuilder& socketTimeout(int socketTimeout);
82 
89 
95  ConfigurationBuilder& tcpNoDelay(bool tcpNoDelay);
96 
103  ConfigurationBuilder& valueSizeEstimate(int valueSizeEstimate);
104 
111  ConfigurationBuilder& maxRetries(int maxRetries_);
112 
119 
120  Configuration build();
121 
122 private:
123  // in order to store this class in collections, operator= must work
124  ConfigurationBuilder *m_builder;
125 };
126 
127 }} // namespace
128 
129 #endif // ISPN_HOTROD_CONFIGURATION_CONFIGURATIONCHILDBUILDER_H
#define HR_EXTERN
Definition: ImportExport.h:35
Definition: ConnectionPoolConfigurationBuilder.h:15
Definition: SslConfigurationBuilder.h:12
Definition: AuthenticationConfiguration.h:10
Definition: ServerConfigurationBuilder.h:25
Definition: Configuration.h:28
FailOverRequestBalancingStrategy *(* ProducerFn)()
Definition: FailOverRequestBalancingStrategy.h:19
Definition: ConfigurationBuilder.h:111
Definition: ConfigurationChildBuilder.h:18
ConfigurationChildBuilder(ConfigurationBuilder &builder)
Definition: ConfigurationChildBuilder.h:21