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 c88e39b9b..cce37ad56 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 @@ -246,6 +246,19 @@ public class ExportXmlBuilderDatasetProfile { } } break; + case UPLOAD: + UploadData uploadDataObject = (UploadData) field.getData(); + dataOut.setAttribute("label", uploadDataObject.getLabel()); + dataOut.setAttribute("maxFileSizeInMB", String.valueOf(uploadDataObject.getMaxFileSizeInMB())); + Element types = element.createElement("types"); + uploadDataObject.getTypes().forEach(type -> { + Element optionChild = element.createElement("option"); + optionChild.setAttribute("label", type.getLabel()); + optionChild.setAttribute("value", type.getValue()); + types.appendChild(optionChild); + }); + dataOut.appendChild(types); + break; case BOOLEAN_DECISION: BooleanDecisionData booleanDecisionDataObject = (BooleanDecisionData) field.getData(); dataOut.setAttribute("label", booleanDecisionDataObject.getLabel()); diff --git a/dmp-backend/web/src/main/java/eu/eudat/models/data/components/commons/datafield/UploadData.java b/dmp-backend/web/src/main/java/eu/eudat/models/data/components/commons/datafield/UploadData.java index c4083f3aa..c3b0dad59 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/models/data/components/commons/datafield/UploadData.java +++ b/dmp-backend/web/src/main/java/eu/eudat/models/data/components/commons/datafield/UploadData.java @@ -83,7 +83,13 @@ public class UploadData extends FieldData { this.types.add(newOption); } this.setLabel(((Map) data).get("label")); - this.setMaxFileSizeInMB(((Map) data).get("maxFileSizeInMB")); + Object maxFileSizeInMB = ((Map) data).get("maxFileSizeInMB"); + if(maxFileSizeInMB instanceof String){ // template export + this.setMaxFileSizeInMB(Integer.valueOf((String)maxFileSizeInMB)); + } + else if(maxFileSizeInMB instanceof Integer){ // template preview + this.setMaxFileSizeInMB((Integer)maxFileSizeInMB); + } } return this; }