Package io.jmix.core.datastore
Class AbstractDataStore
java.lang.Object
io.jmix.core.datastore.AbstractDataStore
- All Implemented Interfaces:
- DataStore
- Direct Known Subclasses:
- JpaDataStore,- RestDataStore
- 
Nested Class SummaryNested ClassesModifier and TypeClassDescriptionprotected static classprotected static interfaceDesigned to store and share various data during load transaction.
- 
Field SummaryFieldsModifier and TypeFieldDescriptionprotected EntityStatesprotected KeyValueMapperprotected final List<DataStoreEventListener>protected Metadataprotected MetadataTools
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionprotected voidbeforeLoadTransactionCommit(LoadContext<?> context, Collection<Object> entities, AbstractDataStore.TransactionContextState transactionContextState) protected voidbeforeSaveTransactionCommit(SaveContext context, Collection<Object> savedEntities, Collection<Object> removedEntities) protected voidbeforeSaveTransactionRollback(SaveContext context) protected abstract ObjectbeginLoadTransaction(boolean joinTransaction) protected abstract ObjectbeginSaveTransaction(boolean joinTransaction) checkAndReorderLoadedEntities(LoadContext<?> context, List<Object> entities) protected abstract voidcommitTransaction(Object transaction) protected voidcopyNonPersistentAttributes(Object source, Object destination) protected abstract longcountAll(LoadContext<?> context) protected abstract longcountAllValues(ValueLoadContext context) deleteAll(SaveContext context) protected <T extends BaseDataStoreEvent>
 voidfireEvent(T event) longgetCount(LoadContext<?> context) Returns the number of entity instances for the given query passed in theLoadContext.longgetCount(ValueLoadContext context) Returns the number of key-value pairs for the given query passed in theValueLoadContext.protected FetchPlangetFetchPlanForSave(Map<Object, FetchPlan> fetchPlans, Object entity) protected abstract AbstractDataStore.TransactionContextStategetTransactionContextState(boolean isJoinTransaction) Invoked afterbeginLoadTransaction(boolean).load(LoadContext<?> context) Loads a single entity instance.loadAll(LoadContext<?> context) loadAllAfterSave(SaveContext context, Set<Object> savedEntities) loadAllValues(ValueLoadContext context) loadList(LoadContext<?> context) Loads collection of entity instances.loadListByBatches(LoadContext<?> context, int actualSize, EventSharedState eventState) protected abstract ObjectloadOne(LoadContext<?> context) loadValues(ValueLoadContext context) Loads list of key-value pairs.voidregisterInterceptor(DataStoreEventListener listener) protected abstract voidrollbackTransaction(Object transaction) Set<?>save(SaveContext context) Saves a collection of entity instances.saveAll(SaveContext context) voidsetEntityStates(EntityStates entityStates) voidsetKeyValueMapper(KeyValueMapper keyValueMapper) voidsetMetadata(Metadata metadata) voidsetMetadataTools(MetadataTools metadataTools) 
- 
Field Details- 
listeners
- 
metadata
- 
metadataTools
- 
entityStates
- 
keyValueMapper
 
- 
- 
Constructor Details- 
AbstractDataStorepublic AbstractDataStore()
 
- 
- 
Method Details- 
setMetadata
- 
setMetadataTools
- 
setEntityStates
- 
setKeyValueMapper
- 
loadDescription copied from interface:DataStoreLoads a single entity instance.
- 
loadListDescription copied from interface:DataStoreLoads collection of entity instances.
- 
getCountDescription copied from interface:DataStoreReturns the number of entity instances for the given query passed in theLoadContext.
- 
saveDescription copied from interface:DataStoreSaves a collection of entity instances.
- 
loadValuesDescription copied from interface:DataStoreLoads list of key-value pairs.- Specified by:
- loadValuesin interface- DataStore
- Parameters:
- context- defines a query for scalar values and a list of keys for returned KeyValueEntity
- Returns:
- list of KeyValueEntity instances
 
- 
getCountDescription copied from interface:DataStoreReturns the number of key-value pairs for the given query passed in theValueLoadContext.
- 
loadOne
- 
loadAll
- 
countAll
- 
saveAll
- 
deleteAll
- 
loadAllValues
- 
countAllValues
- 
beginLoadTransaction
- 
beginSaveTransaction
- 
commitTransaction
- 
rollbackTransaction
- 
getTransactionContextStateprotected abstract AbstractDataStore.TransactionContextState getTransactionContextState(boolean isJoinTransaction) Invoked afterbeginLoadTransaction(boolean).
 Override this method to createAbstractDataStore.TransactionContextStateimplementation and store required data in it.
- 
beforeLoadTransactionCommitprotected void beforeLoadTransactionCommit(LoadContext<?> context, Collection<Object> entities, AbstractDataStore.TransactionContextState transactionContextState) 
- 
beforeSaveTransactionCommitprotected void beforeSaveTransactionCommit(SaveContext context, Collection<Object> savedEntities, Collection<Object> removedEntities) 
- 
beforeSaveTransactionRollback
- 
registerInterceptor
- 
fireEvent
- 
checkAndReorderLoadedEntities
- 
loadAllAfterSave
- 
getFetchPlanForSave
- 
copyNonPersistentAttributes
 
-