Infinispan HotRod C++ Client  9.1.0.Final
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 
72  ConfigurationBuilder& protocolVersion(const std::string &protocolVersion);
73 
80  ConfigurationBuilder& socketTimeout(int socketTimeout);
81 
88 
94  ConfigurationBuilder& tcpNoDelay(bool tcpNoDelay);
95 
102  ConfigurationBuilder& valueSizeEstimate(int valueSizeEstimate);
103 
110  ConfigurationBuilder& maxRetries(int maxRetries_);
111 
118 
119  Configuration build();
120 
121 private:
122  // in order to store this class in collections, operator= must work
123  ConfigurationBuilder *m_builder;
124 };
125 
126 }} // namespace
127 
128 #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