InMemoryCRUDRepository

class InMemoryCRUDRepository<I : Serializable, E : CRUDEntity<I, E>, CM : CRUDCreateModel, out TestData : CRUDTestData<I, E, *, CM, *>>(typeName: String, testData: TestData) : CRUDRepository<I, E> (source)

In-memory implementation of CRUDRepository for testing

Parameters

I

Id type of the data

E

Entity type of the data which is a CRUDEntity

CM

Create model type of the data which is a CRUDCreateModel

TestData

Test data type of the data which is a CRUDTestData

Constructors

Link copied to clipboard
fun <out TestData : CRUDTestData<I, E, *, CM, *>> InMemoryCRUDRepository(typeName: String, testData: TestData)

Properties

Link copied to clipboard

Map of entities by their ids, accessible for tests

Functions

Link copied to clipboard
fun clear()

Clears the repository for testing

Link copied to clipboard
open override fun findAllByDeletedAtIsNull(pageable: Pageable): Page<E>

Finds all entities for given pagination and deletion flag

Link copied to clipboard
open override fun findByIdAndDeletedAtIsNull(id: I): E?

Finds an entity with given id and deletion flag

Link copied to clipboard
open override fun save(entity: E): E

Saves given entity, used when creating a new entity

Link copied to clipboard
open override fun update(entity: E): Int

Updates given entity if it is at set version using optimistic locking