From 8fa1b458075f0670b4ab3de7850c4cc590748ffc Mon Sep 17 00:00:00 2001 From: Stephen Kraffmiller Date: Wed, 10 Jun 2020 17:51:24 -0400 Subject: [PATCH] #6898 code cleanup --- .../iq/dataverse/search/IndexServiceBean.java | 21 ++++++------------- 1 file changed, 6 insertions(+), 15 deletions(-) diff --git a/src/main/java/edu/harvard/iq/dataverse/search/IndexServiceBean.java b/src/main/java/edu/harvard/iq/dataverse/search/IndexServiceBean.java index 1ac1beca201..b46c368e1d6 100644 --- a/src/main/java/edu/harvard/iq/dataverse/search/IndexServiceBean.java +++ b/src/main/java/edu/harvard/iq/dataverse/search/IndexServiceBean.java @@ -1418,8 +1418,7 @@ private void updatePathForExistingSolrDocs(DvObject object) throws SolrServerExc solrQuery.setQuery(SearchUtil.constructQuery(SearchFields.ENTITY_ID, object.getId().toString())); QueryResponse res = solrClientService.getSolrClient().query(solrQuery); - Dataset ds = null; - Dataverse dv = null; + if (!res.getResults().isEmpty()) { SolrDocument doc = res.getResults().get(0); SolrInputDocument sid = new SolrInputDocument(); @@ -1427,24 +1426,16 @@ private void updatePathForExistingSolrDocs(DvObject object) throws SolrServerExc for (String fieldName : doc.getFieldNames()) { sid.addField(fieldName, doc.getFieldValue(fieldName)); } - List paths = new ArrayList(); - - if(object.isInstanceofDataset()){ - ds = datasetService.find(object.getId()); - paths = retrieveDVOPaths(ds); - } - - if(object.isInstanceofDataverse()){ - dv = dataverseService.find(object.getId()); - paths = retrieveDVOPaths(dv); - } + List paths = object.isInstanceofDataset() ? retrieveDVOPaths(datasetService.find(object.getId())) + : retrieveDVOPaths(dataverseService.find(object.getId())); + sid.removeField(SearchFields.SUBTREE); sid.addField(SearchFields.SUBTREE, paths); UpdateResponse addResponse = solrClientService.getSolrClient().add(sid); UpdateResponse commitResponse = solrClientService.getSolrClient().commit(); - if (ds != null) { - for (DataFile df : ds.getFiles()) { + if (object.isInstanceofDataset()) { + for (DataFile df : datasetService.find(object.getId()).getFiles()) { solrQuery.setQuery(SearchUtil.constructQuery(SearchFields.ENTITY_ID, df.getId().toString())); res = solrClientService.getSolrClient().query(solrQuery); if (!res.getResults().isEmpty()) {