LocalStorageQuery

class LocalStorageQuery<T, I, Q>(resource: Resource<T, I>, prefix: String, runQuery: (List<T>, Q) -> List<T>) : QueryRepository<T, I, Q>

provides functions to deal with queries to a specific Resource in localStorage

Parameters

resource

definition of resource in localStorage

prefix

prefix used for prepending to the keys

runQuery

function to apply a given query to the collection of entities in localStorage

Constructors

Link copied to clipboard
fun <T, I, Q> LocalStorageQuery(resource: Resource<T, I>, prefix: String, runQuery: (List<T>, Q) -> List<T> = { entities, _ -> entities })

Functions

Link copied to clipboard
open suspend override fun addOrUpdate(entities: List<T>, entity: T): List<T>

adds or updates a given entity to localStorage

Link copied to clipboard
open suspend override fun delete(entities: List<T>, id: I): List<T>

deletes one entity from localStorage

open suspend override fun delete(entities: List<T>, ids: List<I>): List<T>

deletes multiple entities from localStorage

Link copied to clipboard
open suspend override fun query(query: Q): List<T>

applies a given query to the collection of entities

Link copied to clipboard
open suspend override fun updateMany(entities: List<T>, entitiesToUpdate: List<T>): List<T>

updates given entities to localStorage