Class ConnectionPoolConfigurationBuilder
- java.lang.Object
-
- org.infinispan.configuration.cache.AbstractPersistenceConfigurationChildBuilder
-
- org.infinispan.configuration.cache.AbstractStoreConfigurationChildBuilder<S>
-
- org.infinispan.persistence.remote.configuration.AbstractRemoteStoreConfigurationChildBuilder<RemoteStoreConfigurationBuilder>
-
- org.infinispan.persistence.remote.configuration.ConnectionPoolConfigurationBuilder
-
- All Implemented Interfaces:
BaseConfigurationInfo
,Builder<ConnectionPoolConfiguration>
,ConfigurationBuilderInfo
,ConfigurationChildBuilder
,PersistenceConfigurationChildBuilder
,StoreConfigurationChildBuilder<RemoteStoreConfigurationBuilder>
,RemoteStoreConfigurationChildBuilder<RemoteStoreConfigurationBuilder>
public class ConnectionPoolConfigurationBuilder extends AbstractRemoteStoreConfigurationChildBuilder<RemoteStoreConfigurationBuilder> implements Builder<ConnectionPoolConfiguration>, ConfigurationBuilderInfo
ConnectionPoolConfigurationBuilder. Specifies connection pooling properties for the HotRod client.- Since:
- 5.2
- Author:
- Tristan Tarrant
-
-
Field Summary
-
Fields inherited from class org.infinispan.persistence.remote.configuration.AbstractRemoteStoreConfigurationChildBuilder
attributes, builder
-
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description org.infinispan.commons.configuration.attributes.AttributeSet
attributes()
Configuration
build()
ClusteringConfigurationBuilder
clustering()
ConnectionPoolConfiguration
create()
Create the configuration beanCustomInterceptorsConfigurationBuilder
customInterceptors()
Deprecated.Since 10.0, custom interceptors support will be removed and only modules will be able to define interceptorsEncodingConfigurationBuilder
encoding()
ConnectionPoolConfigurationBuilder
exhaustedAction(ExhaustedAction exhaustedAction)
Specifies what happens when asking for a connection from a server's pool, and that pool is exhausted.ExpirationConfigurationBuilder
expiration()
protected ConfigurationBuilder
getBuilder()
org.infinispan.commons.configuration.elements.ElementDefinition
getElementDefinition()
IndexingConfigurationBuilder
indexing()
InvocationBatchingConfigurationBuilder
invocationBatching()
LockingConfigurationBuilder
locking()
ConnectionPoolConfigurationBuilder
maxActive(int maxActive)
Controls the maximum number of connections per server that are allocated (checked out to client threads, or idle in the pool) at one time.ConnectionPoolConfigurationBuilder
maxIdle(int maxIdle)
Deprecated.since 10.0.ConnectionPoolConfigurationBuilder
maxPendingRequests(int maxPendingRequests)
Specifies maximum number of requests sent over single connection at one instant.ConnectionPoolConfigurationBuilder
maxTotal(int maxTotal)
Deprecated.since 10.0.ConnectionPoolConfigurationBuilder
maxWait(int maxWait)
The amount of time in milliseconds to wait for a connection to become available when the exhausted action isExhaustedAction.WAIT
, after which aNoSuchElementException
will be thrown.MemoryConfigurationBuilder
memory()
ConnectionPoolConfigurationBuilder
minEvictableIdleTime(long minEvictableIdleTime)
Specifies the minimum amount of time that an connection may sit idle in the pool before it is eligible for eviction due to idle time.ConnectionPoolConfigurationBuilder
minIdle(int minIdle)
Sets a target value for the minimum number of idle connections (per server) that should always be available.PersistenceConfigurationBuilder
persistence()
ConnectionPoolConfigurationBuilder
read(ConnectionPoolConfiguration template)
Reads the configuration from an already created configuration bean into this builder.SecurityConfigurationBuilder
security()
boolean
simpleCache()
ConfigurationChildBuilder
simpleCache(boolean simpleCache)
SitesConfigurationBuilder
sites()
StatisticsConfigurationBuilder
statistics()
ConfigurationChildBuilder
template(boolean template)
ConnectionPoolConfigurationBuilder
testWhileIdle(boolean testWhileIdle)
Deprecated.since 10.0.ConnectionPoolConfigurationBuilder
timeBetweenEvictionRuns(long timeBetweenEvictionRuns)
Deprecated.since 10.0.TransactionConfigurationBuilder
transaction()
UnsafeConfigurationBuilder
unsafe()
void
validate()
Validate the data in this builder before building the configuration beanvoid
validate(GlobalConfiguration globalConfig)
-
Methods inherited from class org.infinispan.persistence.remote.configuration.AbstractRemoteStoreConfigurationChildBuilder
addServer, asyncExecutorFactory, balancingStrategy, connectionPool, connectionTimeout, forceReturnValues, getRemoteStoreBuilder, hotRodWrapping, keySizeEstimate, marshaller, marshaller, protocolVersion, rawValues, remoteCacheName, remoteSecurity, socketTimeout, tcpNoDelay, transportFactory, transportFactory, valueSizeEstimate
-
Methods inherited from class org.infinispan.configuration.cache.AbstractStoreConfigurationChildBuilder
addProperty, async, fetchPersistentState, ignoreModifications, maxBatchSize, preload, purgeOnStartup, segmented, shared, transactional, withProperties
-
Methods inherited from interface org.infinispan.commons.configuration.ConfigurationBuilderInfo
getBuilderInfo, getChildrenInfo, getNewBuilderInfo
-
Methods inherited from interface org.infinispan.configuration.cache.ConfigurationChildBuilder
build, clustering, customInterceptors, encoding, expiration, indexing, invocationBatching, jmxStatistics, locking, memory, security, simpleCache, simpleCache, sites, statistics, template, transaction, unsafe
-
Methods inherited from interface org.infinispan.configuration.cache.PersistenceConfigurationChildBuilder
persistence
-
Methods inherited from interface org.infinispan.configuration.cache.StoreConfigurationChildBuilder
addProperty, async, fetchPersistentState, ignoreModifications, maxBatchSize, preload, purgeOnStartup, segmented, shared, transactional, withProperties
-
-
-
-
Method Detail
-
attributes
public org.infinispan.commons.configuration.attributes.AttributeSet attributes()
- Specified by:
attributes
in interfaceBaseConfigurationInfo
- Returns:
- the
AttributeSet
declared by the configuration.
-
getElementDefinition
public org.infinispan.commons.configuration.elements.ElementDefinition getElementDefinition()
- Specified by:
getElementDefinition
in interfaceBaseConfigurationInfo
- Returns:
- the
ElementDefinition
of the configuration.
-
exhaustedAction
public ConnectionPoolConfigurationBuilder exhaustedAction(ExhaustedAction exhaustedAction)
Specifies what happens when asking for a connection from a server's pool, and that pool is exhausted.
-
maxActive
public ConnectionPoolConfigurationBuilder maxActive(int maxActive)
Controls the maximum number of connections per server that are allocated (checked out to client threads, or idle in the pool) at one time. When non-positive, there is no limit to the number of connections per server. When maxActive is reached, the connection pool for that server is said to be exhausted. The default setting for this parameter is -1, i.e. there is no limit.
-
maxTotal
@Deprecated public ConnectionPoolConfigurationBuilder maxTotal(int maxTotal)
Deprecated.since 10.0. This method has no effectSets a global limit on the number persistent connections that can be in circulation within the combined set of servers. When non-positive, there is no limit to the total number of persistent connections in circulation. When maxTotal is exceeded, all connections pools are exhausted. The default setting for this parameter is -1 (no limit).
-
maxIdle
@Deprecated public ConnectionPoolConfigurationBuilder maxIdle(int maxIdle)
Deprecated.since 10.0. This method has no effectControls the maximum number of idle persistent connections, per server, at any time. When negative, there is no limit to the number of connections that may be idle per server. The default setting for this parameter is -1.
-
maxWait
public ConnectionPoolConfigurationBuilder maxWait(int maxWait)
The amount of time in milliseconds to wait for a connection to become available when the exhausted action isExhaustedAction.WAIT
, after which aNoSuchElementException
will be thrown. If a negative value is supplied, the pool will block indefinitely.
-
minIdle
public ConnectionPoolConfigurationBuilder minIdle(int minIdle)
Sets a target value for the minimum number of idle connections (per server) that should always be available. If this parameter is set to a positive number and timeBetweenEvictionRunsMillis > 0, each time the idle connection eviction thread runs, it will try to create enough idle instances so that there will be minIdle idle instances available for each server. The default setting for this parameter is 1.
-
timeBetweenEvictionRuns
@Deprecated public ConnectionPoolConfigurationBuilder timeBetweenEvictionRuns(long timeBetweenEvictionRuns)
Deprecated.since 10.0. This method has no effectIndicates how long the eviction thread should sleep before "runs" of examining idle connections. When non-positive, no eviction thread will be launched. The default setting for this parameter is 2 minutes.
-
minEvictableIdleTime
public ConnectionPoolConfigurationBuilder minEvictableIdleTime(long minEvictableIdleTime)
Specifies the minimum amount of time that an connection may sit idle in the pool before it is eligible for eviction due to idle time. When non-positive, no connection will be dropped from the pool due to idle time alone. This setting has no effect unless timeBetweenEvictionRunsMillis > 0. The default setting for this parameter is 1800000(30 minutes).
-
testWhileIdle
@Deprecated public ConnectionPoolConfigurationBuilder testWhileIdle(boolean testWhileIdle)
Deprecated.since 10.0. This method has no effectIndicates whether or not idle connections should be validated by sending an TCP packet to the server, during idle connection eviction runs. Connections that fail to validate will be dropped from the pool. This setting has no effect unless timeBetweenEvictionRunsMillis > 0. The default setting for this parameter is true.
-
maxPendingRequests
public ConnectionPoolConfigurationBuilder maxPendingRequests(int maxPendingRequests)
Specifies maximum number of requests sent over single connection at one instant. Connections with more concurrent requests will be ignored in the pool when choosing available connection and the pool will try to create a new connection if all connections are utilized. Only if the new connection cannot be created and theexhausted action
is set toExhaustedAction.WAIT
the pool will allow sending the request over one of the over-utilized connections. The rule of thumb is that this should be set to higher values if the values are small (< 1kB) and to lower values if the entries are big (> 10kB). Default setting for this parameter is 5.
-
validate
public void validate()
Description copied from interface:Builder
Validate the data in this builder before building the configuration bean- Specified by:
validate
in interfaceBuilder<ConnectionPoolConfiguration>
-
validate
public void validate(GlobalConfiguration globalConfig)
- Specified by:
validate
in interfaceConfigurationChildBuilder
- Overrides:
validate
in classAbstractRemoteStoreConfigurationChildBuilder<RemoteStoreConfigurationBuilder>
-
create
public ConnectionPoolConfiguration create()
Description copied from interface:Builder
Create the configuration bean- Specified by:
create
in interfaceBuilder<ConnectionPoolConfiguration>
- Returns:
-
read
public ConnectionPoolConfigurationBuilder read(ConnectionPoolConfiguration template)
Description copied from interface:Builder
Reads the configuration from an already created configuration bean into this builder. Returns an appropriate builder to allow fluent configuration- Specified by:
read
in interfaceBuilder<ConnectionPoolConfiguration>
- Parameters:
template
- the configuration from which to "clone" this config if needed.
-
template
public ConfigurationChildBuilder template(boolean template)
- Specified by:
template
in interfaceConfigurationChildBuilder
-
simpleCache
public ConfigurationChildBuilder simpleCache(boolean simpleCache)
- Specified by:
simpleCache
in interfaceConfigurationChildBuilder
-
simpleCache
public boolean simpleCache()
- Specified by:
simpleCache
in interfaceConfigurationChildBuilder
-
clustering
public ClusteringConfigurationBuilder clustering()
- Specified by:
clustering
in interfaceConfigurationChildBuilder
-
customInterceptors
@Deprecated public CustomInterceptorsConfigurationBuilder customInterceptors()
Deprecated.Since 10.0, custom interceptors support will be removed and only modules will be able to define interceptors- Specified by:
customInterceptors
in interfaceConfigurationChildBuilder
-
encoding
public EncodingConfigurationBuilder encoding()
- Specified by:
encoding
in interfaceConfigurationChildBuilder
-
expiration
public ExpirationConfigurationBuilder expiration()
- Specified by:
expiration
in interfaceConfigurationChildBuilder
-
indexing
public IndexingConfigurationBuilder indexing()
- Specified by:
indexing
in interfaceConfigurationChildBuilder
-
invocationBatching
public InvocationBatchingConfigurationBuilder invocationBatching()
- Specified by:
invocationBatching
in interfaceConfigurationChildBuilder
-
statistics
public StatisticsConfigurationBuilder statistics()
- Specified by:
statistics
in interfaceConfigurationChildBuilder
-
persistence
public PersistenceConfigurationBuilder persistence()
- Specified by:
persistence
in interfaceConfigurationChildBuilder
-
locking
public LockingConfigurationBuilder locking()
- Specified by:
locking
in interfaceConfigurationChildBuilder
-
security
public SecurityConfigurationBuilder security()
- Specified by:
security
in interfaceConfigurationChildBuilder
-
transaction
public TransactionConfigurationBuilder transaction()
- Specified by:
transaction
in interfaceConfigurationChildBuilder
-
unsafe
public UnsafeConfigurationBuilder unsafe()
- Specified by:
unsafe
in interfaceConfigurationChildBuilder
-
sites
public SitesConfigurationBuilder sites()
- Specified by:
sites
in interfaceConfigurationChildBuilder
-
memory
public MemoryConfigurationBuilder memory()
- Specified by:
memory
in interfaceConfigurationChildBuilder
-
getBuilder
protected ConfigurationBuilder getBuilder()
-
build
public Configuration build()
- Specified by:
build
in interfaceConfigurationChildBuilder
-
-