## Uses of Interface
org.apache.commons.pool2.PooledObject

- Packages that use PooledObject
  Package | Description
  --- | ---
  org.apache.commons.pool2 | Object pooling API.
  org.apache.commons.pool2.impl | Object pooling API implementations.

- - ### Uses of PooledObject in org.apache.commons.pool2

    Methods in org.apache.commons.pool2 that return PooledObject
    Modifier and Type | Method | Description
    --- | --- | ---
    `PooledObject<V>` | BaseKeyedPooledObjectFactory.`makeObject​(K key)` |
    `PooledObject<T>` | BasePooledObjectFactory.`makeObject()` |
    `PooledObject<V>` | KeyedPooledObjectFactory.`makeObject​(K key)` | Creates an instance that can be served by the pool and wrap it in a `PooledObject` to be managed by the pool.
    `PooledObject<T>` | PooledObjectFactory.`makeObject()` | Creates an instance that can be served by the pool and wrap it in a `PooledObject` to be managed by the pool.
    `abstract PooledObject<V>` | BaseKeyedPooledObjectFactory.`wrap​(V value)` | Wraps the provided instance with an implementation of `PooledObject`.
    `abstract PooledObject<T>` | BasePooledObjectFactory.`wrap​(T obj)` | Wraps the provided instance with an implementation of `PooledObject`.

    Methods in org.apache.commons.pool2 with parameters of type PooledObject
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | BaseKeyedPooledObjectFactory.`activateObject​(K key, PooledObject<V> p)` | Reinitializes an instance to be returned by the pool.
    `void` | BasePooledObjectFactory.`activateObject​(PooledObject<T> p)` | No-op.
    `void` | KeyedPooledObjectFactory.`activateObject​(K key, PooledObject<V> p)` | Reinitializes an instance to be returned by the pool.
    `void` | PooledObjectFactory.`activateObject​(PooledObject<T> p)` | Reinitializes an instance to be returned by the pool.
    `int` | PooledObject.`compareTo​(PooledObject<T> other)` | Orders instances based on idle time - i.e.
    `void` | BaseKeyedPooledObjectFactory.`destroyObject​(K key, PooledObject<V> p)` | Destroys an instance no longer needed by the pool.
    `void` | BasePooledObjectFactory.`destroyObject​(PooledObject<T> p)` | No-op.
    `void` | KeyedPooledObjectFactory.`destroyObject​(K key, PooledObject<V> p)` | Destroys an instance no longer needed by the pool.
    `default void` | KeyedPooledObjectFactory.`destroyObject​(K key, PooledObject<V> p, DestroyMode destroyMode)` | Destroys an instance no longer needed by the pool, using the provided `DestroyMode`.
    `void` | PooledObjectFactory.`destroyObject​(PooledObject<T> p)` | Destroys an instance no longer needed by the pool, using the default (NORMAL) DestroyMode.
    `default void` | PooledObjectFactory.`destroyObject​(PooledObject<T> p, DestroyMode destroyMode)` | Destroys an instance no longer needed by the pool, using the provided DestroyMode.
    `static boolean` | PooledObject.`isNull​(PooledObject<?> pooledObject)` | Tests whether the given PooledObject is null or contains a null.
    `void` | BaseKeyedPooledObjectFactory.`passivateObject​(K key, PooledObject<V> p)` | Uninitializes an instance to be returned to the idle object pool.
    `void` | BasePooledObjectFactory.`passivateObject​(PooledObject<T> p)` | No-op.
    `void` | KeyedPooledObjectFactory.`passivateObject​(K key, PooledObject<V> p)` | Uninitializes an instance to be returned to the idle object pool.
    `void` | PooledObjectFactory.`passivateObject​(PooledObject<T> p)` | Uninitializes an instance to be returned to the idle object pool.
    `boolean` | BaseKeyedPooledObjectFactory.`validateObject​(K key, PooledObject<V> p)` | Ensures that the instance is safe to be returned by the pool.
    `boolean` | BasePooledObjectFactory.`validateObject​(PooledObject<T> p)` | Always returns `true`.
    `boolean` | KeyedPooledObjectFactory.`validateObject​(K key, PooledObject<V> p)` | Ensures that the instance is safe to be returned by the pool.
    `boolean` | PooledObjectFactory.`validateObject​(PooledObject<T> p)` | Ensures that the instance is safe to be returned by the pool.

    Method parameters in org.apache.commons.pool2 with type arguments of type PooledObject
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | PooledObject.`endEvictionTest​(Deque<PooledObject<T>> idleQueue)` | Notifies the object that the eviction test has ended.

  - ### Uses of PooledObject in org.apache.commons.pool2.impl

    Classes in org.apache.commons.pool2.impl that implement PooledObject
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `DefaultPooledObject<T>` | This wrapper is used to track the additional information, such as state, for the pooled objects.
    `class` | `PooledSoftReference<T>` | Extension of `DefaultPooledObject` to wrap pooled soft references.

    Methods in org.apache.commons.pool2.impl with parameters of type PooledObject
    Modifier and Type | Method | Description
    --- | --- | ---
    `int` | DefaultPooledObject.`compareTo​(PooledObject<T> other)` |
    `boolean` | DefaultEvictionPolicy.`evict​(EvictionConfig config, PooledObject<T> underTest, int idleCount)` |
    `boolean` | EvictionPolicy.`evict​(EvictionConfig config, PooledObject<T> underTest, int idleCount)` | Tests if an idle object in the pool should be evicted or not.
    `protected void` | BaseGenericObjectPool.`markReturningState​(PooledObject<T> pooledObject)` | Marks the object as returning to the pool.

    Method parameters in org.apache.commons.pool2.impl with type arguments of type PooledObject
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | DefaultPooledObject.`endEvictionTest​(Deque<PooledObject<T>> idleQueue)` |

    Constructors in org.apache.commons.pool2.impl with parameters of type PooledObject
    Constructor | Description
    --- | ---
    `DefaultPooledObjectInfo​(PooledObject<?> pooledObject)` | Constructs a new instance for the given pooled object.