private void addExternalIdsToExistingSet(Work work, Set<ExternalID> existingExternalIDs) { if(work != null && work.getExternalIdentifiers() != null && work.getExternalIdentifiers().getExternalIdentifier() != null) { for(ExternalID extId : work.getExternalIdentifiers().getExternalIdentifier()) { //Don't include PART_OF external ids if(!Relationship.PART_OF.equals(extId.getRelationship())) { existingExternalIDs.add(extId); } } } }
public static ExternalIDs valueOf(org.orcid.jaxb.model.message.WorkExternalIdentifiers messageWorkExternalIdentifiers) { ExternalIDs ids = new ExternalIDs(); for (WorkExternalIdentifier id : messageWorkExternalIdentifiers.getWorkExternalIdentifier()){ ids.getExternalIdentifier().add(ExternalID.fromMessageExtId(id)); } return ids; }
@Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; FundingGroup other = (FundingGroup) obj; if (fundingSummary == null) { if (other.fundingSummary != null) return false; } else if (!fundingSummary.equals(other.fundingSummary)) return false; if (identifiers == null) { if (other.identifiers != null) return false; } else if (!identifiers.equals(other.identifiers)) return false; return true; }
public ExternalIDs getIdentifiers() { if (identifiers == null) identifiers = new ExternalIDs(); return identifiers; }
@Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((fundingSummary == null) ? 0 : fundingSummary.hashCode()); result = prime * result + ((identifiers == null) ? 0 : identifiers.hashCode()); return result; }
public ExternalIDs getIdentifiers() { if (identifiers == null) identifiers = new ExternalIDs(); return identifiers; }
@Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((identifiers == null) ? 0 : identifiers.hashCode()); result = prime * result + ((workSummary == null) ? 0 : workSummary.hashCode()); return result; }
if (externalIdentifiers == null || externalIdentifiers.getExternalIdentifier() == null || externalIdentifiers.getExternalIdentifier().isEmpty()) { if (other.getExternalIdentifiers() != null && other.getExternalIdentifiers().getExternalIdentifier() != null && !other.getExternalIdentifiers().getExternalIdentifier().isEmpty()) { return false; if (other.getExternalIdentifiers() == null || other.getExternalIdentifiers().getExternalIdentifier() == null || other.getExternalIdentifiers().getExternalIdentifier().isEmpty()) { return false; if (externalIdentifiers.getExternalIdentifier().size() != other.getExternalIdentifiers().getExternalIdentifier().size()) { return false; if (externalIdentifiers.getExternalIdentifier().size() == 1) { if ((externalIdentifiers.getExternalIdentifier().get(0).getValue() == null && externalIdentifiers.getExternalIdentifier().get(0) .getType() == null)) { return false; for (ExternalID thisExtId : externalIdentifiers.getExternalIdentifier()) { if (!other.getExternalIdentifiers().getExternalIdentifier().contains(thisExtId)) { return false;
@Override public ExternalIDs convertFrom(String source, Type<ExternalIDs> destinationType) { JSONFundingExternalIdentifiers fundingExternalIdentifiers = JsonUtils.readObjectFromJsonString(source, JSONFundingExternalIdentifiers.class); ExternalIDs externalIDs = new ExternalIDs(); for (JSONExternalIdentifier externalIdentifier : fundingExternalIdentifiers.getFundingExternalIdentifier()) { ExternalID id = new ExternalID(); if (externalIdentifier.getType() == null) { id.setType(FundingExternalIdentifierType.GRANT_NUMBER.value()); } else { id.setType(externalIdentifier.getType().toLowerCase()); } if (externalIdentifier.getUrl() != null && !PojoUtil.isEmpty(externalIdentifier.getUrl().getValue())) { Url url = new Url(externalIdentifier.getUrl().getValue()); id.setUrl(url); } if (!PojoUtil.isEmpty(externalIdentifier.getValue())) { id.setValue(externalIdentifier.getValue()); } if (externalIdentifier.getRelationship() != null) { id.setRelationship(Relationship.fromValue(conv.convertFrom(externalIdentifier.getRelationship(), null))); } externalIDs.getExternalIdentifier().add(id); } return externalIDs; }
public ExternalIDs getIdentifiers() { if (identifiers == null) identifiers = new ExternalIDs(); return identifiers; }
@Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; WorkGroup other = (WorkGroup) obj; if (identifiers == null) { if (other.identifiers != null) return false; } else if (!identifiers.equals(other.identifiers)) return false; if (workSummary == null) { if (other.workSummary != null) return false; } else if (!workSummary.equals(other.workSummary)) return false; return true; }
@Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((peerReviewSummary == null) ? 0 : peerReviewSummary.hashCode()); result = prime * result + ((identifiers == null) ? 0 : identifiers.hashCode()); return result; }
/** * Merges in the DOI from a work into a CSLItemdata (if found and not * already present) * * @param work * @param item */ private String extractID(Work work, WorkExternalIdentifierType type) { if (work.getExternalIdentifiers() != null && work.getExternalIdentifiers().getExternalIdentifier() != null && work.getExternalIdentifiers().getExternalIdentifier().size() > 0) { for (ExternalID id : work.getExternalIdentifiers().getExternalIdentifier()) { if (id.getType().equalsIgnoreCase(type.value())) { return id.getValue(); } } } return null; }
@Override public ExternalIDs convertFrom(String source, Type<ExternalIDs> destinationType) { JSONWorkExternalIdentifiers workExternalIdentifiers = JsonUtils.readObjectFromJsonString(source, JSONWorkExternalIdentifiers.class); ExternalIDs externalIDs = new ExternalIDs(); for (JSONWorkExternalIdentifier workExternalIdentifier : workExternalIdentifiers.getWorkExternalIdentifier()) { if(workExternalIdentifier.getRelationship() == null || !org.orcid.jaxb.model.common.Relationship.VERSION_OF.name().equals(workExternalIdentifier.getRelationship())) { ExternalID id = new ExternalID(); if (workExternalIdentifier.getWorkExternalIdentifierType() == null) { id.setType(WorkExternalIdentifierType.OTHER_ID.value()); } else { id.setType(conv.convertFrom(workExternalIdentifier.getWorkExternalIdentifierType(), null)); } if (workExternalIdentifier.getWorkExternalIdentifierId() != null) { id.setValue(workExternalIdentifier.getWorkExternalIdentifierId().content); } if (workExternalIdentifier.getUrl() != null) { id.setUrl(new Url(workExternalIdentifier.getUrl().getValue())); } if (workExternalIdentifier.getRelationship() != null) { id.setRelationship(Relationship.fromValue(conv.convertFrom(workExternalIdentifier.getRelationship(), null))); } externalIDs.getExternalIdentifier().add(id); } } return externalIDs; }
@Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; PeerReviewGroup other = (PeerReviewGroup) obj; if (peerReviewSummary == null) { if (other.peerReviewSummary != null) return false; } else if (!peerReviewSummary.equals(other.peerReviewSummary)) return false; if (identifiers == null) { if (other.identifiers != null) return false; } else if (!identifiers.equals(other.identifiers)) return false; return true; }
@Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((externalIdentifiers == null) ? 0 : externalIdentifiers.hashCode()); result = prime * result + ((journalTitle == null) ? 0 : journalTitle.hashCode()); result = prime * result + ((title == null) ? 0 : title.hashCode()); result = prime * result + ((type == null) ? 0 : type.hashCode()); result = prime * result + ((url == null) ? 0 : url.hashCode()); return result; }
/** * Merges in the DOI from a work into a CSLItemdata (if found and not * already present) * * @param work * @param item */ private String extractID(Work work, WorkExternalIdentifierType type) { if (work.getExternalIdentifiers() != null && work.getExternalIdentifiers().getExternalIdentifier() != null && work.getExternalIdentifiers().getExternalIdentifier().size() > 0) { for (ExternalID id : work.getExternalIdentifiers().getExternalIdentifier()) { if (id.getType().equalsIgnoreCase(type.value())) { return id.getValue(); } } } return null; }
if (other.externalIdentifiers != null) return false; } else if (!externalIdentifiers.equals(other.externalIdentifiers)) return false; if (journalTitle == null) {
@Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((completionDate == null) ? 0 : completionDate.hashCode()); result = prime * result + ((createdDate == null) ? 0 : createdDate.hashCode()); result = prime * result + ((externalIdentifiers == null) ? 0 : externalIdentifiers.hashCode()); result = prime * result + ((lastModifiedDate == null) ? 0 : lastModifiedDate.hashCode()); result = prime * result + ((path == null) ? 0 : path.hashCode()); result = prime * result + ((putCode == null) ? 0 : putCode.hashCode()); result = prime * result + ((source == null) ? 0 : source.hashCode()); result = prime * result + ((visibility == null) ? 0 : visibility.hashCode()); result = prime * result + ((organization == null) ? 0 : organization.hashCode()); return result; }
public void checkExternalIdentifiersForDuplicates(ExternalIDs newExtIds, ExternalIDs existingExtIds, Source existingSource, SourceEntity sourceEntity) { if (existingExtIds != null && newExtIds != null) { for (ExternalID existingId : existingExtIds.getExternalIdentifier()) { for (ExternalID newId : newExtIds.getExternalIdentifier()) { if (areRelationshipsSameButNotBothPartOf(existingId.getRelationship(), newId.getRelationship()) && newId.equals(existingId) && SourceEntityUtils.getSourceId(sourceEntity).equals(getExistingSource(existingSource))) { Map<String, String> params = new HashMap<String, String>(); params.put("clientName", SourceEntityUtils.getSourceName(sourceEntity)); throw new OrcidDuplicatedActivityException(params); } } } } }