public class PooledExecutionServiceConfiguration extends java.lang.Object implements ServiceCreationConfiguration<ExecutionService,PooledExecutionServiceConfigurationBuilder>
ServiceCreationConfiguration
for the pooled ExecutionService
implementation.
Enables configuring named thread pools that can then be used by the different Ehcache services that require threads to function.
Modifier and Type | Class and Description |
---|---|
static class |
PooledExecutionServiceConfiguration.PoolConfiguration
Configuration class representing a pool configuration.
|
Constructor and Description |
---|
PooledExecutionServiceConfiguration() |
Modifier and Type | Method and Description |
---|---|
PooledExecutionServiceConfiguration |
addDefaultPool(java.lang.String alias,
int minSize,
int maxSize)
Adds a new default pool with the provided minimum and maximum.
|
PooledExecutionServiceConfiguration |
addPool(java.lang.String alias,
int minSize,
int maxSize)
Adds a new pool with the provided minimum and maximum.
|
PooledExecutionServiceConfiguration |
build(PooledExecutionServiceConfigurationBuilder builder)
Construct a new configuration from the given detached representation.
|
PooledExecutionServiceConfigurationBuilder |
derive()
Derive a detached representation from this configuration
|
java.lang.String |
getDefaultPoolAlias()
Returns the default pool alias, or
null if none configured. |
java.util.Map<java.lang.String,PooledExecutionServiceConfiguration.PoolConfiguration> |
getPoolConfigurations()
Returns the map from alias to
PooledExecutionServiceConfiguration.PoolConfiguration defined by this configuration object. |
java.lang.Class<ExecutionService> |
getServiceType()
Indicates which service consumes this configuration at creation.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
compatibleWith
public PooledExecutionServiceConfiguration addDefaultPool(java.lang.String alias, int minSize, int maxSize)
The default pool will be used by any service requiring threads but not specifying a pool alias. It is not mandatory to have a default pool. But without one ALL services have to specify a pool alias.
alias
- the pool aliasminSize
- the minimum sizemaxSize
- the maximum sizejava.lang.NullPointerException
- if alias is nulljava.lang.IllegalArgumentException
- if another default was configured already or if another pool with the same
alias was configured alreadypublic PooledExecutionServiceConfiguration addPool(java.lang.String alias, int minSize, int maxSize)
alias
- the pool aliasminSize
- the minimum sizemaxSize
- the maximum sizejava.lang.NullPointerException
- if alias is nulljava.lang.IllegalArgumentException
- if another pool with the same alias was configured alreadypublic java.util.Map<java.lang.String,PooledExecutionServiceConfiguration.PoolConfiguration> getPoolConfigurations()
PooledExecutionServiceConfiguration.PoolConfiguration
defined by this configuration object.public java.lang.String getDefaultPoolAlias()
null
if none configured.null
public java.lang.Class<ExecutionService> getServiceType()
getServiceType
in interface ServiceCreationConfiguration<ExecutionService,PooledExecutionServiceConfigurationBuilder>
public PooledExecutionServiceConfigurationBuilder derive()
ServiceCreationConfiguration
derive
in interface ServiceCreationConfiguration<ExecutionService,PooledExecutionServiceConfigurationBuilder>
public PooledExecutionServiceConfiguration build(PooledExecutionServiceConfigurationBuilder builder)
ServiceCreationConfiguration
build
in interface ServiceCreationConfiguration<ExecutionService,PooledExecutionServiceConfigurationBuilder>
builder
- a detached representation