|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.codestudio.util.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.
GenericPool
,
JDBCPool
, Serialized FormField Summary | |
protected int |
count
|
protected java.lang.Thread |
lifeguard
|
protected java.util.Hashtable |
locked
|
protected org.apache.log4j.Category |
logit
Log4j handle |
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()
|
void |
debug(java.lang.String message)
|
void |
debug(java.lang.String message,
java.lang.Exception e)
|
protected void |
debugMetrics()
|
protected void |
expire(java.lang.Object o)
Default expiration invokes PooledObject.closeAllResources() |
void |
finalize()
|
java.lang.String |
getPoolname()
|
void |
init()
|
void |
log(java.lang.String message)
|
void |
log(java.lang.String message,
java.lang.Exception e)
|
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 |
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 org.apache.log4j.Category logit
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 void expire(java.lang.Object o)
PooledObject.closeAllResources()
public java.lang.String getPoolname()
getPoolname
in interface Pool
public java.lang.Object requestObject()
requestObject
in interface Pool
public void returnObject(java.lang.Object o)
returnObject
in interface Pool
public 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.Object
public void log(java.lang.String message)
public void log(java.lang.String message, java.lang.Exception e)
public void debug(java.lang.String message)
public void debug(java.lang.String message, java.lang.Exception e)
protected void debugMetrics()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |