|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.camel.impl.ServiceSupport
org.apache.camel.util.DefaultTimeoutMap<K,V>
public class DefaultTimeoutMap<K,V>
Default implementation of the TimeoutMap
.
ScheduledExecutorService
in the constructor which is used
to schedule a background task which check for old entries to purge. This implementation will shutdown the scheduler
if its being stopped.
Field Summary | |
---|---|
protected org.slf4j.Logger |
log
|
Constructor Summary | |
---|---|
DefaultTimeoutMap(ScheduledExecutorService executor)
|
|
DefaultTimeoutMap(ScheduledExecutorService executor,
long requestMapPollTimeMillis)
|
|
DefaultTimeoutMap(ScheduledExecutorService executor,
long requestMapPollTimeMillis,
boolean useLock)
|
Method Summary | |
---|---|
protected long |
currentTime()
|
protected void |
doStart()
|
protected void |
doStop()
|
V |
get(K key)
Looks up the value in the map by the given key. |
ScheduledExecutorService |
getExecutor()
|
Object[] |
getKeys()
Returns a copy of the keys in the map |
long |
getPurgePollTime()
|
protected boolean |
isValidForEviction(TimeoutMapEntry<K,V> entry)
A hook to allow derivations to avoid evicting the current entry |
boolean |
onEviction(K key,
V value)
Callback when the value has been evicted |
void |
purge()
Purges any old entries from the map |
void |
put(K key,
V value,
long timeoutMillis)
Adds the key value pair into the map such that some time after the given timeout the entry will be evicted |
V |
remove(K id)
Removes the object with the given key |
void |
run()
The timer task which purges old requests and schedules another poll |
protected void |
schedulePoll()
lets schedule each time to allow folks to change the time at runtime |
int |
size()
Returns the size of the map |
protected void |
updateExpireTime(TimeoutMapEntry entry)
|
Methods inherited from class org.apache.camel.impl.ServiceSupport |
---|
addChildService, doResume, doShutdown, doSuspend, getStatus, getVersion, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspended, isSuspending, removeChildService, resume, shutdown, start, start, stop, suspend |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected final transient org.slf4j.Logger log
Constructor Detail |
---|
public DefaultTimeoutMap(ScheduledExecutorService executor)
public DefaultTimeoutMap(ScheduledExecutorService executor, long requestMapPollTimeMillis)
public DefaultTimeoutMap(ScheduledExecutorService executor, long requestMapPollTimeMillis, boolean useLock)
Method Detail |
---|
public V get(K key)
TimeoutMap
get
in interface TimeoutMap<K,V>
key
- the key of the value to search for
public void put(K key, V value, long timeoutMillis)
TimeoutMap
put
in interface TimeoutMap<K,V>
key
- the keyvalue
- the valuetimeoutMillis
- timeout in millispublic V remove(K id)
TimeoutMap
remove
in interface TimeoutMap<K,V>
id
- key for the object to remove
public Object[] getKeys()
TimeoutMap
getKeys
in interface TimeoutMap<K,V>
public int size()
TimeoutMap
size
in interface TimeoutMap<K,V>
public void run()
run
in interface Runnable
public void purge()
TimeoutMap
purge
in interface TimeoutMap<K,V>
public long getPurgePollTime()
public ScheduledExecutorService getExecutor()
protected void schedulePoll()
protected boolean isValidForEviction(TimeoutMapEntry<K,V> entry)
public boolean onEviction(K key, V value)
TimeoutMap
onEviction
in interface TimeoutMap<K,V>
key
- the keyvalue
- the value
protected void updateExpireTime(TimeoutMapEntry entry)
protected long currentTime()
protected void doStart() throws Exception
doStart
in class ServiceSupport
Exception
protected void doStop() throws Exception
doStop
in class ServiceSupport
Exception
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |