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 21d1aa402..974cfc015 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 @@ -290,6 +290,7 @@ public class ExportXmlBuilderDatasetProfile { ExternalDatasetsData externalDatasetsData = (ExternalDatasetsData) field.getData(); dataOut.setAttribute("label", externalDatasetsData.getLabel()); dataOut.setAttribute("multiAutocomplete", externalDatasetsData.getMultiAutoComplete().toString()); + dataOut.setAttribute("type", externalDatasetsData.getType()); break; case DATA_REPOSITORIES: DataRepositoriesData dataRepositoriesData = (DataRepositoriesData) field.getData(); diff --git a/dmp-backend/web/src/main/java/eu/eudat/models/data/components/commons/datafield/ExternalDatasetsData.java b/dmp-backend/web/src/main/java/eu/eudat/models/data/components/commons/datafield/ExternalDatasetsData.java index bc43f2d6a..cad4e4f19 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/models/data/components/commons/datafield/ExternalDatasetsData.java +++ b/dmp-backend/web/src/main/java/eu/eudat/models/data/components/commons/datafield/ExternalDatasetsData.java @@ -8,6 +8,7 @@ import java.util.Map; public class ExternalDatasetsData extends FieldData { private Boolean multiAutoComplete; + private String type; public Boolean getMultiAutoComplete() { return multiAutoComplete; @@ -17,11 +18,20 @@ public class ExternalDatasetsData extends FieldData { this.multiAutoComplete = multiAutoComplete; } + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + @Override public ExternalDatasetsData fromData(Object data) { if (data != null) { this.setLabel((String) ((Map) data).get("label")); this.setMultiAutoComplete(((Map) data).get("multiAutoComplete") != null && !((Map) data).get("multiAutoComplete").toString().isEmpty()? Boolean.parseBoolean( ((Map) data).get("multiAutoComplete").toString()) : false); + this.setType(((Map) data).get("type") != null && !((Map) data).get("type").toString().isEmpty()? ((Map) data).get("type").toString() : "other"); } return this; } @@ -38,6 +48,9 @@ public class ExternalDatasetsData extends FieldData { if (this.getMultiAutoComplete() != null) { root.setAttribute("multiAutoComplete", this.getMultiAutoComplete().toString()); } + if (this.getType() != null) { + root.setAttribute("type", this.getType()); + } return root; } @@ -45,6 +58,7 @@ public class ExternalDatasetsData extends FieldData { public ExternalDatasetsData fromXml(Element item) { this.setLabel(item != null ? item.getAttribute("label") : ""); this.setMultiAutoComplete(Boolean.parseBoolean(item.getAttribute("multiAutoComplete"))); + this.setType(item.getAttribute("type") != null ? item.getAttribute("type"): "other"); return this; } @@ -53,6 +67,7 @@ public class ExternalDatasetsData extends FieldData { HashMap dataMap = new HashMap(); dataMap.put("label", item != null && item.getAttributes().getLength() > 0? item.getAttribute("label") : ""); dataMap.put("multiAutoComplete", item != null && item.getAttributes().getLength() > 0? Boolean.parseBoolean(item.getAttribute("multiAutocomplete")) : false); + dataMap.put("type", item != null && item.getAttributes().getLength() > 0? item.getAttribute("type") : "other"); return dataMap; } }