|
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||
A "keyed" pooling interface.
A keyed pool pools instances of multiple types. Each type may be accessed using an arbitrary key.
Example of use:
Object obj = null;
Object key = "Key";
try {
obj = pool.borrowObject(key);
//...use the object...
} catch(Exception e) {
//...handle any exceptions...
} finally {
// make sure the object is returned to the pool
if(null != obj) {
pool.returnObject(key,obj);
}
} |
KeyedObjectPool implementations may choose to store at most
one instance per key value, or may choose to maintain a pool of instances
for each key (essentially creating a Map of
pools).
KeyedPoolableObjectFactory,
KeyedObjectPoolFactory,
ObjectPool| Method Summary | |
Object |
borrowObject(Object key)
Obtain an instance from my pool for the specified key. |
void |
clear()
Clears my pool, removing all pooled instances (optional operation). |
void |
clear(Object key)
Clears the specified pool, removing all pooled instances corresponding to the given key (optional operation). |
void |
close()
Close this pool, and free any resources associated with it. |
int |
getNumActive()
Returns the total number of instances current borrowed from my pool but not yet returned (optional operation). |
int |
getNumActive(Object key)
Returns the number of instances currently borrowed from but not yet returned to my pool corresponding to the given key (optional operation). |
int |
getNumIdle()
Returns the total number of instances currently idle in my pool (optional operation). |
int |
getNumIdle(Object key)
Returns the number of instances corresponding to the given key currently idle in my pool (optional operation). |
void |
returnObject(Object key,
Object obj)
Return an instance to my pool. |
void |
setFactory(KeyedPoolableObjectFactory factory)
Sets the factory I use
to create new instances (optional operation). |
| Method Detail |
public Object borrowObject(Object key)
throws Exception
returnObject,
or a related method as defined in an implementation
or sub-interface,
using a key that is equivalent to the one used to
borrow the instance in the first place.
key - the key used to obtain the object
Exception
public void clear()
throws Exception,
UnsupportedOperationException
UnsupportedOperationException
if the pool cannot be cleared.
UnsupportedOperationException - when this implementation doesn't support the operation
Exception
public void clear(Object key)
throws Exception,
UnsupportedOperationException
UnsupportedOperationException
if the pool cannot be cleared.
key - the key to clear
UnsupportedOperationException - when this implementation doesn't support the operation
Exception
public void close()
throws Exception
Exception
public int getNumActive()
throws UnsupportedOperationException
UnsupportedOperationException
if this information is not available.
UnsupportedOperationException - when this implementation doesn't support the operation
public int getNumActive(Object key)
throws UnsupportedOperationException
UnsupportedOperationException
if this information is not available.
key - the key
UnsupportedOperationException - when this implementation doesn't support the operation
public int getNumIdle()
throws UnsupportedOperationException
UnsupportedOperationException
if this information is not available.
UnsupportedOperationException - when this implementation doesn't support the operation
public int getNumIdle(Object key)
throws UnsupportedOperationException
UnsupportedOperationException
if this information is not available.
key - the key
UnsupportedOperationException - when this implementation doesn't support the operation
public void returnObject(Object key,
Object obj)
throws Exception
borrowObject
or a related method as defined in an implementation
or sub-interface,
using a key that is equivalent to the one used to
borrow the Object in the first place.
key - the key used to obtain the objectobj - a borrowed instance to be returned.
Exception
public void setFactory(KeyedPoolableObjectFactory factory)
throws IllegalStateException,
UnsupportedOperationException
factory I use
to create new instances (optional operation).
factory - the KeyedPoolableObjectFactory I use to create new instances.
IllegalStateException - when the factory cannot be set at this time
UnsupportedOperationException - when this implementation doesn't support the operation
|
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||