private void fetchNext() {
long currentTimeMillis = 0;
while (it.hasNext()) {
InternalCacheEntry e = it.next();
final boolean canExpire = e.canExpire();
if (canExpire && currentTimeMillis == 0) {
currentTimeMillis = timeService.wallClockTime();
}
if (!canExpire) {
next = e.getValue();