private void setAccessTimeAndExpiry(K key, OffHeapValueHolder<V> valueHolder, long now) { valueHolder.setLastAccessTime(now, OffHeapValueHolder.TIME_UNIT); Duration duration = expiry.getExpiryForAccess(key, valueHolder.value()); if (duration != null) { if (duration.isForever()) { valueHolder.setExpirationTime(ValueHolder.NO_EXPIRE, null); } else { valueHolder.setExpirationTime(safeExpireTime(now, duration), OffHeapValueHolder.TIME_UNIT); } } valueHolder.writeBack(); }