interface Cache.Listener

Known direct subclasses
CacheEvictor

Evicts data from a Cache.

CachedRegionTracker

Utility class for efficiently tracking regions of data that are stored in a Cache for a given cache key.

Known indirect subclasses
LeastRecentlyUsedCacheEvictor

Evicts least recently used cache files first.

NoOpCacheEvictor

Evictor that doesn't ever evict cache files.


Listener of Cache events.

Summary

Public functions

Unit
onSpanAdded(cache: Cache!, span: CacheSpan!)

Called when a CacheSpan is added to the cache.

Unit
onSpanRemoved(cache: Cache!, span: CacheSpan!)

Called when a CacheSpan is removed from the cache.

Unit
onSpanTouched(cache: Cache!, oldSpan: CacheSpan!, newSpan: CacheSpan!)

Called when an existing CacheSpan is touched, causing it to be replaced.

Public functions

onSpanAdded

fun onSpanAdded(cache: Cache!, span: CacheSpan!): Unit

Called when a CacheSpan is added to the cache.

Parameters
cache: Cache!

The source of the event.

span: CacheSpan!

The added CacheSpan.

onSpanRemoved

fun onSpanRemoved(cache: Cache!, span: CacheSpan!): Unit

Called when a CacheSpan is removed from the cache.

Parameters
cache: Cache!

The source of the event.

span: CacheSpan!

The removed CacheSpan.

onSpanTouched

fun onSpanTouched(cache: Cache!, oldSpan: CacheSpan!, newSpan: CacheSpan!): Unit

Called when an existing CacheSpan is touched, causing it to be replaced. The new CacheSpan is guaranteed to represent the same data as the one it replaces, however file and lastTouchTimestamp may have changed.

Note that for span replacement, onSpanAdded and onSpanRemoved are not called in addition to this method.

Parameters
cache: Cache!

The source of the event.

oldSpan: CacheSpan!

The old CacheSpan, which has been removed from the cache.

newSpan: CacheSpan!

The new CacheSpan, which has been added to the cache.