private OrcidProfile createTemplateOrcidProfile() { try { logger.info(MessageFormat.format("Going to map stream at {0}", new Date())); return ((OrcidMessage) unmarshaller.unmarshal(is)).getOrcidProfile(); } catch (Exception e) { IOUtils.closeQuietly(is); throw new RuntimeException(e); } finally { } }
private String getSponsorOrcid(OrcidMessage orcidMessage) { if (orcidMessage != null && orcidMessage.getOrcidProfile() != null && orcidMessage.getOrcidProfile().getOrcidHistory() != null && orcidMessage.getOrcidProfile().getOrcidHistory().getSource() != null) { return orcidMessage.getOrcidProfile().getOrcidHistory().getSource().retrieveSourcePath(); } else { return null; } }
@Override public OrcidMessage upgradeMessage(OrcidMessage orcidMessage) { if (orcidMessage == null) { return null; } orcidMessage.setMessageVersion(TO_VERSION); OrcidProfile orcidProfile = orcidMessage.getOrcidProfile(); upgradeProfile(orcidProfile); return orcidMessage; } }
@Override public OrcidMessage upgradeMessage(OrcidMessage orcidMessage) { if (orcidMessage == null) { return null; } orcidMessage.setMessageVersion(TO_VERSION); OrcidProfile orcidProfile = orcidMessage.getOrcidProfile(); upgradeProfile(orcidProfile); return orcidMessage; } }
private String getUserOrcidFromOrcidMessage(OrcidMessage message) { OrcidProfile profile = message.getOrcidProfile(); return profile.getOrcidIdentifier().getPath(); }
@Override public OrcidMessage downgradeMessage(OrcidMessage orcidMessage) { if (orcidMessage == null) { return null; } orcidMessage.setMessageVersion(FROM_VERSION); OrcidProfile orcidProfile = orcidMessage.getOrcidProfile(); downgradeProfile(orcidProfile); downgradeSearchResults(orcidMessage); return orcidMessage; }
@Override public OrcidMessage downgradeMessage(OrcidMessage orcidMessage) { if (orcidMessage == null) { return null; } orcidMessage.setMessageVersion(FROM_VERSION); OrcidProfile orcidProfile = orcidMessage.getOrcidProfile(); downgradeProfile(orcidProfile); downgradeSearchResults(orcidMessage); return orcidMessage; }
private void performClientChecks(OAuth2Authentication oAuth2Authentication, ScopePathType requiredScope, OrcidMessage orcidMessage, String orcid) { OAuth2Request authorizationRequest = oAuth2Authentication.getOAuth2Request(); // If we have an ORCID in the request, we assume that this is intended // as an update if (orcidMessage != null && orcidMessage.getOrcidProfile() != null && StringUtils.isNotBlank(orcid)) { OrcidIdentifier orcidOb = orcidMessage.getOrcidProfile().getOrcidIdentifier(); String messageOrcid = orcidOb != null ? orcidOb.getPath() : orcid; if (StringUtils.isNotBlank(messageOrcid) && !orcid.equals(messageOrcid)) { throw new IllegalArgumentException("The ORCID in the body and the URI do NOT match. Body ORCID: " + messageOrcid + " URI ORCID: " + orcid + " do NOT match."); } profileEntityCacheManager.retrieve(messageOrcid); if (!profileEntityManager.existsAndNotClaimedAndBelongsTo(messageOrcid, authorizationRequest.getClientId())) { throw new AccessControlException("You cannot update this profile as it has been claimed, or you are not the owner."); } } }
@Override public OrcidMessage downgradeMessage(OrcidMessage orcidMessage) { if (orcidMessage == null) { return null; } orcidMessage.setMessageVersion(FROM_VERSION); OrcidProfile orcidProfile = orcidMessage.getOrcidProfile(); downgradeProfile(orcidProfile); downgradeSearchResults(orcidMessage); return orcidMessage; }
@Override public OrcidMessage downgradeMessage(OrcidMessage orcidMessage) { if (orcidMessage == null) { return null; } orcidMessage.setMessageVersion(FROM_VERSION); OrcidProfile orcidProfile = orcidMessage.getOrcidProfile(); downgradeProfile(orcidProfile); downgradeSearchResults(orcidMessage); return orcidMessage; }
@Override public OrcidMessage downgradeMessage(OrcidMessage orcidMessage) { if (orcidMessage == null) { return null; } orcidMessage.setMessageVersion(FROM_VERSION); OrcidProfile orcidProfile = orcidMessage.getOrcidProfile(); downgradeProfile(orcidProfile); downgradeSearchResults(orcidMessage); return orcidMessage; }
@Override public OrcidMessage downgradeMessage(OrcidMessage orcidMessage) { if (orcidMessage == null) { return null; } orcidMessage.setMessageVersion(FROM_VERSION); OrcidProfile orcidProfile = orcidMessage.getOrcidProfile(); downgradeProfile(orcidProfile); downgradeSearchResults(orcidMessage); return orcidMessage; }
@Override public OrcidMessage upgradeMessage(OrcidMessage orcidMessage) { if (orcidMessage == null) { return null; } orcidMessage.setMessageVersion(TO_VERSION); OrcidProfile orcidProfile = orcidMessage.getOrcidProfile(); upgradeProfile(orcidProfile); upgradeSearchResults(orcidMessage); return orcidMessage; }
@Override public OrcidMessage downgradeMessage(OrcidMessage orcidMessage) { if (orcidMessage == null) { return null; } orcidMessage.setMessageVersion(FROM_VERSION); OrcidProfile orcidProfile = orcidMessage.getOrcidProfile(); downgradeProfile(orcidProfile); downgradeSearchResults(orcidMessage); return orcidMessage; }
public void setSourceName(OrcidMessage orcidMessage) { if(orcidMessage != null) { if(orcidMessage.getOrcidProfile() != null) { setSourceName(orcidMessage.getOrcidProfile()); } if(orcidMessage.getOrcidSearchResults() != null) { List<OrcidSearchResult> searchResults = orcidMessage.getOrcidSearchResults().getOrcidSearchResult(); for(OrcidSearchResult searchResult : searchResults) { if(searchResult.getOrcidProfile() != null) { setSourceName(searchResult.getOrcidProfile()); } } } } }
private void doWorkTypeValidation(OrcidMessage orcidMessage) { if (orcidMessage == null || orcidMessage.getOrcidProfile() == null || orcidMessage.getOrcidProfile().getOrcidActivities() == null || orcidMessage.getOrcidProfile().getOrcidActivities().getOrcidWorks() == null || orcidMessage.getOrcidProfile().getOrcidActivities().getOrcidWorks().getOrcidWork() == null || orcidMessage.getOrcidProfile().getOrcidActivities().getOrcidWorks().getOrcidWork().isEmpty()) return; List<OrcidWork> works = orcidMessage.getOrcidProfile().getOrcidActivities().getOrcidWorks().getOrcidWork(); for (OrcidWork work : works) { if (work.getWorkType() == null) if (work.getWorkTitle() != null && work.getWorkTitle().getTitle() != null && !PojoUtil.isEmpty(work.getWorkTitle().getTitle().getContent())) handleError("work-type is missing or invalid for work: '" + work.getWorkTitle().getTitle().getContent() + "'"); else handleError("work-type is missing or invalid"); } }
private void checkMessage(OrcidMessage orcidMessage) { OrcidProfile orcidProfile = orcidMessage != null ? orcidMessage.getOrcidProfile() : null; if (orcidProfile == null) { if (requireOrcidProfile) { throw new OrcidValidationException("There must be an orcid-profile element"); } } else { checkBio(orcidProfile.getOrcidBio()); checkActivities(orcidProfile.getOrcidActivities()); } }
private String getMessageIdForLog(OrcidMessage messageToBeFiltered) { String messageIdForLog = "unknown"; OrcidSearchResults orcidSearchResults = messageToBeFiltered.getOrcidSearchResults(); OrcidProfile orcidProfile = messageToBeFiltered.getOrcidProfile(); if (orcidSearchResults != null) { messageIdForLog = "orcid-search-results"; } else if (orcidProfile != null) { OrcidIdentifier orcidIdentifier = orcidProfile.getOrcidIdentifier(); if (orcidIdentifier != null) { messageIdForLog = orcidIdentifier.getPath(); } Orcid orcid = orcidProfile.getOrcid(); if (orcid != null) { messageIdForLog = orcid.getValue(); } } return messageIdForLog; }
@Override @VisibilityControl() @AccessControl(requiredScope = ScopePathType.READ_PUBLIC, enableAnonymousAccess = true) @NonLocked public Response findAffiliationsDetailsFromPublicCache(String orcid) { try { OrcidMessage orcidMessage = orcidSearchManager.findPublicProfileById(orcid); if (orcidMessage != null) { OrcidProfile orcidProfile = orcidMessage.getOrcidProfile(); if (orcidProfile != null) { orcidProfile.downgradeToAffiliationsOnly(); } } return getOrcidMessageResponse(orcidMessage, orcid); } catch (OrcidSearchException e) { LOGGER.warn("Error searching, so falling back to DB", e); return findAffiliationsDetails(orcid); } }
@Override public OrcidMessage upgradeMessage(OrcidMessage orcidMessage) { if (orcidMessage == null) { return null; } if (orcidMessage.getOrcidProfile() != null) { OrcidProfile op = orcidMessage.getOrcidProfile(); if (op.getOrcidActivities() != null && op.getOrcidActivities().getOrcidWorks() != null) { for (OrcidWork ow : op.getOrcidActivities().getOrcidWorks().getOrcidWork()) { ow.setLanguageCode(Jpa2JaxbAdapterImpl.normalizeLanguageCode(ow.getLanguageCode())); if (ow.getWorkTitle() != null && ow.getWorkTitle().getTranslatedTitle() != null) ow.getWorkTitle().getTranslatedTitle().setLanguageCode(ow.getWorkTitle().getTranslatedTitle().getLanguageCode()); } } } orcidMessage.setMessageVersion(TO_VERSION); return orcidMessage; }