Package io.jmix.core.repository
Interface JmixDataRepository<T,ID>
- Type Parameters:
T- the domain type the repository managesID- the type of the id of the entity the repository manages
- All Superinterfaces:
org.springframework.data.repository.CrudRepository<T,,ID> org.springframework.data.repository.PagingAndSortingRepository<T,,ID> org.springframework.data.repository.Repository<T,ID>
- All Known Implementing Classes:
JmixDataRepositoryImpl
@NoRepositoryBean
public interface JmixDataRepository<T,ID>
extends org.springframework.data.repository.PagingAndSortingRepository<T,ID>
Central Jmix data repository interface.
Extends functionality of PagingAndSortingRepository by adding FetchPlan parameters to common methods and providing
other Jmix-specific methods
- See Also:
-
PagingAndSortingRepository
-
Method Summary
Modifier and TypeMethodDescriptioncreate()Instantiate an entity.Returns all instances of the typeTloaded according tofetchPlanReturns all instances of the typeTwith the given IDs loaded according tofetchPlanorg.springframework.data.domain.Page<T>Returns aPageof entities meeting the paging restriction provided in thePageableobject.Returns all entities sorted by the given options and loaded by specified FetchPlan.Loads an entity by itsidaccording tofetchPlanLoads an entity by itsidaccording tofetchPlanMethods inherited from interface org.springframework.data.repository.CrudRepository
count, delete, deleteAll, deleteAll, deleteAllById, deleteById, existsById, findAll, findAllById, findById, save, saveAllMethods inherited from interface org.springframework.data.repository.PagingAndSortingRepository
findAll, findAll
-
Method Details
-
create
T create()Instantiate an entity. InvokesMetadata.create(Class)- Returns:
- new instance of
<T>.
-
findById
Loads an entity by itsidaccording tofetchPlan- Parameters:
id- must not be null.- Returns:
- the entity with the given id or Optional#empty() if none found.
-
getById
Loads an entity by itsidaccording tofetchPlan- Parameters:
id- must not be null.- Returns:
- the entity with the given id
- Throws:
IllegalStateException- if nothing was loaded
-
findAll
Returns all instances of the typeTloaded according tofetchPlan- Returns:
- all entities
-
findAll
Returns all instances of the typeTwith the given IDs loaded according tofetchPlanIf some or all ids are not found, no entities are returned for these IDs.
- Parameters:
fetchPlan- defines entity graph to load.FetchPlan.BASEwill be used instead in case of null.ids- must not be null nor contain any null values.- Returns:
- guaranteed to be not null. The size can be equal or less than the number of given ids.
- Throws:
IllegalArgumentException- in case the givenidsor one of its items is null.
-
findAll
Returns all entities sorted by the given options and loaded by specified FetchPlan.- Parameters:
fetchPlan- to load entity.FetchPlan.BASEwill be used iffetchPlan == null- Returns:
- all entities sorted by the given options
-
findAll
org.springframework.data.domain.Page<T> findAll(org.springframework.data.domain.Pageable pageable, @Nullable FetchPlan fetchPlan) Returns aPageof entities meeting the paging restriction provided in thePageableobject. Entities will be loaded according to passedfetchPlan- Parameters:
fetchPlan- to load entities.FetchPlan.BASEwill be used iffetchPlan == null- Returns:
- a page of entities
-