kgraphql / com.apurebase.kgraphql.test / CoroutineMapCache

CoroutineMapCache

class CoroutineMapCache<K, V> : Cache<K, V>

Constructors

<init>

CoroutineMapCache(cacheMap: MutableMap<K, CompletableDeferred<V>> = mutableMapOf())

Functions

clear

suspend fun clear(key: K): CompletableDeferred<V>?
suspend fun clear(): Unit

get

suspend fun get(key: K): CompletableDeferred<V>?

getOrCreate

suspend fun getOrCreate(key: K, generator: suspend (key: K) -> CompletableDeferred<V>, callOnCacheHit: suspend () -> Unit): CompletableDeferred<V>

store

suspend fun store(key: K, value: CompletableDeferred<V>): CompletableDeferred<V>

Extension Functions

getOrCreate

suspend fun <K, V> Cache<K, V>.getOrCreate(key: K, generator: suspend (key: K) -> CompletableDeferred<V>): CompletableDeferred<V>