Package org.apache.tomcat.dbcp.pool2.impl

# Class GenericObjectPoolConfig<T>

java.lang.Object
org.apache.tomcat.dbcp.pool2.BaseObject
org.apache.tomcat.dbcp.pool2.impl.BaseObjectPoolConfig<T>
org.apache.tomcat.dbcp.pool2.impl.GenericObjectPoolConfig<T>

Type Parameters:
  `T` - Type of element pooled.

All Implemented Interfaces:
  `Cloneable`

public class GenericObjectPoolConfig<T> extends BaseObjectPoolConfig<T>
A simple structure encapsulating the configuration for a `GenericObjectPool`.

This class is not thread-safe; it is only intended to be used to provide attributes used when creating a pool.

Since:
  2.0

## Field Summary

Fields
Modifier and Type
Field
Description
`static final int`
`DEFAULT_MAX_IDLE`
The default value for the `maxIdle` configuration attribute: 8.
`static final int`
`DEFAULT_MAX_TOTAL`
The default value for the `maxTotal` configuration attribute: 8.
`static final int`
`DEFAULT_MIN_IDLE`
The default value for the `minIdle` configuration attribute: 0.

### Fields inherited from class org.apache.tomcat.dbcp.pool2.impl.BaseObjectPoolConfig

`DEFAULT_BLOCK_WHEN_EXHAUSTED, DEFAULT_DURATION_BETWEEN_EVICTION_RUNS, DEFAULT_EVICTION_POLICY_CLASS_NAME, DEFAULT_EVICTOR_SHUTDOWN_TIMEOUT, DEFAULT_EVICTOR_SHUTDOWN_TIMEOUT_MILLIS, DEFAULT_FAIRNESS, DEFAULT_JMX_ENABLE, DEFAULT_JMX_NAME_BASE, DEFAULT_JMX_NAME_PREFIX, DEFAULT_LIFO, DEFAULT_MAX_WAIT, DEFAULT_MAX_WAIT_MILLIS, DEFAULT_MIN_EVICTABLE_IDLE_DURATION, DEFAULT_MIN_EVICTABLE_IDLE_TIME, DEFAULT_MIN_EVICTABLE_IDLE_TIME_MILLIS, DEFAULT_NUM_TESTS_PER_EVICTION_RUN, DEFAULT_SOFT_MIN_EVICTABLE_IDLE_DURATION, DEFAULT_SOFT_MIN_EVICTABLE_IDLE_TIME, DEFAULT_SOFT_MIN_EVICTABLE_IDLE_TIME_MILLIS, DEFAULT_TEST_ON_BORROW, DEFAULT_TEST_ON_CREATE, DEFAULT_TEST_ON_RETURN, DEFAULT_TEST_WHILE_IDLE, DEFAULT_TIME_BETWEEN_EVICTION_RUNS, DEFAULT_TIME_BETWEEN_EVICTION_RUNS_MILLIS`

## Constructor Summary

Constructors
Constructor
Description
`GenericObjectPoolConfig()`

## Method Summary

Modifier and Type
Method
Description
`GenericObjectPoolConfig<T>`
`clone()`
`int`
`getMaxIdle()`
Gets the value for the `maxIdle` configuration attribute for pools created with this configuration instance.
`int`
`getMaxTotal()`
Gets the value for the `maxTotal` configuration attribute for pools created with this configuration instance.
`int`
`getMinIdle()`
Gets the value for the `minIdle` configuration attribute for pools created with this configuration instance.
`void`
`setMaxIdle(int maxIdle)`
Sets the value for the `maxIdle` configuration attribute for pools created with this configuration instance.
`void`
`setMaxTotal(int maxTotal)`
Sets the value for the `maxTotal` configuration attribute for pools created with this configuration instance.
`void`
`setMinIdle(int minIdle)`
Sets the value for the `minIdle` configuration attribute for pools created with this configuration instance.
`protected void`
`toStringAppendFields(StringBuilder builder)`
Used by sub-classes to include the fields defined by the sub-class in the `BaseObject.toString()` output.

### Methods inherited from class org.apache.tomcat.dbcp.pool2.impl.BaseObjectPoolConfig

`getBlockWhenExhausted, getDurationBetweenEvictionRuns, getEvictionPolicy, getEvictionPolicyClassName, getEvictorShutdownTimeout, getEvictorShutdownTimeoutDuration, getEvictorShutdownTimeoutMillis, getFairness, getJmxEnabled, getJmxNameBase, getJmxNamePrefix, getLifo, getMaxWaitDuration, getMaxWaitMillis, getMinEvictableIdleDuration, getMinEvictableIdleTime, getMinEvictableIdleTimeMillis, getNumTestsPerEvictionRun, getSoftMinEvictableIdleDuration, getSoftMinEvictableIdleTime, getSoftMinEvictableIdleTimeMillis, getTestOnBorrow, getTestOnCreate, getTestOnReturn, getTestWhileIdle, getTimeBetweenEvictionRuns, getTimeBetweenEvictionRunsMillis, setBlockWhenExhausted, setEvictionPolicy, setEvictionPolicyClassName, setEvictorShutdownTimeout, setEvictorShutdownTimeoutMillis, setEvictorShutdownTimeoutMillis, setFairness, setJmxEnabled, setJmxNameBase, setJmxNamePrefix, setLifo, setMaxWait, setMaxWaitMillis, setMinEvictableIdleDuration, setMinEvictableIdleTime, setMinEvictableIdleTimeMillis, setNumTestsPerEvictionRun, setSoftMinEvictableIdleDuration, setSoftMinEvictableIdleTime, setSoftMinEvictableIdleTimeMillis, setTestOnBorrow, setTestOnCreate, setTestOnReturn, setTestWhileIdle, setTimeBetweenEvictionRuns, setTimeBetweenEvictionRunsMillis`

### Methods inherited from class org.apache.tomcat.dbcp.pool2.BaseObject

`toString`

### Methods inherited from class java.lang.Object

`equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Field Details

### DEFAULT_MAX_TOTAL

public static final int DEFAULT_MAX_TOTAL
The default value for the `maxTotal` configuration attribute: 8.

See Also:
  - `BaseGenericObjectPool.getMaxTotal()`
  - Constant Field Values

### DEFAULT_MAX_IDLE

public static final int DEFAULT_MAX_IDLE
The default value for the `maxIdle` configuration attribute: 8.

See Also:
  - `GenericObjectPool.getMaxIdle()`
  - Constant Field Values

### DEFAULT_MIN_IDLE

public static final int DEFAULT_MIN_IDLE
The default value for the `minIdle` configuration attribute: 0.

See Also:
  - `GenericObjectPool.getMinIdle()`
  - Constant Field Values

## Constructor Details

### GenericObjectPoolConfig

public GenericObjectPoolConfig()

## Method Details

### clone

public GenericObjectPoolConfig<T> clone()

Overrides:
  `clone` in class `Object`

### getMaxIdle

public int getMaxIdle()
Gets the value for the `maxIdle` configuration attribute for pools created with this configuration instance.

Returns:
  The current setting of `maxIdle` for this configuration instance
See Also:
  - `GenericObjectPool.getMaxIdle()`

### getMaxTotal

public int getMaxTotal()
Gets the value for the `maxTotal` configuration attribute for pools created with this configuration instance.

Returns:
  The current setting of `maxTotal` for this configuration instance
See Also:
  - `BaseGenericObjectPool.getMaxTotal()`

### getMinIdle

public int getMinIdle()
Gets the value for the `minIdle` configuration attribute for pools created with this configuration instance.

Returns:
  The current setting of `minIdle` for this configuration instance
See Also:
  - `GenericObjectPool.getMinIdle()`

### setMaxIdle

public void setMaxIdle(int maxIdle)
Sets the value for the `maxIdle` configuration attribute for pools created with this configuration instance.

Parameters:
  `maxIdle` - The new setting of `maxIdle` for this configuration instance
See Also:
  - `GenericObjectPool.setMaxIdle(int)`

### setMaxTotal

public void setMaxTotal(int maxTotal)
Sets the value for the `maxTotal` configuration attribute for pools created with this configuration instance.

Parameters:
  `maxTotal` - The new setting of `maxTotal` for this configuration instance
See Also:
  - `BaseGenericObjectPool.setMaxTotal(int)`

### setMinIdle

public void setMinIdle(int minIdle)
Sets the value for the `minIdle` configuration attribute for pools created with this configuration instance.

Parameters:
  `minIdle` - The new setting of `minIdle` for this configuration instance
See Also:
  - `GenericObjectPool.setMinIdle(int)`

### toStringAppendFields

protected void toStringAppendFields(StringBuilder builder)
Description copied from class: `BaseObject`
Used by sub-classes to include the fields defined by the sub-class in the `BaseObject.toString()` output.

Overrides:
  `toStringAppendFields` in class `BaseObjectPoolConfig<T>`
Parameters:
  `builder` - Field names and values are appended to this object