Package io.jmix.core.impl.importexport
Interface EntityImportPlanJsonBuilder
- All Known Implementing Classes:
EntityImportPlanJsonBuilderImpl
public interface EntityImportPlanJsonBuilder
Class that is used for building an
EntityImportPlan based on the JSON object that represents an entity.-
Method Summary
Modifier and TypeMethodDescriptionbuildFromJson(String json, MetaClass metaClass) Builds anEntityImportPlanthat contains all fields that are presented in the JSON object.buildFromJsonArray(com.google.gson.JsonArray jsonArray, MetaClass metaClass) Builds anEntityImportPlanthat contains properties from all collection members.
-
Method Details
-
buildFromJson
Builds anEntityImportPlanthat contains all fields that are presented in the JSON object.All references will be added to the plan as a
ReferenceImportBehaviour.ERROR_ON_MISSINGbehavior. All references that have a @Composition annotation will be added to the plan with a property that has aEntityImportPlanProperty. This means that compositions will be persisted during the import. Absent collection items will be removed from the database.For many-to-many association items corresponding entities will be searched in the database. If any of them is missing, an error will be thrown. Absent collection members will be excluded from the many-to-many association.
- Parameters:
json- a string that represents a JSON objectmetaClass- a MetaClass of the entity- Returns:
- an EntityImportPlan
-
buildFromJsonArray
Builds anEntityImportPlanthat contains properties from all collection members. If the first member contains the property A, and the second one contains a property B then a result import plan will contain both properties A and B. Plans for nested collections (2nd level compositions) are also merged.- Parameters:
jsonArray- a JsonArraymetaClass- a metaClass of entities that are in the jsonArray- Returns:
- an EntityImportPlan
-