Package com.couchbase.client.core.env
Class IoConfig
- java.lang.Object
-
- com.couchbase.client.core.env.IoConfig
-
public class IoConfig extends Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
IoConfig.Builder
-
Field Summary
Fields Modifier and Type Field Description static Duration
DEFAULT_CONFIG_IDLE_REDIAL_TIMEOUT
static Duration
DEFAULT_CONFIG_POLL_INTERVAL
static boolean
DEFAULT_DNS_SRV_ENABLED
static Duration
DEFAULT_IDLE_HTTP_CONNECTION_TIMEOUT
static int
DEFAULT_MAX_HTTP_CONNECTIONS
static MemcachedHashingStrategy
DEFAULT_MEMCACHED_HASHING_STRATEGY
static boolean
DEFAULT_MUTATION_TOKENS_ENABLED
static NetworkResolution
DEFAULT_NETWORK_RESOLUTION
static int
DEFAULT_NUM_KV_CONNECTIONS
static boolean
DEFAULT_TCP_KEEPALIVE_ENABLED
static Duration
DEFAULT_TCP_KEEPALIVE_TIME
-
Method Summary
-
-
-
Field Detail
-
DEFAULT_MUTATION_TOKENS_ENABLED
public static final boolean DEFAULT_MUTATION_TOKENS_ENABLED
- See Also:
- Constant Field Values
-
DEFAULT_DNS_SRV_ENABLED
public static final boolean DEFAULT_DNS_SRV_ENABLED
- See Also:
- Constant Field Values
-
DEFAULT_TCP_KEEPALIVE_ENABLED
public static final boolean DEFAULT_TCP_KEEPALIVE_ENABLED
- See Also:
- Constant Field Values
-
DEFAULT_TCP_KEEPALIVE_TIME
public static final Duration DEFAULT_TCP_KEEPALIVE_TIME
-
DEFAULT_CONFIG_POLL_INTERVAL
public static final Duration DEFAULT_CONFIG_POLL_INTERVAL
-
DEFAULT_NETWORK_RESOLUTION
public static final NetworkResolution DEFAULT_NETWORK_RESOLUTION
-
DEFAULT_NUM_KV_CONNECTIONS
public static final int DEFAULT_NUM_KV_CONNECTIONS
- See Also:
- Constant Field Values
-
DEFAULT_MAX_HTTP_CONNECTIONS
public static final int DEFAULT_MAX_HTTP_CONNECTIONS
- See Also:
- Constant Field Values
-
DEFAULT_IDLE_HTTP_CONNECTION_TIMEOUT
public static final Duration DEFAULT_IDLE_HTTP_CONNECTION_TIMEOUT
-
DEFAULT_CONFIG_IDLE_REDIAL_TIMEOUT
public static final Duration DEFAULT_CONFIG_IDLE_REDIAL_TIMEOUT
-
DEFAULT_MEMCACHED_HASHING_STRATEGY
public static final MemcachedHashingStrategy DEFAULT_MEMCACHED_HASHING_STRATEGY
-
-
Method Detail
-
create
public static IoConfig create()
-
builder
public static IoConfig.Builder builder()
-
enableMutationTokens
public static IoConfig.Builder enableMutationTokens(boolean mutationTokensEnabled)
-
enableDnsSrv
public static IoConfig.Builder enableDnsSrv(boolean dnsSrvEnabled)
-
configPollInterval
public static IoConfig.Builder configPollInterval(Duration configPollInterval)
-
kvCircuitBreakerConfig
public static IoConfig.Builder kvCircuitBreakerConfig(CircuitBreakerConfig.Builder kvCircuitBreakerConfig)
-
queryCircuitBreakerConfig
public static IoConfig.Builder queryCircuitBreakerConfig(CircuitBreakerConfig.Builder queryCircuitBreakerConfig)
-
viewCircuitBreakerConfig
public static IoConfig.Builder viewCircuitBreakerConfig(CircuitBreakerConfig.Builder viewCircuitBreakerConfig)
-
searchCircuitBreakerConfig
public static IoConfig.Builder searchCircuitBreakerConfig(CircuitBreakerConfig.Builder searchCircuitBreakerConfig)
-
analyticsCircuitBreakerConfig
public static IoConfig.Builder analyticsCircuitBreakerConfig(CircuitBreakerConfig.Builder analyticsCircuitBreakerConfig)
-
managerCircuitBreakerConfig
public static IoConfig.Builder managerCircuitBreakerConfig(CircuitBreakerConfig.Builder managerCircuitBreakerConfig)
-
eventingCircuitBreakerConfig
public static IoConfig.Builder eventingCircuitBreakerConfig(CircuitBreakerConfig.Builder eventingCircuitBreakerConfig)
-
backupCircuitBreakerConfig
@Volatile public static IoConfig.Builder backupCircuitBreakerConfig(CircuitBreakerConfig.Builder backupCircuitBreakerConfig)
-
captureTraffic
public static IoConfig.Builder captureTraffic(ServiceType... serviceTypes)
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
public static IoConfig.Builder networkResolution(NetworkResolution networkResolution)
-
enableTcpKeepAlives
public static IoConfig.Builder enableTcpKeepAlives(boolean tcpKeepAliveEnabled)
-
tcpKeepAliveTime
public static IoConfig.Builder tcpKeepAliveTime(Duration tcpKeepAliveTime)
-
numKvConnections
public static IoConfig.Builder numKvConnections(int numKvConnections)
-
maxHttpConnections
public static IoConfig.Builder maxHttpConnections(int maxHttpConnections)
-
idleHttpConnectionTimeout
public static IoConfig.Builder idleHttpConnectionTimeout(Duration idleHttpConnectionTimeout)
-
configIdleRedialTimeout
public static IoConfig.Builder configIdleRedialTimeout(Duration configIdleRedialTimeout)
-
memcachedHashingStrategy
public static IoConfig.Builder memcachedHashingStrategy(MemcachedHashingStrategy 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.
-
kvCircuitBreakerConfig
public CircuitBreakerConfig kvCircuitBreakerConfig()
-
queryCircuitBreakerConfig
public CircuitBreakerConfig queryCircuitBreakerConfig()
-
viewCircuitBreakerConfig
public CircuitBreakerConfig viewCircuitBreakerConfig()
-
searchCircuitBreakerConfig
public CircuitBreakerConfig searchCircuitBreakerConfig()
-
analyticsCircuitBreakerConfig
public CircuitBreakerConfig analyticsCircuitBreakerConfig()
-
managerCircuitBreakerConfig
public CircuitBreakerConfig managerCircuitBreakerConfig()
-
eventingCircuitBreakerConfig
public CircuitBreakerConfig eventingCircuitBreakerConfig()
-
backupCircuitBreakerConfig
@Volatile public CircuitBreakerConfig backupCircuitBreakerConfig()
-
mutationTokensEnabled
public boolean mutationTokensEnabled()
-
dnsSrvEnabled
public boolean dnsSrvEnabled()
-
configPollInterval
public Duration configPollInterval()
-
servicesToCapture
public Set<ServiceType> servicesToCapture()
Lists the services on which traffic should be captured.- Returns:
- the services to capture traffic from, if present.
-
networkResolution
public NetworkResolution networkResolution()
-
tcpKeepAlivesEnabled
public boolean tcpKeepAlivesEnabled()
-
tcpKeepAliveTime
public Duration tcpKeepAliveTime()
-
numKvConnections
public int numKvConnections()
-
maxHttpConnections
public int maxHttpConnections()
-
idleHttpConnectionTimeout
public Duration idleHttpConnectionTimeout()
-
configIdleRedialTimeout
public Duration configIdleRedialTimeout()
-
memcachedHashingStrategy
public MemcachedHashingStrategy memcachedHashingStrategy()
-
-