From 3eaa39a3af69704e987ef51744dd35877d85b4f2 Mon Sep 17 00:00:00 2001 From: "panagiotis.kanakakis" Date: Wed, 19 Dec 2018 11:54:50 +0000 Subject: [PATCH] Fixes on converter --- .../repo/manager/service/utils/Converter.java | 38 ++++++++++++------- 1 file changed, 25 insertions(+), 13 deletions(-) diff --git a/src/main/java/eu/dnetlib/repo/manager/service/utils/Converter.java b/src/main/java/eu/dnetlib/repo/manager/service/utils/Converter.java index 223889b..b211c8f 100644 --- a/src/main/java/eu/dnetlib/repo/manager/service/utils/Converter.java +++ b/src/main/java/eu/dnetlib/repo/manager/service/utils/Converter.java @@ -1,5 +1,6 @@ package eu.dnetlib.repo.manager.service.utils; +import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import eu.dnetlib.domain.data.Repository; import eu.dnetlib.domain.data.RepositoryInterface; @@ -222,7 +223,7 @@ public class Converter { return repositoryInterface; } - public static String repositoryObjectToJson(Repository repository) throws JSONException { + public static String repositoryObjectToJson(Repository repository) throws JSONException, JsonProcessingException { JSONObject jsonObject = new JSONObject(); @@ -236,9 +237,11 @@ public class Converter { jsonObject.put("longitude",repository.getLongitude().toString()); jsonObject.put("latitude",repository.getLatitude().toString()); jsonObject.put("timezone",repository.getTimezone()); -// jsonObject.put("namespaceprefix",repository.getNamespacePrefix()); -// jsonObject.put("languages",repository.getOdLanguages()); - jsonObject.put("dateofvalidation",convertDateToString(repository.getDateOfValidation())); + + jsonObject.put("namespaceprefix",repository.getNamespacePrefix()!=null?repository.getNamespacePrefix():""); + jsonObject.put("languages",repository.getOdLanguages()!=null?repository.getOdLanguages():""); + + jsonObject.put("dateofcollection",repository.getDateOfCollection()!=null?convertDateToString(repository.getDateOfCollection()):""); /* * typology -> platform @@ -247,16 +250,19 @@ public class Converter { jsonObject.put("typology",repository.getDatasourceClass()); jsonObject.put("platform",repository.getTypology()); -// jsonObject.put("dateofcollection",convertDateToString(repository.getDateOfCollection())); -// jsonObject.put("activationId",repository.getActivationId()); + jsonObject.put("dateofvalidation",repository.getDateOfCollection()!=null?convertDateToString(repository.getDateOfCollection()):""); + jsonObject.put("activationId",repository.getActivationId()!=null?repository.getActivationId():""); + jsonObject.put("description",repository.getDescription()); -// jsonObject.put("eissn",repository.getEissn()); -// jsonObject.put("issn",repository.getIssn()); -// jsonObject.put("lissn",repository.getLissn()); + + jsonObject.put("eissn",repository.getEissn()!=null?repository.getEissn():""); + jsonObject.put("issn",repository.getIssn()!=null?repository.getIssn():""); + jsonObject.put("lissn",repository.getLissn()!=null?repository.getLissn():""); + jsonObject.put("registeredby",repository.getRegisteredBy()); -// jsonObject.put("aggregator",repository.getAggregator()); -// jsonObject.put("collectedfrom",repository.getCollectedFrom()); + jsonObject.put("aggregator",repository.getAggregator()!=null?repository.getAggregator():""); + jsonObject.put("collectedfrom",repository.getCollectedFrom()!=null?repository.getCollectedFrom():""); jsonObject.put("managed",repository.isRegistered()); @@ -269,8 +275,12 @@ public class Converter { JSONArray organizations = new JSONArray(); organizations.put(organization); -// jsonObject.put("organizations",organizations); + jsonObject.put("organizations",organizations); + //TODO check identitites + JSONArray identities = new JSONArray(); + identities.put(identities); + jsonObject.put("identities",identities); @@ -293,7 +303,9 @@ public class Converter { jsonObject.put("versioning",repository.getVersioning()); //datasource.get("platform"); //datasource.get("subjects");*/ - return jsonObject.toString(); + + ObjectMapper mapper = new ObjectMapper(); + return mapper.writeValueAsString(jsonObject); } public static String repositoryInterfaceObjectToJson(Repository repository,RepositoryInterface repositoryInterface) throws JSONException {