/** * Method to perform the mundane task of checking for null and returning the * response with an OrcidMessage entity * * @param profile * @param requestedOrcid * @return */ private Response getOrcidMessageResponse(OrcidProfile profile, String requestedOrcid) { if (profile == null) { Map<String, String> params = new HashMap<String, String>(); params.put("orcid", requestedOrcid); throw new OrcidNotFoundException(params); } profile.setOrcidInternal(null); OrcidMessage orcidMessage = new OrcidMessage(profile); orcidMessageUtil.setSourceName(orcidMessage); return Response.ok(orcidMessage).build(); }
OrcidProfile orcidProfile = messageToBeFiltered.getOrcidProfile(); if (orcidProfile != null) { orcidProfile.setOrcidInternal(null);
private SecurityDetails initSecurityDetails(OrcidProfile cachedProfile) { OrcidInternal internal = cachedProfile.getOrcidInternal(); if (internal == null) { internal = new OrcidInternal(); cachedProfile.setOrcidInternal(internal); } SecurityDetails securityDetails = internal.getSecurityDetails(); if (securityDetails == null) { securityDetails = new SecurityDetails(); internal.setSecurityDetails(securityDetails); } return securityDetails; }
@Override public OrcidMessage findPublicProfileById(String orcid) { OrcidMessage om = null; try { if (cachingSource.equals(DB)) { OrcidProfile orcidProfile = orcidProfileCacheManager.retrievePublic(orcid); orcidProfile.setOrcidInternal(null); om = new OrcidMessage(orcidProfile); } else { try (Reader reader = solrDao.findByOrcidAsReader(orcid)) { if (reader != null) { BufferedReader br = new BufferedReader(reader); om = OrcidMessage.unmarshall(br); } } } } catch (NonTransientDataAccessResourceException e) { throw new OrcidSearchException("Error searching by id: " + orcid, e); } catch (IOException e) { throw new OrcidSearchException("Error closing stream for id: " + orcid, e); } if (om == null) throw new OrcidSearchException("Result is null"); return om; }
@Override public OrcidMessage findPublicProfileById(String orcid) { OrcidMessage om = null; try { if (cachingSource.equals(DB)) { OrcidProfile orcidProfile = orcidProfileCacheManager.retrievePublic(orcid); orcidProfile.setOrcidInternal(null); om = new OrcidMessage(orcidProfile); } else { try (Reader reader = solrDao.findByOrcidAsReader(orcid)) { if (reader != null) { BufferedReader br = new BufferedReader(reader); om = OrcidMessage.unmarshall(br); } } } } catch (NonTransientDataAccessResourceException e) { throw new OrcidSearchException("Error searching by id: " + orcid, e); } catch (IOException e) { throw new OrcidSearchException("Error closing stream for id: " + orcid, e); } if (om == null) throw new OrcidSearchException("Result is null"); return om; }
private Response getOrcidMessageResponse(OrcidMessage orcidMessage, String requestedOrcid) { boolean isProfileDeprecated = false; if (orcidMessage == null) { Map<String, String> params = new HashMap<String, String>(); params.put("orcid", requestedOrcid); throw new OrcidNotFoundException(params); } OrcidProfile orcidProfile = orcidMessage.getOrcidProfile(); if (orcidProfile != null) { orcidProfile.setOrcidInternal(null); // If profile is deprecated if (orcidMessage.getOrcidProfile().getOrcidDeprecated() != null) { isProfileDeprecated = true; } } Response response = null; if (isProfileDeprecated) { Map<String, String> params = new HashMap<String, String>(); params.put(OrcidDeprecatedException.ORCID, orcidProfile.getOrcidDeprecated().getPrimaryRecord().getOrcidIdentifier().getUri()); if (orcidProfile.getOrcidDeprecated().getDate() != null) { XMLGregorianCalendar deprecatedDate = orcidProfile.getOrcidDeprecated().getDate().getValue(); params.put(OrcidDeprecatedException.DEPRECATED_DATE, deprecatedDate.toString()); } throw new OrcidDeprecatedException(params); } else { orcidMessageUtil.setSourceName(orcidMessage); response = Response.ok(orcidMessage).build(); } return response; }
profile.setOrcidInternal(getOrcidInternal(profileEntity));