From 001cd0828b2fc9d24c1b99242b98ab998f3b6400 Mon Sep 17 00:00:00 2001 From: Thomas Georgios Giannos Date: Tue, 7 Nov 2023 14:32:37 +0200 Subject: [PATCH] Added dmp description template deletions on description template deleter --- .../deleter/DescriptionTemplateDeleter.java | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/dmp-backend/core/src/main/java/eu/eudat/model/deleter/DescriptionTemplateDeleter.java b/dmp-backend/core/src/main/java/eu/eudat/model/deleter/DescriptionTemplateDeleter.java index 62b8960a3..85df578ed 100644 --- a/dmp-backend/core/src/main/java/eu/eudat/model/deleter/DescriptionTemplateDeleter.java +++ b/dmp-backend/core/src/main/java/eu/eudat/model/deleter/DescriptionTemplateDeleter.java @@ -2,9 +2,11 @@ package eu.eudat.model.deleter; import eu.eudat.commons.enums.IsActive; import eu.eudat.data.DescriptionTemplateEntity; +import eu.eudat.data.DmpDescriptionTemplateEntity; import eu.eudat.data.UserDescriptionTemplateEntity; import eu.eudat.query.DescriptionQuery; import eu.eudat.query.DescriptionTemplateQuery; +import eu.eudat.query.DmpDescriptionTemplateQuery; import eu.eudat.query.UserDescriptionTemplateQuery; import gr.cite.tools.data.deleter.Deleter; import gr.cite.tools.data.deleter.DeleterFactory; @@ -63,24 +65,30 @@ public class DescriptionTemplateDeleter implements Deleter { logger.trace("changes saved"); } - public void delete(List datas) throws InvalidApplicationException { - logger.debug("will delete {} items", Optional.ofNullable(datas).map(List::size).orElse(0)); - if (datas == null || datas.isEmpty()) + public void delete(List data) throws InvalidApplicationException { + logger.debug("will delete {} items", Optional.ofNullable(data).map(List::size).orElse(0)); + if (data == null || data.isEmpty()) return; - List ids = datas.stream().map(DescriptionTemplateEntity::getId).distinct().collect(Collectors.toList()); + List ids = data.stream().map(DescriptionTemplateEntity::getId).distinct().collect(Collectors.toList()); { logger.debug("checking related - {}", UserDescriptionTemplateEntity.class.getSimpleName()); List items = this.queryFactory.query(UserDescriptionTemplateQuery.class).descriptionTemplateIds(ids).collect(); UserDescriptionTemplateDeleter deleter = this.deleterFactory.deleter(UserDescriptionTemplateDeleter.class); deleter.delete(items); } + { + logger.debug("checking related - {}", DmpDescriptionTemplateEntity.class.getSimpleName()); + List items = this.queryFactory.query(DmpDescriptionTemplateQuery.class).descriptionTemplateIds(ids).collect(); + DmpDescriptionTemplateDeleter deleter = this.deleterFactory.deleter(DmpDescriptionTemplateDeleter.class); + deleter.delete(items); + } //TODO can not delete profile if has Datasets Instant now = Instant.now(); - for (DescriptionTemplateEntity item : datas) { + for (DescriptionTemplateEntity item : data) { logger.trace("deleting item {}", item.getId()); item.setIsActive(IsActive.Inactive); item.setUpdatedAt(now);