|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object | +--jrunx.pool.ObjectPool
ObjectPool provides a mechanism for pooling objects and resources. It must be subclassed to create specific pools; GenericPool and JDBCPool are examples of such subclasses.
| Field Summary | |
protected int |
count
|
protected boolean |
createdLogger
|
protected boolean |
isDefault
|
protected java.lang.Thread |
lifeguard
|
protected java.util.Hashtable |
locked
|
Logger |
logger
|
protected PoolMetaData |
metadata
|
protected java.lang.Thread |
skimmer
|
protected java.util.Hashtable |
unlocked
|
| Constructor Summary | |
ObjectPool(PoolMetaData metad)
|
|
| Method Summary | |
protected void |
checkIn(java.lang.Object o)
Checks an object back into the pool. |
protected java.lang.Object |
checkOut()
Checkout cycles through the available objects and returns the first valid object it finds. |
protected void |
checkTimeout()
Determine whether locked objects have timed out and should be checked back in. |
protected void |
cleanUp()
Remove timed-out objects from the pool, called by PoolSkimmerThread. |
void |
closeAllResources()
Close all resources in the pool. |
protected abstract java.lang.Object |
create()
|
protected void |
debugMetrics()
|
protected void |
expire(java.lang.Object o)
Default expiration invokes PooledObject.closeAllResources() |
void |
finalize()
|
Logger |
getLogger()
|
java.lang.String |
getPoolname()
|
protected boolean |
holdingLock(java.lang.Object o)
Override for custom pool lock behavior |
void |
init()
|
void |
initLogger()
|
boolean |
isDefault()
|
int |
numCheckedInObjects()
|
int |
numCheckedOutObjects()
|
int |
numTotalObjects()
|
java.lang.Object |
requestObject()
Subclasses will usually want to override this method. |
void |
returnObject(java.lang.Object o)
Subclasses will usually want to override this method, at least for type safety. |
void |
setIsDefault(boolean b)
|
void |
updateLocked(PooledObject o)
|
protected abstract boolean |
validate(java.lang.Object o)
|
| Methods inherited from class java.lang.Object |
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
protected PoolMetaData metadata
protected int count
protected java.util.Hashtable locked
protected java.util.Hashtable unlocked
protected java.lang.Thread skimmer
protected java.lang.Thread lifeguard
protected boolean createdLogger
public Logger logger
protected boolean isDefault
| Constructor Detail |
public ObjectPool(PoolMetaData metad)
| Method Detail |
public void init()
throws java.lang.Exception
protected abstract java.lang.Object create()
throws java.lang.Exception
protected abstract boolean validate(java.lang.Object o)
protected boolean holdingLock(java.lang.Object o)
protected void expire(java.lang.Object o)
PooledObject.closeAllResources()public java.lang.String getPoolname()
getPoolname in interface Poolpublic boolean isDefault()
public void setIsDefault(boolean b)
public java.lang.Object requestObject()
requestObject in interface Poolpublic void returnObject(java.lang.Object o)
returnObject in interface Poolpublic int numTotalObjects()
public int numCheckedOutObjects()
public int numCheckedInObjects()
protected java.lang.Object checkOut()
throws java.lang.Exception
protected void checkIn(java.lang.Object o)
public void updateLocked(PooledObject o)
protected void cleanUp()
protected void checkTimeout()
public void closeAllResources()
public void finalize()
finalize in class java.lang.Objectprotected void debugMetrics()
public void initLogger()
public Logger getLogger()
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||