KtorWriteCrudRepoClient

class KtorWriteCrudRepoClient<ObjectType, IdType, InputValue>(baseUrl: String, httpClient: <Error class: unknown class>, val newObjectsFlow: Flow<ObjectType>, val updatedObjectsFlow: Flow<ObjectType>, val deletedObjectsIdsFlow: Flow<IdType>, createSetup: suspend <Error class: unknown class>.(List<InputValue>) -> Unit, updateSetup: suspend <Error class: unknown class>.(List<UpdatedValuePair<IdType, InputValue>>) -> Unit, deleteByIdSetup: suspend <Error class: unknown class>.(List<IdType>) -> Unit, createBodyGetter: suspend <Error class: unknown class>.() -> List<ObjectType>, updateBodyGetter: suspend <Error class: unknown class>.() -> List<ObjectType>) : WriteCRUDRepo<ObjectType, IdType, InputValue>

Constructors

Link copied to clipboard
constructor(baseUrl: String, httpClient: <Error class: unknown class>, newObjectsFlow: Flow<ObjectType>, updatedObjectsFlow: Flow<ObjectType>, deletedObjectsIdsFlow: Flow<IdType>, createSetup: suspend <Error class: unknown class>.(List<InputValue>) -> Unit, updateSetup: suspend <Error class: unknown class>.(List<UpdatedValuePair<IdType, InputValue>>) -> Unit, deleteByIdSetup: suspend <Error class: unknown class>.(List<IdType>) -> Unit, createBodyGetter: suspend <Error class: unknown class>.() -> List<ObjectType>, updateBodyGetter: suspend <Error class: unknown class>.() -> List<ObjectType>)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
open override val deletedObjectsIdsFlow: Flow<IdType>
Link copied to clipboard
open override val newObjectsFlow: Flow<ObjectType>
Link copied to clipboard
open override val updatedObjectsFlow: Flow<ObjectType>

Functions

Link copied to clipboard
fun <ObjectType, IdType, InputType> WriteCRUDRepo<ObjectType, IdType, InputType>.caching(kvCache: KVCache<IdType, ObjectType>, scope: CoroutineScope, locker: SmartRWLocker = SmartRWLocker(), idGetter: (ObjectType) -> IdType): WriteCRUDCacheRepo<ObjectType, IdType, InputType>
Link copied to clipboard
open suspend override fun create(values: List<InputValue>): List<ObjectType>
Link copied to clipboard
open suspend override fun deleteById(ids: List<IdType>)
Link copied to clipboard
Link copied to clipboard
open suspend override fun update(values: List<UpdatedValuePair<IdType, InputValue>>): List<ObjectType>
open suspend override fun update(id: IdType, value: InputValue): ObjectType?
Link copied to clipboard
inline fun <FromKey, FromValue, FromInput, ToKey, ToValue, ToInput> WriteCRUDRepo<ToValue, ToKey, ToInput>.withMapper(noinline keyFromToTo: suspend FromKey.() -> ToKey = { this as ToKey }, noinline valueFromToTo: suspend FromValue.() -> ToValue = { this as ToValue }, noinline inputFromToTo: suspend FromInput.() -> ToInput = { this as ToInput }, noinline keyToToFrom: suspend ToKey.() -> FromKey = { this as FromKey }, noinline valueToToFrom: suspend ToValue.() -> FromValue = { this as FromValue }, noinline inputToToFrom: suspend ToInput.() -> FromInput = { this as FromInput }): WriteCRUDRepo<FromValue, FromKey, FromInput>