/** * Check the permissions for the given * {@link org.springframework.security.core.Authentication} object and the * scopes defined in the required scopes * * @param authentication * The authentication object associated with this session * @param requiredScope * the scopes required to perform the requested operation * @param orcid * the orcid passed into the request. This is for requests, such * as a GET /1234-1234-1234-1234/orcid-bio * @param orcidMessage * the {@link org.orcid.jaxb.model.message.OrcidMessage} that has * been sent as part of this request. This will only apply to * PUTs and POSTs */ @Override public void checkPermissions(Authentication authentication, ScopePathType requiredScope, String orcid, OrcidMessage orcidMessage) { if (StringUtils.isNotBlank(orcid) && orcidMessage != null && orcidMessage.getOrcidProfile() != null && (orcidMessage.getOrcidProfile().getOrcidIdentifier() == null || StringUtils.isBlank(orcidMessage.getOrcidProfile().getOrcidIdentifier().getPath()))) { orcidMessage.getOrcidProfile().setOrcidIdentifier(orcid); } performPermissionChecks(authentication, requiredScope, orcid, orcidMessage); }
protected OrcidProfile createReservedForClaimOrcidProfile(String orcid, OrcidDeprecated deprecatedInfo, LastModifiedDate lastModifiedDate) { OrcidProfile op = new OrcidProfile(); if (jpaJaxbAdapter != null) { op.setOrcidIdentifier(new OrcidIdentifier(jpaJaxbAdapter.getOrcidIdBase(orcid))); } else { op.setOrcidIdentifier(orcid); } if (deprecatedInfo != null) op.setOrcidDeprecated(deprecatedInfo); OrcidHistory oh = new OrcidHistory(); oh.setClaimed(new Claimed(false)); oh.setLastModifiedDate(lastModifiedDate); op.setOrcidHistory(oh); GivenNames gn = new GivenNames(); PersonalDetails pd = new PersonalDetails(); gn.setContent(localeManager.resolveMessage("orcid.reserved_for_claim")); gn.setVisibility(OrcidVisibilityDefaults.NAMES_DEFAULT.getVisibility()); pd.setGivenNames(gn); OrcidBio ob = new OrcidBio(); ob.setPersonalDetails(pd); op.setOrcidBio(ob); return op; }
/** * See {@link OrcidApiServiceDelegator}{@link #searchByQuery(Map)} */ @Override @VisibilityControl public Response searchByQuery(Map<String, List<String>> queryMap) { validateSearchParams(queryMap); OrcidMessage orcidMessage = orcidSearchManager.findOrcidsByQuery(queryMap); List<OrcidSearchResult> searchResults = orcidMessage.getOrcidSearchResults() != null ? orcidMessage.getOrcidSearchResults().getOrcidSearchResult() : null; List<OrcidSearchResult> filteredResults = new ArrayList<OrcidSearchResult>(); OrcidSearchResults orcidSearchResults = new OrcidSearchResults(); if (searchResults != null) { orcidSearchResults.setNumFound(orcidMessage.getOrcidSearchResults().getNumFound()); if (searchResults.size() > 0) { for (OrcidSearchResult searchResult : searchResults) { OrcidSearchResult filteredSearchResult = new OrcidSearchResult(); OrcidProfile filteredProfile = new OrcidProfile(); filteredSearchResult.setRelevancyScore(searchResult.getRelevancyScore()); filteredProfile.setOrcid(searchResult.getOrcidProfile().getOrcid()); filteredProfile.setOrcidId(searchResult.getOrcidProfile().getOrcidId()); filteredProfile.setOrcidIdentifier(searchResult.getOrcidProfile().getOrcidIdentifier()); filteredProfile.setOrcidBio(searchResult.getOrcidProfile().getOrcidBio()); filteredSearchResult.setOrcidProfile(filteredProfile); filteredResults.add(filteredSearchResult); } } } orcidSearchResults.getOrcidSearchResult().addAll(filteredResults); return getOrcidSearchResultsResponse(orcidSearchResults, queryMap.toString()); }
orcidSearchResult.setRelevancyScore(relevancyScore); OrcidProfile orcidProfile = new OrcidProfile(); orcidProfile.setOrcidIdentifier(new OrcidIdentifier(jpaJaxbAdapter.getOrcidIdBase(orcid))); OrcidHistory history = new OrcidHistory(); Date recordLastModified = profileDaoReadOnly.retrieveLastModifiedDate(orcid);
orcidSearchResult.setRelevancyScore(relevancyScore); OrcidProfile orcidProfile = new OrcidProfile(); orcidProfile.setOrcidIdentifier(new OrcidIdentifier(jpaJaxbAdapter.getOrcidIdBase(orcid))); OrcidHistory history = new OrcidHistory(); Date recordLastModified = profileDaoReadOnly.retrieveLastModifiedDate(orcid);
public OrcidProfile createOrcidProfile(OrcidProfile orcidProfile, boolean createdByMember, boolean usedCaptcha) { if (orcidProfile.getOrcidIdentifier() == null) { orcidProfile.setOrcidIdentifier(orcidGenerationManager.createNewOrcid());
profile.setOrcidIdentifier(new OrcidIdentifier(getOrcidIdBase(profileEntity.getId())));