Class IoConfig.Builder
- Enclosing class:
- IoConfig
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionanalyticsCircuitBreakerConfig
(CircuitBreakerConfig.Builder analyticsCircuitBreakerConfig) Configures aCircuitBreaker
to use for analytics operations.backupCircuitBreakerConfig
(CircuitBreakerConfig.Builder backupCircuitBreakerConfig) Configures aCircuitBreaker
to use for backup operations.build()
captureTraffic
(ServiceType... serviceTypes) Captures the traffic for all services provided as an argument (all if empty).configIdleRedialTimeout
(Duration configIdleRedialTimeout) configPollInterval
(Duration configPollInterval) enableDnsSrv
(boolean dnsSrvEnabled) enableMutationTokens
(boolean mutationTokensEnabled) Configures whether mutation tokens will be returned from the server for all mutation operations.enableTcpKeepAlives
(boolean tcpKeepAlivesEnabled) eventingCircuitBreakerConfig
(CircuitBreakerConfig.Builder eventingCircuitBreakerConfig) Configures aCircuitBreaker
to use for eventing operations.idleHttpConnectionTimeout
(Duration idleHttpConnectionTimeout) kvCircuitBreakerConfig
(CircuitBreakerConfig.Builder kvCircuitBreakerConfig) Configures aCircuitBreaker
to use for key-value operations.managerCircuitBreakerConfig
(CircuitBreakerConfig.Builder managerCircuitBreakerConfig) Configures aCircuitBreaker
to use for manager operations.maxHttpConnections
(int maxHttpConnections) memcachedHashingStrategy
(MemcachedHashingStrategy memcachedHashingStrategy) Allows to customize the hashing strategy for memcached buckets.networkResolution
(NetworkResolution networkResolution) numKvConnections
(int numKvConnections) queryCircuitBreakerConfig
(CircuitBreakerConfig.Builder queryCircuitBreakerConfig) Configures aCircuitBreaker
to use for query operations.searchCircuitBreakerConfig
(CircuitBreakerConfig.Builder searchCircuitBreakerConfig) Configures aCircuitBreaker
to use for search operations.tcpKeepAliveTime
(Duration tcpKeepAliveTime) Allows to customize the idle time after which a tcp keepalive gets fired.viewCircuitBreakerConfig
(CircuitBreakerConfig.Builder viewCircuitBreakerConfig) Configures aCircuitBreaker
to use for view operations.
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
build
-
configPollInterval
-
enableMutationTokens
Configures whether mutation tokens will be returned from the server for all mutation operations.- Returns:
- this, for chaining
-
enableDnsSrv
-
enableTcpKeepAlives
-
tcpKeepAliveTime
Allows to customize the idle time after which a tcp keepalive gets fired.Please note that this setting only propagates to the OS on linux when the epoll transport is used. On all other platforms, the OS-configured time is used (and you need to tune it there if you want to customize the default behavior).
- Parameters:
tcpKeepAliveTime
- the custom keepalive time.- Returns:
- this builder for chaining purposes.
-
kvCircuitBreakerConfig
Configures aCircuitBreaker
to use for key-value operations.- Returns:
- this, for chaining
-
kvCircuitBreakerConfig
-
queryCircuitBreakerConfig
public IoConfig.Builder queryCircuitBreakerConfig(CircuitBreakerConfig.Builder queryCircuitBreakerConfig) Configures aCircuitBreaker
to use for query operations.- Returns:
- this, for chaining
-
queryCircuitBreakerConfig
-
viewCircuitBreakerConfig
public IoConfig.Builder viewCircuitBreakerConfig(CircuitBreakerConfig.Builder viewCircuitBreakerConfig) Configures aCircuitBreaker
to use for view operations.- Returns:
- this, for chaining
-
viewCircuitBreakerConfig
-
searchCircuitBreakerConfig
public IoConfig.Builder searchCircuitBreakerConfig(CircuitBreakerConfig.Builder searchCircuitBreakerConfig) Configures aCircuitBreaker
to use for search operations.- Returns:
- this, for chaining
-
searchCircuitBreakerConfig
-
analyticsCircuitBreakerConfig
public IoConfig.Builder analyticsCircuitBreakerConfig(CircuitBreakerConfig.Builder analyticsCircuitBreakerConfig) Configures aCircuitBreaker
to use for analytics operations.- Returns:
- this, for chaining
-
analyticsCircuitBreakerConfig
-
managerCircuitBreakerConfig
public IoConfig.Builder managerCircuitBreakerConfig(CircuitBreakerConfig.Builder managerCircuitBreakerConfig) Configures aCircuitBreaker
to use for manager operations.- Returns:
- this, for chaining
-
managerCircuitBreakerConfig
-
eventingCircuitBreakerConfig
public IoConfig.Builder eventingCircuitBreakerConfig(CircuitBreakerConfig.Builder eventingCircuitBreakerConfig) Configures aCircuitBreaker
to use for eventing operations.- Returns:
- this, for chaining
-
eventingCircuitBreakerConfig
-
backupCircuitBreakerConfig
@Volatile public IoConfig.Builder backupCircuitBreakerConfig(CircuitBreakerConfig.Builder backupCircuitBreakerConfig) Configures aCircuitBreaker
to use for backup operations.- Returns:
- this, for chaining
-
backupCircuitBreakerConfig
-
captureTraffic
Captures the traffic for all services provided as an argument (all if empty).IMPORTANT: It is not enough to just enable traffic capturing, also TRACE level logging needs to be enabled for the couchbase namespace in your logger implementation.
Note that this flag should only be enabled during development and for debugging purposes. When enabled it will add more overhead due to traffic parsing, logging and analysis.
- Returns:
- this
IoConfig.Builder
for chaining purposes.
-
networkResolution
-
numKvConnections
-
maxHttpConnections
-
idleHttpConnectionTimeout
-
configIdleRedialTimeout
-
memcachedHashingStrategy
Allows to customize the hashing strategy for memcached buckets.Usually the
MemcachedHashingStrategy
should only be customized if i.e. the SDK is upgraded from Java SDK 2 and the documents in the bucket must be preserved. In this case, theSdk2CompatibleMemcachedHashingStrategy
must be chosen. If it is used though, keep in mind that it is not compatible with other SDKs, so we always recommend to use the defaultStandardMemcachedHashingStrategy
by default.- Parameters:
memcachedHashingStrategy
- the strategy to use.- Returns:
- this
IoConfig.Builder
for chaining purposes.
-