# AbstractExposedReadKeyValueRepo

abstract class AbstractExposedReadKeyValueRepo < Key , Value >(val database: ERROR CLASS: Symbol not found for Database, tableName: String ? = null) : ReadKeyValueRepo < Key , Value > , CommonExposedRepo < Key , Value > , <ERROR CLASS> ERROR CLASS: Symbol not found for Table(source)

#### Inheritors

AbstractExposedKeyValueRepo
ExposedReadKeyValueRepo

## Constructors

AbstractExposedReadKeyValueRepo
Link copied to clipboard
constructor(database: ERROR CLASS: Symbol not found for Database, tableName: String ? = null)

## Properties

asId
Link copied to clipboard
open override val ERROR CLASS: Symbol not found for ResultRow. asId : Key
asKey
Link copied to clipboard
abstract val ERROR CLASS: Symbol not found for ResultRow. asKey : Key

Same as asId in context of KeyValue repo

asObject
Link copied to clipboard
abstract val ERROR CLASS: Symbol not found for ResultRow. asObject : Value
database
Link copied to clipboard
open override val database : ERROR CLASS: Symbol not found for Database
keyColumn
Link copied to clipboard
abstract val keyColumn : ERROR CLASS: Symbol not found for Column<*>
selectAll
Link copied to clipboard
open val selectAll : ERROR CLASS: Symbol not found for Transaction.() -> ERROR CLASS: Symbol not found for Query
selectById
Link copied to clipboard
abstract val selectById : ( Key ) -> ERROR CLASS: Symbol not found for Op<kotlin/Boolean>
selectByIds
Link copied to clipboard
open val selectByIds : ( List < Key >) -> ERROR CLASS: Symbol not found for Op<kotlin/Boolean>
selectByValue
Link copied to clipboard
abstract val selectByValue : ( Value ) -> ERROR CLASS: Symbol not found for Op<kotlin/Boolean>

## Functions

asReadCRUDRepo
Link copied to clipboard
fun < K , V > ReadKeyValueRepo < K , V >. asReadCRUDRepo (): ReadCRUDFromKeyValueRepo < V , K >

Wraps this ReadKeyValueRepo as a ReadCRUDFromKeyValueRepo, exposing CRUD read operations.

asReadKeyValuesRepo
Link copied to clipboard
fun < K , V , VI : Iterable < V >> ReadKeyValueRepo < K , VI >. asReadKeyValuesRepo (): ReadKeyValuesFromKeyValueRepo < K , V , VI >

Wraps this ReadKeyValueRepo (mapping keys to iterables) as a ReadKeyValuesFromKeyValueRepo, exposing a one-to-many read interface.

cached
Link copied to clipboard
fun < Key , Value > ReadKeyValueRepo < Key , Value >. cached (kvCache: KVCache < Key , Value >, locker: SmartRWLocker = SmartRWLocker()): ReadKeyValueCacheRepo < Key , Value >
fun < Key , Value > ReadKeyValueRepo < Key , Value >. cached (kvCache: KeyValueRepo < Key , Value >, locker: SmartRWLocker = SmartRWLocker()): FullReadKeyValueCacheRepo < Key , Value >
contains
Link copied to clipboard
open suspend override fun contains (key: Key ): Boolean
count
Link copied to clipboard
open suspend override fun count (): Long
diff
Link copied to clipboard
suspend fun < Id , Registered > ReadKeyValueRepo < Id , Registered >. diff (other: Map < Id , Registered >): MapDiff < Id , Registered >

Computes the difference between all entries in this ReadKeyValueRepo and the given other map.

directlyCached
Link copied to clipboard
fun < Key , Value > ReadKeyValueRepo < Key , Value >. directlyCached (kvCache: KeyValueRepo < Key , Value >, locker: SmartRWLocker = SmartRWLocker()): DirectFullReadKeyValueCacheRepo < Key , Value >
get
Link copied to clipboard
open suspend override fun get (k: Key ): Value ?
getAll
Link copied to clipboard
open suspend override fun getAll (): Map < Key , Value >

Returns all key-value pairs in the repository as a Map. Default implementation iterates all pages using keys and get.

keys
Link copied to clipboard
open suspend override fun keys (pagination: Pagination , reversed: Boolean = false): PaginationResult < Key >

This method should use sorted by Keys search and return the PaginationResult. By default, it should use ascending sort for Keys

open suspend override fun keys (v: Value , pagination: Pagination , reversed: Boolean = false): PaginationResult < Key >

This method should use sorted by Keys search and return the PaginationResult. By default, it should use ascending sort for Keys.

maxPagePagination
Link copied to clipboard
inline suspend fun ReadKeyValueRepo <*, *>. maxPagePagination (): SimplePagination

Creates a pagination starting from the first page with size equal to the total count of items in this ReadKeyValueRepo. This effectively creates a single page containing all items.

values
Link copied to clipboard
open suspend override fun values (pagination: Pagination , reversed: Boolean = false): PaginationResult < Value >

This method should use sorted by Keys search and return the PaginationResult. By default, it should use ascending sort for Keys

withMapper
Link copied to clipboard
inline fun < FromKey , FromValue , ToKey , ToValue > ReadKeyValueRepo < ToKey , ToValue >. withMapper (mapper: MapperRepo < FromKey , FromValue , ToKey , ToValue >): ReadKeyValueRepo < FromKey , FromValue >

Wraps this ReadKeyValueRepo with a MapperRepo to expose a mapped ReadKeyValueRepo.

inline fun < FromKey , FromValue , ToKey , ToValue > ReadKeyValueRepo < ToKey , ToValue >. withMapper (noinline keyFromToTo: suspend FromKey .() -> ToKey = { this as ToKey }, noinline valueFromToTo: suspend FromValue .() -> ToValue = { this as ToValue }, noinline keyToToFrom: suspend ToKey .() -> FromKey = { this as FromKey }, noinline valueToToFrom: suspend ToValue .() -> FromValue = { this as FromValue }): ReadKeyValueRepo < FromKey , FromValue >

Wraps this ReadKeyValueRepo with inline conversion lambdas to expose a mapped ReadKeyValueRepo.