From de2d4a7d281a8238c95aa999efbb8390a4b88854 Mon Sep 17 00:00:00 2001 From: alberto Date: Thu, 31 Jul 2014 10:42:47 +0200 Subject: [PATCH] fix self reference when retreiving parents --- .../src/cz/incad/kramerius/indexer/FedoraOperations.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/indexer/src/cz/incad/kramerius/indexer/FedoraOperations.java b/indexer/src/cz/incad/kramerius/indexer/FedoraOperations.java index f0d9d505f1..25cfc817f8 100644 --- a/indexer/src/cz/incad/kramerius/indexer/FedoraOperations.java +++ b/indexer/src/cz/incad/kramerius/indexer/FedoraOperations.java @@ -212,7 +212,13 @@ public ArrayList getParentsArray(String pid) { if (rindex == null) { rindex = ResourceIndexService.getResourceIndexImpl(); } - return rindex.getParentsPids(pid); + ArrayList ret = rindex.getParentsPids(pid); + + if(ret.contains(pid)){ + logger.log(Level.WARNING, "Cyclic reference on {0}", pid); + ret.remove(pid); + } + return ret; } catch (Exception ex) { logger.log(Level.WARNING, ex.toString());