use of org.orcid.jaxb.model.v3.dev1.record.ExternalIDs in project ORCID-Source by ORCID.
the class Utils method getFunding.
public static Funding getFunding() {
Funding newFunding = new Funding();
FundingTitle title = new FundingTitle();
title.setTitle(new Title("Public Funding # 2"));
newFunding.setTitle(title);
newFunding.setType(FundingType.AWARD);
ExternalID fExtId = new ExternalID();
fExtId.setRelationship(Relationship.PART_OF);
fExtId.setType(FundingExternalIdentifierType.GRANT_NUMBER.value());
fExtId.setUrl(new Url("http://fundingExtId.com"));
fExtId.setValue("new-funding-ext-id");
ExternalIDs fExtIds = new ExternalIDs();
fExtIds.getExternalIdentifier().add(fExtId);
newFunding.setExternalIdentifiers(fExtIds);
newFunding.setOrganization(getOrganization());
return newFunding;
}
use of org.orcid.jaxb.model.v3.dev1.record.ExternalIDs in project ORCID-Source by ORCID.
the class Utils method getWork.
public static Work getWork(String title) {
Work work = new Work();
WorkTitle workTitle = new WorkTitle();
workTitle.setTitle(new Title(title));
work.setWorkTitle(workTitle);
work.setWorkType(WorkType.BOOK);
work.setVisibility(Visibility.PUBLIC);
ExternalIDs extIds = new ExternalIDs();
ExternalID extId = new ExternalID();
extId.setRelationship(Relationship.PART_OF);
extId.setType(WorkExternalIdentifierType.AGR.value());
extId.setValue("ext-id-" + System.currentTimeMillis());
extId.setUrl(new Url("http://thisIsANewUrl.com"));
extIds.getExternalIdentifier().add(extId);
work.setWorkExternalIdentifiers(extIds);
return work;
}
use of org.orcid.jaxb.model.v3.dev1.record.ExternalIDs in project ORCID-Source by ORCID.
the class ActivityValidator method checkFundingExternalIdentifiersForDuplicates.
public void checkFundingExternalIdentifiersForDuplicates(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) && sourceEntity.getSourceId().equals(getExistingSource(existingSource))) {
Map<String, String> params = new HashMap<String, String>();
params.put("clientName", sourceEntity.getSourceName());
throw new OrcidDuplicatedActivityException(params);
}
}
}
}
}
use of org.orcid.jaxb.model.v3.dev1.record.ExternalIDs in project ORCID-Source by ORCID.
the class ExternalIDValidator method validateFunding.
public void validateFunding(ExternalIDs ids) {
if (// urgh
ids == null)
return;
List<String> errors = Lists.newArrayList();
for (ExternalID id : ids.getExternalIdentifier()) {
if (id.getType() == null || !identifierTypeManager.fetchIdentifierTypesByAPITypeName(null).containsKey(id.getType())) {
errors.add(id.getType());
}
if (PojoUtil.isEmpty(id.getValue())) {
errors.add("value");
}
if (requireRelationshipOnExternalIdentifier) {
if (id.getRelationship() == null) {
errors.add("relationship");
}
}
}
checkAndThrow(errors);
}
use of org.orcid.jaxb.model.v3.dev1.record.ExternalIDs in project ORCID-Source by ORCID.
the class ExternalIDValidator method validateWorkOrPeerReview.
public void validateWorkOrPeerReview(ExternalIDs ids) {
if (// yeuch
ids == null)
return;
List<String> errors = Lists.newArrayList();
for (ExternalID id : ids.getExternalIdentifier()) {
if (id.getType() == null || !identifierTypeManager.fetchIdentifierTypesByAPITypeName(null).containsKey(id.getType())) {
errors.add(id.getType());
}
if (PojoUtil.isEmpty(id.getValue())) {
errors.add("value");
}
if (requireRelationshipOnExternalIdentifier) {
if (id.getRelationship() == null) {
errors.add("relationship");
}
}
}
checkAndThrow(errors);
}
Aggregations