T
- ID
- @NoRepositoryBean public class JmixDataRepositoryImpl<T,ID> extends java.lang.Object implements JmixDataRepository<T,ID>
Modifier and Type | Field and Description |
---|---|
protected DataManager |
dataManager |
protected Metadata |
metadata |
protected CrudMethodMetadata.Accessor |
methodMetadataAccessor |
protected UnconstrainedDataManager |
unconstrainedDataManager |
Constructor and Description |
---|
JmixDataRepositoryImpl(java.lang.Class<T> domainClass,
DataManager dataManager,
Metadata metadata,
CrudMethodMetadata.Accessor methodMetadataAccessor) |
Modifier and Type | Method and Description |
---|---|
protected FluentLoader.ByCondition<T> |
allLoader() |
long |
count() |
T |
create()
Instantiate an entity.
|
void |
delete(T entity) |
void |
deleteAll() |
void |
deleteAll(java.lang.Iterable<? extends T> entities) |
void |
deleteAllById(java.lang.Iterable<? extends ID> ids) |
void |
deleteById(ID id) |
protected void |
deleteInternal(java.lang.Object... entities) |
boolean |
existsById(ID id) |
java.lang.Iterable<T> |
findAll() |
java.lang.Iterable<T> |
findAll(FetchPlan fetchPlan)
Returns all instances of the type
T loaded according to fetchPlan |
java.lang.Iterable<T> |
findAll(java.lang.Iterable<ID> ids,
FetchPlan fetchPlan)
Returns all instances of the type
T with the given IDs loaded according to fetchPlan |
org.springframework.data.domain.Page<T> |
findAll(org.springframework.data.domain.Pageable pageable) |
org.springframework.data.domain.Page<T> |
findAll(org.springframework.data.domain.Pageable pageable,
FetchPlan fetchPlan)
Returns a
Page of entities meeting the paging restriction provided in the Pageable object. |
java.lang.Iterable<T> |
findAll(org.springframework.data.domain.Sort sort) |
java.lang.Iterable<T> |
findAll(org.springframework.data.domain.Sort sort,
FetchPlan fetchPlan)
Returns all entities sorted by the given options and loaded by specified FetchPlan.
|
java.lang.Iterable<T> |
findAllById(java.lang.Iterable<ID> ids) |
java.util.Optional<T> |
findById(ID id) |
java.util.Optional<T> |
findById(ID id,
FetchPlan fetchPlan)
Loads an entity by its
id according to fetchPlan |
T |
getById(ID id,
FetchPlan fetchPlan)
Loads an entity by its
id according to fetchPlan |
protected UnconstrainedDataManager |
getDataManager() |
java.lang.Class<T> |
getDomainClass() |
protected java.util.Map<java.lang.String,java.io.Serializable> |
getHints() |
protected FluentLoader.ById<T> |
idLoader(ID id) |
<S extends T> |
save(S entity) |
<S extends T> |
saveAll(java.lang.Iterable<S> entities) |
void |
setDomainClass(java.lang.Class<T> domainClass) |
protected java.util.Collection<ID> |
toCollection(java.lang.Iterable<ID> ids) |
protected Metadata metadata
protected UnconstrainedDataManager unconstrainedDataManager
protected DataManager dataManager
protected CrudMethodMetadata.Accessor methodMetadataAccessor
public JmixDataRepositoryImpl(java.lang.Class<T> domainClass, DataManager dataManager, Metadata metadata, CrudMethodMetadata.Accessor methodMetadataAccessor)
public T create()
JmixDataRepository
Metadata.create(Class)
create
in interface JmixDataRepository<T,ID>
<T>
.public java.util.Optional<T> findById(ID id, FetchPlan fetchPlan)
JmixDataRepository
id
according to fetchPlan
findById
in interface JmixDataRepository<T,ID>
id
- must not be null.public T getById(ID id, FetchPlan fetchPlan)
JmixDataRepository
id
according to fetchPlan
getById
in interface JmixDataRepository<T,ID>
id
- must not be null.public java.lang.Iterable<T> findAll(FetchPlan fetchPlan)
JmixDataRepository
T
loaded according to fetchPlan
findAll
in interface JmixDataRepository<T,ID>
public java.lang.Iterable<T> findAll(java.lang.Iterable<ID> ids, @Nullable FetchPlan fetchPlan)
JmixDataRepository
T
with the given IDs loaded according to fetchPlan
If some or all ids are not found, no entities are returned for these IDs.
findAll
in interface JmixDataRepository<T,ID>
ids
- must not be null nor contain any null values.fetchPlan
- defines entity graph to load. FetchPlan#BASE
will be used instead in case of null.public <S extends T> S save(S entity)
public <S extends T> java.lang.Iterable<S> saveAll(java.lang.Iterable<S> entities)
public boolean existsById(ID id)
public java.lang.Iterable<T> findAll()
public long count()
public void deleteById(ID id)
public void delete(T entity)
public void deleteAll(java.lang.Iterable<? extends T> entities)
public void deleteAllById(java.lang.Iterable<? extends ID> ids)
public void deleteAll()
protected void deleteInternal(java.lang.Object... entities)
public java.lang.Class<T> getDomainClass()
public void setDomainClass(java.lang.Class<T> domainClass)
public java.lang.Iterable<T> findAll(org.springframework.data.domain.Sort sort)
public org.springframework.data.domain.Page<T> findAll(org.springframework.data.domain.Pageable pageable)
public java.lang.Iterable<T> findAll(org.springframework.data.domain.Sort sort, @Nullable FetchPlan fetchPlan)
JmixDataRepository
findAll
in interface JmixDataRepository<T,ID>
fetchPlan
- to load entity. FetchPlan#BASE
will be used if fetchPlan == null
public org.springframework.data.domain.Page<T> findAll(org.springframework.data.domain.Pageable pageable, @Nullable FetchPlan fetchPlan)
JmixDataRepository
Page
of entities meeting the paging restriction provided in the Pageable
object.
Entities will be loaded according to passed fetchPlan
findAll
in interface JmixDataRepository<T,ID>
fetchPlan
- to load entities. FetchPlan#BASE
will be used if fetchPlan == null
protected UnconstrainedDataManager getDataManager()
protected java.util.Map<java.lang.String,java.io.Serializable> getHints()
protected FluentLoader.ByCondition<T> allLoader()
protected FluentLoader.ById<T> idLoader(ID id)