diff --git a/pom.xml b/pom.xml index afce7f3..4554a4f 100644 --- a/pom.xml +++ b/pom.xml @@ -184,7 +184,7 @@ commons-io commons-io - 2.15.1 + 2.16.0 @@ -204,7 +204,7 @@ org.glassfish.jersey.core jersey-client - 2.41 + 2.42 @@ -231,7 +231,7 @@ org.postgresql postgresql - 42.7.2 + 42.7.3 diff --git a/src/main/java/eu/dnetlib/repo/manager/service/RepositoryServiceImpl.java b/src/main/java/eu/dnetlib/repo/manager/service/RepositoryServiceImpl.java index 46b3d72..c8e3366 100644 --- a/src/main/java/eu/dnetlib/repo/manager/service/RepositoryServiceImpl.java +++ b/src/main/java/eu/dnetlib/repo/manager/service/RepositoryServiceImpl.java @@ -686,19 +686,20 @@ public class RepositoryServiceImpl implements RepositoryService { public Map getCompatibilityClasses(String mode) { logger.debug("Getting compatibility classes for mode: {}", mode); + String lowercaseMode = mode.toLowerCase(); Map retMap = new HashMap<>(); Map compatibilityClasses = this.getVocabulary("dnet:compatibilityLevel").getAsMap(); boolean foundData = false; for (Map.Entry entry : compatibilityClasses.entrySet()) { - if (mode.equalsIgnoreCase(Constants.REPOSITORY_MODE_ALL)) + if (lowercaseMode.equals(Constants.REPOSITORY_MODE_ALL)) return compatibilityClasses; - else if (mode.equalsIgnoreCase(Constants.REPOSITORY_MODE_RE3DATA)) { + else if (lowercaseMode.equals(Constants.REPOSITORY_MODE_RE3DATA)) { if (ValidatorServiceImpl.OPENAIRE_DATA_REGEX.matcher(entry.getKey()).matches()) { retMap.put(entry.getKey(), entry.getValue()); foundData = true; } - } else if (mode.equalsIgnoreCase("cris")) { + } else if (lowercaseMode.startsWith("cris")) { // Future proofing for inconsistent CRIS modes. if (entry.getKey().contains("openaire-cris")) { retMap.put(entry.getKey(), entry.getValue()); foundData = true; @@ -710,7 +711,7 @@ public class RepositoryServiceImpl implements RepositoryService { } //TODO TO BE REMOVED WHEN VOCABULARIES ARE UPDATED - if ((mode.equalsIgnoreCase("repository") || mode.equalsIgnoreCase(Constants.REPOSITORY_MODE_RE3DATA)) && !foundData) + if ((lowercaseMode.equals("repository") || lowercaseMode.equals(Constants.REPOSITORY_MODE_RE3DATA)) && !foundData) retMap.put("openaire2.0_data", "OpenAIRE Data (funded, referenced datasets)"); return retMap; @@ -934,7 +935,12 @@ public class RepositoryServiceImpl implements RepositoryService { private Paging searchApi(UriComponents uriComponents, RequestFilter requestFilter, Class clazz) { Paging repositories = new Paging<>(); ResponseEntity rs; - rs = restTemplate.exchange(uriComponents.toUri(), HttpMethod.GET, new HttpEntity<>(requestFilter), Map.class); + try { + rs = restTemplate.exchange(uriComponents.toUri(), HttpMethod.GET, new HttpEntity<>(requestFilter), Map.class); + } catch (Exception e) { + logger.error("", e); + throw e; + } if (!rs.getStatusCode().is2xxSuccessful()) { logger.error("Api call not successful. Code: {} | Body: {}", rs.getStatusCode(), rs.getBody()); }