Package org.apache.commons.pool
Class PoolUtils.KeyedObjectPoolAdaptor<K,V>
java.lang.Object
org.apache.commons.pool.PoolUtils.KeyedObjectPoolAdaptor<K,V>
- All Implemented Interfaces:
KeyedObjectPool<K,
V>
- Enclosing class:
- PoolUtils
private static class PoolUtils.KeyedObjectPoolAdaptor<K,V>
extends Object
implements KeyedObjectPool<K,V>
Adapts an ObjectPool to implement KeyedObjectPool by ignoring key arguments.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionKeyedObjectPoolAdaptor
(ObjectPool<V> pool) Create a new KeyedObjectPoolAdaptor wrapping the given ObjectPool -
Method Summary
Modifier and TypeMethodDescriptionvoid
Add an object to the pool, ignoring the keyborrowObject
(K key) Borrow and object from the pool, ignoring the keyvoid
clear()
Clears the pool, removing all pooled instances (optional operation).void
Clear the pool, ignoring the key (has same effect asclear()
.void
close()
Close this pool, and free any resources associated with it.int
Returns the total number of instances current borrowed from this pool but not yet returned (optional operation).int
getNumActive
(K key) Return the number of objects checked out from the pool, ignoring the key.int
Returns the total number of instances currently idle in this pool (optional operation).int
getNumIdle
(K key) Return the number of objects idle in the pool, ignoring the key.void
invalidateObject
(K key, V obj) Invalidate and object, ignoring the keyvoid
returnObject
(K key, V obj) Return and object to the pool, ignoring the keyvoid
setFactory
(KeyedPoolableObjectFactory<K, V> factory) Deprecated.to be removed in version 2.0toString()
-
Field Details
-
pool
Underlying pool
-
-
Constructor Details
-
KeyedObjectPoolAdaptor
KeyedObjectPoolAdaptor(ObjectPool<V> pool) throws IllegalArgumentException Create a new KeyedObjectPoolAdaptor wrapping the given ObjectPool- Parameters:
pool
- underlying object pool- Throws:
IllegalArgumentException
- if pool is null
-
-
Method Details
-
borrowObject
Borrow and object from the pool, ignoring the key- Specified by:
borrowObject
in interfaceKeyedObjectPool<K,
V> - Parameters:
key
- ignored- Returns:
- newly created object instance
- Throws:
IllegalStateException
- afterclose
has been called on this poolException
- whenmakeObject
throws an exceptionNoSuchElementException
- when the pool is exhausted and cannot or will not return another instance
-
returnObject
Return and object to the pool, ignoring the key- Specified by:
returnObject
in interfaceKeyedObjectPool<K,
V> - Parameters:
key
- ignoredobj
- object to return
-
invalidateObject
Invalidate and object, ignoring the key- Specified by:
invalidateObject
in interfaceKeyedObjectPool<K,
V> - Parameters:
obj
- object to invalidatekey
- ignored
-
addObject
Add an object to the pool, ignoring the key- Specified by:
addObject
in interfaceKeyedObjectPool<K,
V> - Parameters:
key
- ignored- Throws:
Exception
- whenKeyedPoolableObjectFactory.makeObject(K)
fails.IllegalStateException
- afterKeyedObjectPool.close()
has been called on this pool.UnsupportedOperationException
- when this pool cannot add new idle objects.
-
getNumIdle
Return the number of objects idle in the pool, ignoring the key.- Specified by:
getNumIdle
in interfaceKeyedObjectPool<K,
V> - Parameters:
key
- ignored- Returns:
- idle instance count
- Throws:
UnsupportedOperationException
- deprecated: when this implementation doesn't support the operation
-
getNumActive
Return the number of objects checked out from the pool, ignoring the key.- Specified by:
getNumActive
in interfaceKeyedObjectPool<K,
V> - Parameters:
key
- ignored- Returns:
- active instance count
- Throws:
UnsupportedOperationException
- deprecated: when this implementation doesn't support the operation
-
getNumIdle
Returns the total number of instances currently idle in this pool (optional operation). Returns a negative value if this information is not available.- Specified by:
getNumIdle
in interfaceKeyedObjectPool<K,
V> - Returns:
- the total number of instances currently idle in this pool or a negative value if unsupported
- Throws:
UnsupportedOperationException
- deprecated: when this implementation doesn't support the operation
-
getNumActive
Returns the total number of instances current borrowed from this pool but not yet returned (optional operation). Returns a negative value if this information is not available.- Specified by:
getNumActive
in interfaceKeyedObjectPool<K,
V> - Returns:
- the total number of instances currently borrowed from this pool or a negative value if unsupported
- Throws:
UnsupportedOperationException
- deprecated: when this implementation doesn't support the operation
-
clear
Clears the pool, removing all pooled instances (optional operation). ThrowsUnsupportedOperationException
if the pool cannot be cleared.- Specified by:
clear
in interfaceKeyedObjectPool<K,
V> - Throws:
UnsupportedOperationException
- when this implementation doesn't support the operationException
-
clear
Clear the pool, ignoring the key (has same effect asclear()
.- Specified by:
clear
in interfaceKeyedObjectPool<K,
V> - Parameters:
key
- ignored.- Throws:
UnsupportedOperationException
- when this implementation doesn't support the operationException
-
close
public void close()Close this pool, and free any resources associated with it.Calling
addObject
orborrowObject
after invoking this method on a pool will cause them to throw anIllegalStateException
.- Specified by:
close
in interfaceKeyedObjectPool<K,
V>
-
setFactory
@Deprecated public void setFactory(KeyedPoolableObjectFactory<K, V> factory) throws IllegalStateException, UnsupportedOperationExceptionDeprecated.to be removed in version 2.0Sets the factory used to manage objects.- Specified by:
setFactory
in interfaceKeyedObjectPool<K,
V> - Parameters:
factory
- new factory to use managing object instances- Throws:
IllegalStateException
- when the factory cannot be set at this timeUnsupportedOperationException
- when this implementation doesn't support the operation
-
toString
-