From 240be91c5e60886142cc5939b2f052f5908ce536 Mon Sep 17 00:00:00 2001 From: Enrico Ottonello Date: Mon, 19 Oct 2020 12:20:56 +0200 Subject: [PATCH] added rest method to index single record by its identifier --- .../eu/dnetlib/ariadneplus/graphdb/GraphDBClient.java | 3 ++- .../publisher/AriadnePlusPublisherController.java | 10 +++++----- .../publisher/AriadnePlusPublisherHelper.java | 4 ++-- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/graphdb/GraphDBClient.java b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/graphdb/GraphDBClient.java index 2d7e8f9..9a8b78c 100644 --- a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/graphdb/GraphDBClient.java +++ b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/graphdb/GraphDBClient.java @@ -395,9 +395,10 @@ public class GraphDBClient { return identifiers; } - public String indexOnESByIdentifiers(String datasource, String collectionId, String resourceType, List identifiers) throws AriadnePlusPublisherException { + public String indexOnESByIdentifier(String datasource, String collectionId, String resourceType, String identifier) throws AriadnePlusPublisherException { String report = ""; try { + List identifiers = Arrays.asList(identifier); log.info("Start indexing from "+ datasource + " " + collectionId); runSPQRLQuery.setupConnection( getWriterUser(), getWriterPwd(), this.graphDBServerUrl, getRepository()); runSPQRLQuery.setParser(parseRDFJSON); diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/publisher/AriadnePlusPublisherController.java b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/publisher/AriadnePlusPublisherController.java index 98f2ad5..37bd0a5 100644 --- a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/publisher/AriadnePlusPublisherController.java +++ b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/publisher/AriadnePlusPublisherController.java @@ -83,10 +83,10 @@ public class AriadnePlusPublisherController { resourceType, getTarget(DEFAULT_TARGET_ENDPOINT)); } - @RequestMapping(value = "/indexOnESByIdentifiers", method = RequestMethod.POST) - public String indexOnESByIdentifiers(@RequestParam final String datasource, @RequestParam final String collectionId, - @RequestParam String resourceType, @RequestParam List identifiers) throws AriadnePlusPublisherException { - return getAriadnePlusPublisherHelper().indexOnESByIdentifiers(datasource, collectionId, - resourceType, identifiers, getTarget(DEFAULT_TARGET_ENDPOINT)); + @RequestMapping(value = "/indexOnESByIdentifier", method = RequestMethod.POST) + public String indexOnESByIdentifier(@RequestParam final String datasource, @RequestParam final String collectionId, + @RequestParam String resourceType, @RequestParam String identifier) throws AriadnePlusPublisherException { + return getAriadnePlusPublisherHelper().indexOnESByIdentifier(datasource, collectionId, + resourceType, identifier, getTarget(DEFAULT_TARGET_ENDPOINT)); } } \ No newline at end of file diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/publisher/AriadnePlusPublisherHelper.java b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/publisher/AriadnePlusPublisherHelper.java index 6f8e526..368f18f 100644 --- a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/publisher/AriadnePlusPublisherHelper.java +++ b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/publisher/AriadnePlusPublisherHelper.java @@ -147,8 +147,8 @@ public class AriadnePlusPublisherHelper { return graphDBClient.selectIdentifiers(datasource, collectionId, resourceType); } - public String indexOnESByIdentifiers(String datasource, String collectionId, String resourceType, List identifiers, AriadnePlusTargets target) throws AriadnePlusPublisherException { + public String indexOnESByIdentifier(String datasource, String collectionId, String resourceType, String identifier, AriadnePlusTargets target) throws AriadnePlusPublisherException { GraphDBClient graphDBClient = this.graphdbClientFactory.getGraphDBClient(); - return graphDBClient.indexOnESByIdentifiers(datasource, collectionId, resourceType, identifiers); + return graphDBClient.indexOnESByIdentifier(datasource, collectionId, resourceType, identifier); } }