diff --git a/src/main/java/org/gcube/data_catalogue/grsf_publish_ws/services/GrsfPublisherFisheryService.java b/src/main/java/org/gcube/data_catalogue/grsf_publish_ws/services/GrsfPublisherFisheryService.java index 4b6ef58..6ecdf4e 100644 --- a/src/main/java/org/gcube/data_catalogue/grsf_publish_ws/services/GrsfPublisherFisheryService.java +++ b/src/main/java/org/gcube/data_catalogue/grsf_publish_ws/services/GrsfPublisherFisheryService.java @@ -196,6 +196,8 @@ public class GrsfPublisherFisheryService { // manage the refers to if(sourceInPath.equals(Sources.GRSF)){ List refersTo = record.getRefersTo(); + if(refersTo == null || refersTo.isEmpty()) + throw new Exception("refers_to is empty"); for (RefersToBean refersToBean : refersTo) { resources.add(new ResourceBean(refersToBean.getUrl(), "Source of item " + futureTitle + " in the catalogue has id: " + refersToBean.getId(), "Information of a source of the item " + futureTitle, null, username, null, null)); @@ -270,7 +272,8 @@ public class GrsfPublisherFisheryService { // add the "Product URL" to the field Map> addField = new HashMap>(); - addField.put(CommonServiceUtils.ITEM_URL_FIELD, Arrays.asList(itemUrl)); + String modifiedUUIDKey = namespaces.containsKey(CommonServiceUtils.ITEM_URL_FIELD) ? namespaces.get(CommonServiceUtils.ITEM_URL_FIELD) : CommonServiceUtils.ITEM_URL_FIELD; + addField.put(modifiedUUIDKey, Arrays.asList(itemUrl)); catalogue.patchProductCustomFields(id, apiKey, addField); if(!groups.isEmpty()){ diff --git a/src/main/java/org/gcube/data_catalogue/grsf_publish_ws/services/GrsfPublisherStockService.java b/src/main/java/org/gcube/data_catalogue/grsf_publish_ws/services/GrsfPublisherStockService.java index 725a875..dac4337 100644 --- a/src/main/java/org/gcube/data_catalogue/grsf_publish_ws/services/GrsfPublisherStockService.java +++ b/src/main/java/org/gcube/data_catalogue/grsf_publish_ws/services/GrsfPublisherStockService.java @@ -187,6 +187,10 @@ public class GrsfPublisherStockService { if(sourceInPath.equals(Sources.GRSF)){ List refersTo = record.getRefersTo(); + + if(refersTo == null || refersTo.isEmpty()) + throw new Exception("refers_to is empty"); + for (RefersToBean refersToBean : refersTo) { resources.add(new ResourceBean(refersToBean.getUrl(), "Source of item " + futureTitle + " in the catalogue has id: " + refersToBean.getId(), "Information of a source of the item " + futureTitle, null, username, null, null)); @@ -263,7 +267,8 @@ public class GrsfPublisherStockService { // add the "Product URL" to the field Map> addField = new HashMap>(); - addField.put(CommonServiceUtils.ITEM_URL_FIELD, Arrays.asList(itemUrl)); + String modifiedUUIDKey = namespaces.containsKey(CommonServiceUtils.ITEM_URL_FIELD) ? namespaces.get(CommonServiceUtils.ITEM_URL_FIELD) : CommonServiceUtils.ITEM_URL_FIELD; + addField.put(modifiedUUIDKey, Arrays.asList(itemUrl)); catalogue.patchProductCustomFields(id, apiKey, addField); if(!groups.isEmpty()){