in src/main/java/org/apache/servicemix/store/krati/KratiStore.java [203:229]
private void evict() {
long now = System.currentTimeMillis();
Iterator<byte[]> iter = datas.keyIterator();
while(iter.hasNext()){
byte[] key = iter.next();
String keyValue = null;
Entry value = null;
try {
keyValue = new String(key);
value = (Entry)readObject(datas.get(key));
} catch (Exception e) {
LOG.error("Error reading object with id: {}", key, e);
}
long age = now - value.getTime();
if (age > timeout) {
LOG.debug("Removing object with id {} from store after {} ms", keyValue, age);
try {
if(datas.delete(key)){
fireEvictedEvent(keyValue,value.getData());
}
} catch (Exception e) {
LOG.error("Error deleting object with id {}", keyValue);
}
}
}
}