From 7f61b393115c463e886fb23a686cc6e5853c4729 Mon Sep 17 00:00:00 2001 From: Jim Blake Date: Wed, 28 Jan 2015 10:56:37 -0500 Subject: [PATCH] VIVO-869 Don't enter duplicate class group URIs in the search document. --- .../webapp/searchindex/tasks/UpdateDocumentWorkUnit.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/searchindex/tasks/UpdateDocumentWorkUnit.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/searchindex/tasks/UpdateDocumentWorkUnit.java index 9b147385f..beca68c87 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/searchindex/tasks/UpdateDocumentWorkUnit.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/searchindex/tasks/UpdateDocumentWorkUnit.java @@ -14,7 +14,9 @@ import static edu.cornell.mannlib.vitro.webapp.search.VitroSearchTermNames.RDFTY import static edu.cornell.mannlib.vitro.webapp.search.VitroSearchTermNames.URI; import java.util.Arrays; +import java.util.HashSet; import java.util.List; +import java.util.Set; import org.apache.commons.lang.StringUtils; import org.apache.commons.logging.Log; @@ -161,6 +163,7 @@ public class UpdateDocumentWorkUnit implements Runnable { return; } + Set classGroupUris = new HashSet<>(); for (VClass clz : vclasses) { String classUri = clz.getURI(); if (classUri == null || URI_OWL_THING.equals(classUri)) { @@ -170,7 +173,7 @@ public class UpdateDocumentWorkUnit implements Runnable { String classGroupUri = clz.getGroupURI(); if (classGroupUri != null) { - doc.addField(CLASSGROUP_URI, classGroupUri); + classGroupUris.add(classGroupUri); } addToAlltext(doc, clz.getName()); @@ -180,6 +183,9 @@ public class UpdateDocumentWorkUnit implements Runnable { doc.setDocumentBoost(doc.getDocumentBoost() + boost); } } + if (!classGroupUris.isEmpty()) { + doc.addField(CLASSGROUP_URI, classGroupUris); + } } @Override