From 7f83b0f19ac8c6e8a3478c037f0244829c9543c7 Mon Sep 17 00:00:00 2001 From: George Kalampokis Date: Fri, 11 Sep 2020 15:57:52 +0300 Subject: [PATCH 1/3] Fixed minor issue with template import --- .../models/data/components/commons/datafield/WordListData.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dmp-backend/web/src/main/java/eu/eudat/models/data/components/commons/datafield/WordListData.java b/dmp-backend/web/src/main/java/eu/eudat/models/data/components/commons/datafield/WordListData.java index 1a2bc455f..6f16abf51 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/models/data/components/commons/datafield/WordListData.java +++ b/dmp-backend/web/src/main/java/eu/eudat/models/data/components/commons/datafield/WordListData.java @@ -33,7 +33,7 @@ public class WordListData extends ComboBoxData { @Override public Element toXml(Document doc) { Element root = super.toXml(doc); - root.setAttribute("multiList", this.multiList.toString()); + root.setAttribute("multiList", this.multiList != null ? this.multiList.toString() : "false"); Element element = doc.createElement("options"); if (this.options != null) { for (Option option : this.options) { From 2390a33a98712c3a6fa969b4623f11576b05c174 Mon Sep 17 00:00:00 2001 From: George Kalampokis Date: Fri, 11 Sep 2020 16:31:57 +0300 Subject: [PATCH 2/3] When uploading dataset template xmls delete the working directory copy of the file --- .../java/eu/eudat/logic/managers/DatasetProfileManager.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) 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 e38ed2333..34505d0fa 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 @@ -199,7 +199,10 @@ public class DatasetProfileManager { public eu.eudat.logic.utilities.documents.xml.datasetProfileXml.datasetProfileModel.DatasetProfile createDatasetProfileFromXml(MultipartFile multiPartFile) { ImportXmlBuilderDatasetProfile xmlBuilder = new ImportXmlBuilderDatasetProfile(); try { - return xmlBuilder.build(convert(multiPartFile)); + File localFile = convert(multiPartFile); + eu.eudat.logic.utilities.documents.xml.datasetProfileXml.datasetProfileModel.DatasetProfile profile = xmlBuilder.build(localFile); + Files.deleteIfExists(localFile.toPath()); + return profile; } catch (IOException e) { logger.error(e.getMessage(), e); } From 7b800b2347945d42bfc9c927708ae2d3bdd9a914 Mon Sep 17 00:00:00 2001 From: George Kalampokis Date: Fri, 11 Sep 2020 16:54:32 +0300 Subject: [PATCH 3/3] Fix multiList on xml export --- .../xml/datasetProfileXml/ExportXmlBuilderDatasetProfile.java | 1 + .../data/components/commons/datafield/WordListData.java | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/dmp-backend/web/src/main/java/eu/eudat/logic/utilities/documents/xml/datasetProfileXml/ExportXmlBuilderDatasetProfile.java b/dmp-backend/web/src/main/java/eu/eudat/logic/utilities/documents/xml/datasetProfileXml/ExportXmlBuilderDatasetProfile.java index 45d53242b..c86294e74 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/logic/utilities/documents/xml/datasetProfileXml/ExportXmlBuilderDatasetProfile.java +++ b/dmp-backend/web/src/main/java/eu/eudat/logic/utilities/documents/xml/datasetProfileXml/ExportXmlBuilderDatasetProfile.java @@ -205,6 +205,7 @@ public class ExportXmlBuilderDatasetProfile { WordListData wordListDataObject = (WordListData) field.getData(); dataOut.setAttribute("label", wordListDataObject.getLabel()); dataOut.setAttribute("type", wordListDataObject.getType()); + dataOut.setAttribute("multiList", wordListDataObject.getMultiList().toString()); Element options = element.createElement("options"); wordListDataObject.getOptions().forEach(optionChildFor -> { Element optionChild = element.createElement("option"); diff --git a/dmp-backend/web/src/main/java/eu/eudat/models/data/components/commons/datafield/WordListData.java b/dmp-backend/web/src/main/java/eu/eudat/models/data/components/commons/datafield/WordListData.java index 6f16abf51..51cd7f840 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/models/data/components/commons/datafield/WordListData.java +++ b/dmp-backend/web/src/main/java/eu/eudat/models/data/components/commons/datafield/WordListData.java @@ -78,7 +78,8 @@ public class WordListData extends ComboBoxData { this.options.add(newOption); } } - this.multiList = (Boolean) ((Map) data).get("multiList"); + Object multiList1 = ((Map) data).get("multiList"); + this.multiList = multiList1 instanceof String ? Boolean.parseBoolean((String) multiList1) : (Boolean) multiList1; } return this; } @@ -92,6 +93,7 @@ public class WordListData extends ComboBoxData { @Override public Map toMap(Element item) { HashMap dataMap = new HashMap(); + dataMap.put("multiList", item != null ? item.getAttribute("multiList") : "false"); dataMap.put("label", item != null ? item.getAttribute("label") : ""); dataMap.put("type", item != null ? item.getAttribute("type") : "wordlist"); Element optionsElement = (Element) item.getElementsByTagName("options").item(0);