Package io.jmix.dynmodel.impl.db
Class DbDynamicModelStorage
java.lang.Object
io.jmix.dynmodel.impl.db.DbDynamicModelStorage
- All Implemented Interfaces:
DynamicModelStorage
@Component("dynmod_DbDynamicModelStorage")
public class DbDynamicModelStorage
extends Object
implements DynamicModelStorage
JDBC-backed storage for dynamic entity rows and static-entity dynamic side-table values.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionlongcount(LoadContext<?> context) Creates a dynamic entity row.void@Nullable Objectload(String entityName, Object id, @Nullable FetchPlan fetchPlan, Collection<AccessConstraint<?>> accessConstraints) loadList(LoadContext<?> context) loadValues(Object entity, @Nullable FetchPlan fetchPlan, Collection<AccessConstraint<?>> accessConstraints) loadValuesBatch(List<Object> entities, @Nullable FetchPlan fetchPlan, Collection<AccessConstraint<?>> accessConstraints) voidremoveCollection(Object entity, MetaProperty property) voidremoveValues(Object entity) voidstoreValues(Object entity, DynamicValues dynamicValues) Stores single-valued dynamic attributes of a static entity in its side table.voidsyncCollection(Object entity, MetaProperty property, List<?> items) Updates a dynamic entity row.
-
Constructor Details
-
DbDynamicModelStorage
public DbDynamicModelStorage()
-
-
Method Details
-
loadValues
public Map<String,Object> loadValues(Object entity, @Nullable FetchPlan fetchPlan, Collection<AccessConstraint<?>> accessConstraints) - Specified by:
loadValuesin interfaceDynamicModelStorage
-
loadValuesBatch
public Map<Object,Map<String, loadValuesBatchObject>> (List<Object> entities, @Nullable FetchPlan fetchPlan, Collection<AccessConstraint<?>> accessConstraints) - Specified by:
loadValuesBatchin interfaceDynamicModelStorage
-
storeValues
Stores single-valued dynamic attributes of a static entity in its side table.- Specified by:
storeValuesin interfaceDynamicModelStorage- Parameters:
entity- static owner entitydynamicValues- dynamic values to persist
-
removeValues
- Specified by:
removeValuesin interfaceDynamicModelStorage
-
syncCollection
- Specified by:
syncCollectionin interfaceDynamicModelStorage
-
removeCollection
- Specified by:
removeCollectionin interfaceDynamicModelStorage
-
load
public @Nullable Object load(String entityName, Object id, @Nullable FetchPlan fetchPlan, Collection<AccessConstraint<?>> accessConstraints) - Specified by:
loadin interfaceDynamicModelStorage
-
loadList
- Specified by:
loadListin interfaceDynamicModelStorage
-
count
- Specified by:
countin interfaceDynamicModelStorage
-
create
Creates a dynamic entity row.- Specified by:
createin interfaceDynamicModelStorage- Parameters:
entity- dynamic entity instance- Returns:
- the same entity instance
-
update
Updates a dynamic entity row.- Specified by:
updatein interfaceDynamicModelStorage- Parameters:
entity- dynamic entity instance- Returns:
- the same entity instance
-
delete
- Specified by:
deletein interfaceDynamicModelStorage
-