Package org.datanucleus.state
Class StateManagerPool
- java.lang.Object
-
- org.datanucleus.state.StateManagerPool
-
public class StateManagerPool extends java.lang.Object
Pool of StateManager objects. By default pool a maximum of 100 StateManager objects for reuse. Has an optional reaper thread that cleans out the unused pooled objects every 60 secs.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) class
StateManagerPool.CleanUpThread
-
Field Summary
Fields Modifier and Type Field Description private StateManagerPool.CleanUpThread
cleaner
private long
expirationTime
private long
maxIdle
private java.util.Map<DNStateManager,java.lang.Long>
recyclableSMs
private java.lang.Class<? extends DNStateManager>
smClass
-
Constructor Summary
Constructors Constructor Description StateManagerPool(int maxIdle, boolean reaperThread, java.lang.Class<? extends DNStateManager> smClass)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
checkIn(DNStateManager sm)
DNStateManager
checkOut(ExecutionContext ec, AbstractClassMetaData cmd)
void
cleanUp()
void
close()
protected DNStateManager
create(ExecutionContext ec, AbstractClassMetaData cmd)
void
expire(DNStateManager sm)
boolean
validate(DNStateManager sm)
-
-
-
Field Detail
-
maxIdle
private long maxIdle
-
expirationTime
private long expirationTime
-
recyclableSMs
private java.util.Map<DNStateManager,java.lang.Long> recyclableSMs
-
cleaner
private StateManagerPool.CleanUpThread cleaner
-
smClass
private java.lang.Class<? extends DNStateManager> smClass
-
-
Constructor Detail
-
StateManagerPool
public StateManagerPool(int maxIdle, boolean reaperThread, java.lang.Class<? extends DNStateManager> smClass)
-
-
Method Detail
-
close
public void close()
-
create
protected DNStateManager create(ExecutionContext ec, AbstractClassMetaData cmd)
-
validate
public boolean validate(DNStateManager sm)
-
expire
public void expire(DNStateManager sm)
-
checkOut
public DNStateManager checkOut(ExecutionContext ec, AbstractClassMetaData cmd)
-
cleanUp
public void cleanUp()
-
checkIn
public void checkIn(DNStateManager sm)
-
-