From 66052f8af60bcf0a3e999af96146ca92ad430980 Mon Sep 17 00:00:00 2001 From: Diamantis Tziotzios Date: Thu, 5 Oct 2023 14:12:39 +0300 Subject: [PATCH] sync fixes --- .../web/src/main/java/eu/eudat/controllers/Admin.java | 8 ++++---- .../logic/builders/entity/DatasetProfileBuilder.java | 6 +++--- .../main/java/eu/eudat/logic/managers/AdminManager.java | 9 +++++---- .../eu/eudat/logic/managers/DatasetProfileManager.java | 7 +++++-- 4 files changed, 17 insertions(+), 13 deletions(-) diff --git a/dmp-backend/web/src/main/java/eu/eudat/controllers/Admin.java b/dmp-backend/web/src/main/java/eu/eudat/controllers/Admin.java index 3144f4957..b3ae6f92c 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/controllers/Admin.java +++ b/dmp-backend/web/src/main/java/eu/eudat/controllers/Admin.java @@ -64,7 +64,7 @@ public class Admin extends BaseController { public ResponseEntity addDmp(@Valid @RequestBody DatasetProfile profile, @ClaimedAuthorities(claims = {ADMIN ,DATASET_PROFILE_MANAGER}) Principal principal) throws Exception { //this.getLoggerService().info(principal, "Admin Added Dataset Profile"); DatasetProfile shortenProfile = profile.toShort(); - DescriptionTemplate modelDefinition = AdminManager.generateViewStyleDefinition(shortenProfile, getApiContext()); + DescriptionTemplate modelDefinition = AdminManager.generateViewStyleDefinition(shortenProfile, getApiContext(), descriptionTemplateTypeService); // modelDefinition.setType(getApiContext().getOperationsContext().getDatabaseRepository().getDescriptionTemplateTypeDao().findFromName(profile.getType())); modelDefinition.setType(descriptionTemplateTypeService.getEntityByName(profile.getType())); modelDefinition.setGroupId(UUID.randomUUID()); @@ -87,7 +87,7 @@ public class Admin extends BaseController { @RequestMapping(method = RequestMethod.POST, value = {"/addDmp/{id}"}, consumes = "application/json", produces = "application/json") public ResponseEntity> updateDmp(@PathVariable String id, @RequestBody DatasetProfile profile, @ClaimedAuthorities(claims = {ADMIN, DATASET_PROFILE_MANAGER}) Principal principal) throws Exception { DatasetProfile shortenProfile = profile.toShort(); - DescriptionTemplate modelDefinition = AdminManager.generateViewStyleDefinition(shortenProfile, getApiContext()); + DescriptionTemplate modelDefinition = AdminManager.generateViewStyleDefinition(shortenProfile, getApiContext(), descriptionTemplateTypeService); DescriptionTemplate datasetprofile = this.getApiContext().getOperationsContext().getDatabaseRepository().getDatasetProfileDao().find(UUID.fromString(id)); datasetprofile.setDefinition(modelDefinition.getDefinition()); Short oldStatus = datasetprofile.getStatus(); @@ -130,7 +130,7 @@ public class Admin extends BaseController { @RequestMapping(method = RequestMethod.POST, value = {"/preview"}, consumes = "application/json", produces = "application/json") public ResponseEntity> getPreview(@RequestBody DatasetProfile profile, @ClaimedAuthorities(claims = {ADMIN, DATASET_PROFILE_MANAGER}) Principal principal) throws Exception { - DescriptionTemplate modelDefinition = AdminManager.generateViewStyleDefinition(profile, getApiContext()); + DescriptionTemplate modelDefinition = AdminManager.generateViewStyleDefinition(profile, getApiContext(), descriptionTemplateTypeService); eu.eudat.models.data.user.composite.DatasetProfile datasetProfile = userManager.generateDatasetProfileModel(modelDefinition); PagedDatasetProfile pagedDatasetProfile = new PagedDatasetProfile(); pagedDatasetProfile.buildPagedDatasetProfile(datasetProfile); @@ -181,7 +181,7 @@ public class Admin extends BaseController { eu.eudat.models.data.admin.composite.DatasetProfile datasetProfileEntity = datasetProfileModel.toAdminCompositeModel(file.getOriginalFilename()); DescriptionTemplate modelDefinition; if (id == null) { - modelDefinition = AdminManager.generateViewStyleDefinition(datasetProfileEntity, getApiContext()); + modelDefinition = AdminManager.generateViewStyleDefinition(datasetProfileEntity, getApiContext(), descriptionTemplateTypeService); DescriptionTemplate descriptionTemplate = this.getApiContext().getOperationsContext().getDatabaseRepository().getDatasetProfileDao().createOrUpdate(modelDefinition); UserDatasetProfile userDatasetProfile = new UserDatasetProfile(); userDatasetProfile.setDatasetProfile(descriptionTemplate); diff --git a/dmp-backend/web/src/main/java/eu/eudat/logic/builders/entity/DatasetProfileBuilder.java b/dmp-backend/web/src/main/java/eu/eudat/logic/builders/entity/DatasetProfileBuilder.java index 2300fa6e7..6cd3c86aa 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/logic/builders/entity/DatasetProfileBuilder.java +++ b/dmp-backend/web/src/main/java/eu/eudat/logic/builders/entity/DatasetProfileBuilder.java @@ -1,7 +1,7 @@ package eu.eudat.logic.builders.entity; import eu.eudat.data.entities.DescriptionTemplate; -import eu.eudat.data.entities.DescriptionTemplateType; +import eu.eudat.data.DescriptionTemplateTypeEntity; import eu.eudat.logic.builders.Builder; import eu.eudat.data.entities.Dataset; @@ -18,7 +18,7 @@ public class DatasetProfileBuilder extends Builder { private String label; - private DescriptionTemplateType type; + private DescriptionTemplateTypeEntity type; private Set dataset; @@ -44,7 +44,7 @@ public class DatasetProfileBuilder extends Builder { return this; } - public DatasetProfileBuilder type(DescriptionTemplateType type) { + public DatasetProfileBuilder type(DescriptionTemplateTypeEntity type) { this.type = type; return this; } diff --git a/dmp-backend/web/src/main/java/eu/eudat/logic/managers/AdminManager.java b/dmp-backend/web/src/main/java/eu/eudat/logic/managers/AdminManager.java index afde380e8..d82e2832b 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/logic/managers/AdminManager.java +++ b/dmp-backend/web/src/main/java/eu/eudat/logic/managers/AdminManager.java @@ -3,7 +3,7 @@ package eu.eudat.logic.managers; import eu.eudat.data.dao.entities.DatasetDao; import eu.eudat.data.dao.entities.DatasetProfileDao; import eu.eudat.data.entities.DescriptionTemplate; -import eu.eudat.data.entities.DescriptionTemplateType; +import eu.eudat.data.DescriptionTemplateTypeEntity; import eu.eudat.exceptions.datasetprofile.DatasetProfileWithDatasetsExeption; import eu.eudat.logic.builders.entity.DatasetProfileBuilder; import eu.eudat.models.data.entities.xmlmodels.datasetprofiledefinition.ViewStyleModel; @@ -11,6 +11,7 @@ import eu.eudat.models.data.admin.composite.DatasetProfile; import eu.eudat.logic.services.ApiContext; import eu.eudat.logic.utilities.builders.ModelBuilder; import eu.eudat.logic.utilities.builders.XmlBuilder; +import eu.eudat.service.DescriptionTemplateTypeService; import org.w3c.dom.Document; import org.w3c.dom.Element; @@ -19,7 +20,7 @@ import java.util.UUID; public class AdminManager { - public static DescriptionTemplate generateViewStyleDefinition(DatasetProfile profile, ApiContext apiContext) throws Exception { + public static DescriptionTemplate generateViewStyleDefinition(DatasetProfile profile, ApiContext apiContext, DescriptionTemplateTypeService descriptionTemplateTypeService) throws Exception { ViewStyleModel viewStyleModel = new ViewStyleModel(); viewStyleModel.setSections(new ModelBuilder().toViewStyleDefinition(profile.getSections(), eu.eudat.models.data.entities.xmlmodels.datasetprofiledefinition.Section.class)); viewStyleModel.setPages(new ModelBuilder().toViewStyleDefinition(profile.getPages(), eu.eudat.models.data.entities.xmlmodels.datasetprofiledefinition.Page.class)); @@ -36,9 +37,9 @@ public class AdminManager { profile.setLanguage("en"); } - DescriptionTemplateType type; + DescriptionTemplateTypeEntity type; try { - type = apiContext.getOperationsContext().getDatabaseRepository().getDescriptionTemplateTypeDao().findFromName(profile.getType()); + type = descriptionTemplateTypeService.getEntityByName(profile.getType()); } catch (Exception e) { throw new Exception("Description template type '" + profile.getType() + "' could not be found."); diff --git a/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DatasetProfileManager.java b/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DatasetProfileManager.java index 6c69469d4..bee256b28 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DatasetProfileManager.java +++ b/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DatasetProfileManager.java @@ -28,6 +28,7 @@ import eu.eudat.models.data.listingmodels.UserInfoListingModel; import eu.eudat.models.data.mail.SimpleMail; import eu.eudat.models.data.security.Principal; import eu.eudat.queryable.QueryableList; +import eu.eudat.service.DescriptionTemplateTypeService; import eu.eudat.types.Authorities; import eu.eudat.types.MetricNames; import org.slf4j.Logger; @@ -71,14 +72,16 @@ public class DatasetProfileManager { private ConfigLoader configLoader; private final MetricsManager metricsManager; + private final DescriptionTemplateTypeService descriptionTemplateTypeService; @Autowired - public DatasetProfileManager(ApiContext apiContext, Environment environment, ConfigLoader configLoader, MetricsManager metricsManager) { + public DatasetProfileManager(ApiContext apiContext, Environment environment, ConfigLoader configLoader, MetricsManager metricsManager, DescriptionTemplateTypeService descriptionTemplateTypeService) { this.apiContext = apiContext; this.databaseRepository = apiContext.getOperationsContext().getDatabaseRepository(); this.environment = environment; this.configLoader = configLoader; this.metricsManager = metricsManager; + this.descriptionTemplateTypeService = descriptionTemplateTypeService; } @Transactional @@ -293,7 +296,7 @@ public class DatasetProfileManager { if (latestVersionDescriptionTemplate.getVersion().equals(oldDescriptionTemplate.getVersion())){ eu.eudat.models.data.admin.composite.DatasetProfile sortedProfile = profile.toShort(); - DescriptionTemplate modelDefinition = AdminManager.generateViewStyleDefinition(sortedProfile, apiContext); + DescriptionTemplate modelDefinition = AdminManager.generateViewStyleDefinition(sortedProfile, apiContext, descriptionTemplateTypeService); // modelDefinition.setLabel(oldDescriptionTemplate.getLabel()); modelDefinition.setVersion((short) (oldDescriptionTemplate.getVersion() + 1)); modelDefinition.setGroupId(oldDescriptionTemplate.getGroupId());