if(externalIdentifiers != null && externalIdentifiers.getExternalIdentifier() != null) { for(ExternalIdentifier newExternalIdentifier : externalIdentifiers.getExternalIdentifier()){ Triplet<String, String, String> newExternalIdentifierTriplet = createTripletForExternalIdentifier(newExternalIdentifier); if(Objects.equals(existingTriplet, newExternalIdentifierTriplet)) { if(externalIdentifiers != null && externalIdentifiers.getExternalIdentifier() != null) { for(ExternalIdentifier newExternalIdentifier : externalIdentifiers.getExternalIdentifier()) { boolean exists = false; Triplet<String, String, String> newExternalIdentifierTriplet = createTripletForExternalIdentifier(newExternalIdentifier);
private ExternalIdentifiers getExternalIdentifiers(ProfileEntity profileEntity) { Set<ExternalIdentifierEntity> externalIdentifierEntities = profileEntity.getExternalIdentifiers(); ExternalIdentifiers externalIdentifiers = new ExternalIdentifiers(); Visibility mostRestrictive = Visibility.PUBLIC; if (externalIdentifierEntities != null) { for (ExternalIdentifierEntity externalIdentifierEntity : externalIdentifierEntities) { //will only be null if there's an issue with the data or you're using this layer directly Visibility vis = (externalIdentifierEntity.getVisibility() != null)?Visibility.valueOf(externalIdentifierEntity.getVisibility()):Visibility.PRIVATE; if (vis.isMoreRestrictiveThan(mostRestrictive)) mostRestrictive = vis; ExternalIdentifier externalIdentifier = new ExternalIdentifier(vis); externalIdentifier.setSource(getSource(externalIdentifierEntity)); externalIdentifier.setExternalIdReference(StringUtils.isNotBlank(externalIdentifierEntity.getExternalIdReference()) ? new ExternalIdReference( externalIdentifierEntity.getExternalIdReference()) : null); externalIdentifier.setExternalIdCommonName(StringUtils.isNotBlank(externalIdentifierEntity.getExternalIdCommonName()) ? new ExternalIdCommonName( externalIdentifierEntity.getExternalIdCommonName()) : null); externalIdentifier.setExternalIdUrl(StringUtils.isNotBlank(externalIdentifierEntity.getExternalIdUrl()) ? new ExternalIdUrl(externalIdentifierEntity .getExternalIdUrl()) : null); externalIdentifiers.getExternalIdentifier().add(externalIdentifier); } } externalIdentifiers.setVisibility(mostRestrictive); return externalIdentifiers; }
/** * Add new external identifiers to an existing profile * * @param updatedOrcidProfile * @return */ @Override public OrcidProfile addExternalIdentifiers(OrcidProfile updatedOrcidProfile) { OrcidProfile existingProfile = retrieveOrcidProfile(updatedOrcidProfile.getOrcidIdentifier().getPath(), LoadOptions.ALL_WITH_NEW_AFFILIATION_TYPES); if (existingProfile != null && existingProfile.getOrcidBio() != null) { OrcidBio orcidBio = existingProfile.getOrcidBio(); ExternalIdentifiers externalIdentifiers = orcidBio.getExternalIdentifiers(); if (externalIdentifiers == null) { orcidBio.setExternalIdentifiers(new ExternalIdentifiers()); } ExternalIdentifiers externalIdentifier = updatedOrcidProfile.getOrcidBio().getExternalIdentifiers(); List<ExternalIdentifier> updatedExternalIdentifiers = externalIdentifier.getExternalIdentifier(); List<ExternalIdentifier> existingExternalIdentifiers = orcidBio.getExternalIdentifiers().getExternalIdentifier(); // Copy all the existing external identifiers to the updated profile for (ExternalIdentifier ei : existingExternalIdentifiers) { updatedExternalIdentifiers.add(ei); } orcidJaxbCopyManager.copyUpdatedExternalIdentifiersToExistingPreservingVisibility(orcidBio, updatedOrcidProfile.getOrcidBio()); OrcidProfile profileToReturn = updateOrcidProfile(existingProfile); notificationManager.sendAmendEmail(updatedOrcidProfile.getOrcidIdentifier().getPath(), AmendedSection.EXTERNAL_IDENTIFIERS, null); return profileToReturn; } else { return null; } }
private void upgradeProfile(OrcidProfile orcidProfile) { if (orcidProfile != null) { if (orcidProfile.getOrcidBio() != null) if (orcidProfile.getOrcidBio().getExternalIdentifiers() != null) for (ExternalIdentifier externalIdentifier: orcidProfile.getOrcidBio().getExternalIdentifiers().getExternalIdentifier()) { externalIdentifier.setExternalIdSource(externalIdentifier.getExternalIdOrcid()); externalIdentifier.setExternalIdOrcid(null); } if(orcidProfile.getOrcidInternal() != null) orcidProfile.getOrcidInternal().setSalesforceId(new SalesforceId()); } }
List<String> extIdRefs = new ArrayList<String>(); List<String> extIdOrcidsAndRefs = new ArrayList<String>(); for (ExternalIdentifier externalIdentifier : externalIdentifiers.getExternalIdentifier()) { Source source = externalIdentifier.getSource(); String sourcePath = null;
private void downgradeProfile(OrcidProfile orcidProfile) { if (orcidProfile != null) { orcidProfile.setAffiliations(null); OrcidBio orcidBio = orcidProfile.getOrcidBio(); if (orcidBio != null) { ContactDetails contactDetails = orcidBio.getContactDetails(); if (contactDetails != null) { for (Email email : contactDetails.getEmail()) { email.setSourceClientId(null); } } ExternalIdentifiers extIds = orcidBio.getExternalIdentifiers(); if (extIds != null) { for (ExternalIdentifier extId : extIds.getExternalIdentifier()) { extId.setSource(null); } } } if (orcidProfile.getOrcidActivities() != null) { if (orcidProfile.getOrcidActivities().getOrcidWorks() != null) { for (OrcidWork act : orcidProfile.getOrcidActivities().getOrcidWorks().getOrcidWork()) downGradeActivity(act); } } } }
private void upgradeProfile(OrcidProfile orcidProfile) { if (orcidProfile != null) { if (orcidProfile.getOrcidBio() != null) { if (orcidProfile.getOrcidBio().getExternalIdentifiers() != null) for (ExternalIdentifier externalIdentifier : orcidProfile.getOrcidBio().getExternalIdentifiers().getExternalIdentifier()) { ExternalIdSource eis = externalIdentifier.getExternalIdSource(); if (eis != null) { externalIdentifier.setSource(new Source(eis.getPath())); externalIdentifier.setExternalIdSource(null); } } } if (orcidProfile.getOrcidActivities() != null) { if (orcidProfile.getOrcidActivities().getOrcidWorks() != null) { for (OrcidWork act : orcidProfile.getOrcidActivities().getOrcidWorks().getOrcidWork()) upgradeActivity(act); } } } }
if (bio.getExternalIdentifiers() != null && bio.getExternalIdentifiers().getExternalIdentifier() != null && !bio.getExternalIdentifiers().getExternalIdentifier().isEmpty()) { for (ExternalIdentifier extId : bio.getExternalIdentifiers().getExternalIdentifier()) { if (extId.getSource() == null || PojoUtil.isEmpty(extId.getSource().retrieveSourcePath())) { extId.setSource(source);
ids.setVisibility(getMostFromCollection(ids.getExternalIdentifier()));
if (orcidProfile.getOrcidBio() != null) if (orcidProfile.getOrcidBio().getExternalIdentifiers() != null) for (ExternalIdentifier externalIdentifier : orcidProfile.getOrcidBio().getExternalIdentifiers().getExternalIdentifier()) { Source source = externalIdentifier.getSource(); if (source != null) {
private void downgradeProfile(OrcidProfile orcidProfile) { if (orcidProfile != null) { if (orcidProfile.getOrcidBio() != null) if (orcidProfile.getOrcidBio().getExternalIdentifiers() != null) for (ExternalIdentifier externalIdentifier : orcidProfile.getOrcidBio().getExternalIdentifiers().getExternalIdentifier()) { externalIdentifier.setExternalIdOrcid(externalIdentifier.getExternalIdSource()); externalIdentifier.setExternalIdSource(null); } if (orcidProfile.getOrcidActivities() != null) { if (orcidProfile.getOrcidActivities().getAffiliations() != null) for (Activity act : orcidProfile.getOrcidActivities().getAffiliations().getAffiliation()) downGradeActivity(act); if (orcidProfile.getOrcidActivities().getFundings() != null) for (Activity act : orcidProfile.getOrcidActivities().getFundings().getFundings()) downGradeActivity(act); if (orcidProfile.getOrcidActivities().getOrcidWorks() != null) for (Activity act : orcidProfile.getOrcidActivities().getOrcidWorks().getOrcidWork()) downGradeActivity(act); } if(orcidProfile.getOrcidInternal() != null) { orcidProfile.getOrcidInternal().setSalesforceId(null); } } }
List<ExternalIdentifier> extIdsList = extIds.getExternalIdentifier(); if(extIdsList != null) { for(ExternalIdentifier extId : extIdsList) {
for (ExternalIdentifier x : orcidProfile.getOrcidBio().getExternalIdentifiers().getExternalIdentifier()) { if (isClaimed) { x.setVisibility(defaultActivityVis);