org.apache.tomcat.dbcp.pool.impl

## Class StackKeyedObjectPoolFactory<K,V>

- java.lang.Object
- - org.apache.tomcat.dbcp.pool.impl.StackKeyedObjectPoolFactory<K,V>

- Type Parameters:
    `K` - the type of keys in this pool
    `V` - the type of objects held in this pool
  All Implemented Interfaces:
    KeyedObjectPoolFactory<K,V>

      public class StackKeyedObjectPoolFactory<K,V>
      extends java.lang.Object
      implements KeyedObjectPoolFactory<K,V>

  A factory for creating `StackKeyedObjectPool` instances.
  Since:
    Pool 1.0
  Author:
    Rodney Waldhoff
  See Also:
    `StackKeyedObjectPool`, `KeyedObjectPoolFactory`

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected KeyedPoolableObjectFactory<K,V>` | `_factory` Deprecated. to be removed in pool 2.0
    `protected int` | `_initCapacity` Deprecated. to be removed in pool 2.0
    `protected int` | `_maxSleeping` Deprecated. to be removed in pool 2.0

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `StackKeyedObjectPoolFactory()` Create a new StackKeyedObjectPoolFactory.
    `StackKeyedObjectPoolFactory(int maxSleeping)` Create a new StackKeyedObjectPoolFactory.
    `StackKeyedObjectPoolFactory(int maxSleeping, int initialCapacity)` Create a new StackKeyedObjectPoolFactory.
    `StackKeyedObjectPoolFactory(KeyedPoolableObjectFactory<K,V> factory)` Create a new StackKeyedObjectPoolFactory.
    `StackKeyedObjectPoolFactory(KeyedPoolableObjectFactory<K,V> factory, int maxSleeping)` Create a new StackKeyedObjectPoolFactory.
    `StackKeyedObjectPoolFactory(KeyedPoolableObjectFactory<K,V> factory, int maxSleeping, int initialCapacity)` Create a new StackKeyedObjectPoolFactory.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `KeyedObjectPool<K,V>` | `createPool()` Create a StackKeyedObjectPool with current property settings.
    `KeyedPoolableObjectFactory<K,V>` | `getFactory()` Returns the KeyedPoolableObjectFactory used by StackKeyedObjectPools created by this factory
    `int` | `getInitialCapacity()` Returns the initial capacity of StackKeyedObjectPools created by this factory.
    `int` | `getMaxSleeping()` Returns the maximum number of idle instances in each keyed pool for StackKeyedObjectPools created by this factory

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

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

- - ### Field Detail

    - #### _factory

          @Deprecated
          protected KeyedPoolableObjectFactory<K,V> _factory

      Deprecated. to be removed in pool 2.0
      KeyedPoolableObjectFactory used by StackKeyedObjectPools created by this factory

    - #### _maxSleeping

          @Deprecated
          protected int _maxSleeping

      Deprecated. to be removed in pool 2.0
      Maximum number of idle instances in each keyed pool for StackKeyedObjectPools created by this factory

    - #### _initCapacity

          @Deprecated
          protected int _initCapacity

      Deprecated. to be removed in pool 2.0
      Initial capacity of StackKeyedObjectPools created by this factory.

  - ### Constructor Detail

    - #### StackKeyedObjectPoolFactory

          public StackKeyedObjectPoolFactory()

      Create a new StackKeyedObjectPoolFactory.
      See Also:
        `StackKeyedObjectPool.StackKeyedObjectPool()`

    - #### StackKeyedObjectPoolFactory

          public StackKeyedObjectPoolFactory(int maxSleeping)

      Create a new StackKeyedObjectPoolFactory.
      Parameters:
        `maxSleeping` - cap on the number of "sleeping" instances in the pool.
      See Also:
        `StackKeyedObjectPool.StackKeyedObjectPool(int)`

    - #### StackKeyedObjectPoolFactory

          public StackKeyedObjectPoolFactory(int maxSleeping,
                                     int initialCapacity)

      Create a new StackKeyedObjectPoolFactory.
      Parameters:
        `maxSleeping` - cap on the number of "sleeping" instances in the pool.
        `initialCapacity` - initial size of the pool (this specifies the size of the container, it does not cause the pool to be pre-populated.)
      See Also:
        `StackKeyedObjectPool.StackKeyedObjectPool(int, int)`

    - #### StackKeyedObjectPoolFactory

          public StackKeyedObjectPoolFactory(KeyedPoolableObjectFactory<K,V> factory)

      Create a new StackKeyedObjectPoolFactory.
      Parameters:
        `factory` - the KeyedPoolableObjectFactory used by created pools.
      See Also:
        `StackKeyedObjectPool.StackKeyedObjectPool(KeyedPoolableObjectFactory)`

    - #### StackKeyedObjectPoolFactory

          public StackKeyedObjectPoolFactory(KeyedPoolableObjectFactory<K,V> factory,
                                     int maxSleeping)

      Create a new StackKeyedObjectPoolFactory.
      Parameters:
        `factory` - the KeyedPoolableObjectFactory used by created pools.
        `maxSleeping` - cap on the number of "sleeping" instances in the pool.
      See Also:
        `StackKeyedObjectPool.StackKeyedObjectPool(KeyedPoolableObjectFactory, int)`

    - #### StackKeyedObjectPoolFactory

          public StackKeyedObjectPoolFactory(KeyedPoolableObjectFactory<K,V> factory,
                                     int maxSleeping,
                                     int initialCapacity)

      Create a new StackKeyedObjectPoolFactory.
      Parameters:
        `factory` - the KeyedPoolableObjectFactory used by created pools.
        `maxSleeping` - cap on the number of "sleeping" instances in the pool.
        `initialCapacity` - initial size of the pool (this specifies the size of the container, it does not cause the pool to be pre-populated.)
      See Also:
        `StackKeyedObjectPool.StackKeyedObjectPool(KeyedPoolableObjectFactory, int, int)`

  - ### Method Detail

    - #### createPool

          public KeyedObjectPool<K,V> createPool()

      Create a StackKeyedObjectPool with current property settings.
      Specified by:
        `createPool` in interface `KeyedObjectPoolFactory<K,V>`
      Returns:
        a new StackKeyedObjectPool with the configured factory, maxSleeping and initialCapacity

    - #### getFactory

          public KeyedPoolableObjectFactory<K,V> getFactory()

      Returns the KeyedPoolableObjectFactory used by StackKeyedObjectPools created by this factory
      Returns:
        factory setting for created pools
      Since:
        1.5.5

    - #### getMaxSleeping

          public int getMaxSleeping()

      Returns the maximum number of idle instances in each keyed pool for StackKeyedObjectPools created by this factory
      Returns:
        maxSleeping setting for created pools
      Since:
        1.5.5

    - #### getInitialCapacity

          public int getInitialCapacity()

      Returns the initial capacity of StackKeyedObjectPools created by this factory.
      Returns:
        initial capacity setting for created pools
      Since:
        1.5.5

Copyright © 2000-2020 Apache Software Foundation. All Rights Reserved.