kgraphql / com.apurebase.kgraphql.test

Package com.apurebase.kgraphql.test

Types

BatchLoader

typealias BatchLoader<K, R> = suspend (ids: List<K>) -> List<ExecutionResult<R>>

BatchMode

sealed class BatchMode

Cache

A "Threadsafe" Cache (Coroutine-Save)

interface Cache<K, V>

CoroutineMapCache

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

DataLoader

interface DataLoader<K, R>

DataLoaderOptions

open class DataLoaderOptions<K, R>

DefaultLoaderQueueImpl

class DefaultLoaderQueueImpl<K, V> : LoaderQueue<K, V>

ExecutionResult

sealed class ExecutionResult<out T>

LoaderQueue

interface LoaderQueue<K, V>

LoaderQueueEntry

data class LoaderQueueEntry<K, V>

SimpleDataLoaderImpl

open class SimpleDataLoaderImpl<K, R> : DataLoader<K, R>

TimedAutoDispatcherDataLoaderOptions

class TimedAutoDispatcherDataLoaderOptions<K, R> : DataLoaderOptions<K, R>

TimedAutoDispatcherImpl

class TimedAutoDispatcherImpl<K, R> : SimpleDataLoaderImpl<K, R>, CoroutineScope

Functions

getOrCreate

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

prime

suspend fun <K, R> SimpleDataLoaderImpl<K, R>.prime(cacheEntry: Pair<K, R>): Unit
suspend fun <K, R> SimpleDataLoaderImpl<K, R>.prime(cacheEntry: Pair<K, Throwable>): Unit