From 814a9b2fee6bb7cf91f3b05efe4f312c8a33b7a4 Mon Sep 17 00:00:00 2001 From: George Kalampokis Date: Mon, 20 Dec 2021 14:19:17 +0200 Subject: [PATCH] Fix bad RDA Common Standard name and minor RDA mapper improvement --- .../java/eu/eudat/models/rda/mapper/HostRDAMapper.java | 9 +++++++++ .../web/src/main/resources/RDACommonStandards.txt | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/dmp-backend/web/src/main/java/eu/eudat/models/rda/mapper/HostRDAMapper.java b/dmp-backend/web/src/main/java/eu/eudat/models/rda/mapper/HostRDAMapper.java index 43c0bad7d..566373a4d 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/models/rda/mapper/HostRDAMapper.java +++ b/dmp-backend/web/src/main/java/eu/eudat/models/rda/mapper/HostRDAMapper.java @@ -1,6 +1,8 @@ package eu.eudat.models.rda.mapper; +import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; import eu.eudat.logic.utilities.helpers.MyStringUtils; import eu.eudat.models.rda.Host; import eu.eudat.models.rda.PidSystem; @@ -48,6 +50,13 @@ public class HostRDAMapper { rda.setAdditionalProperty(ImportPropertyName.DESCRIPTION.getName(), node.get("id").asText()); break; case GEO_LOCATION: + if (rdaValue.startsWith("{")) { + try { + rdaValue = new ObjectMapper().readValue(rdaValue, Map.class).get("id").toString(); + } catch (JsonProcessingException e) { + logger.warn(e.getLocalizedMessage() + ". Try to pass value as is"); + } + } rda.setGeoLocation(Host.GeoLocation.fromValue(rdaValue)); rda.setAdditionalProperty(ImportPropertyName.GEO_LOCATION.getName(), node.get("id").asText()); break; diff --git a/dmp-backend/web/src/main/resources/RDACommonStandards.txt b/dmp-backend/web/src/main/resources/RDACommonStandards.txt index d8693586b..ea3e9d073 100644 --- a/dmp-backend/web/src/main/resources/RDACommonStandards.txt +++ b/dmp-backend/web/src/main/resources/RDACommonStandards.txt @@ -1,6 +1,6 @@ dataset.data_quality_assurance dataset.distribution.access_url -dataset.distribution.available_till +dataset.distribution.available_until dataset.distribution.byte_size dataset.distribution.data_access dataset.distribution.description