use of org.orcid.jaxb.model.v3.dev1.record.ExternalID in project ORCID-Source by ORCID.
the class JSONWorkExternalIdentifiersConverterV3Test method testConvertFromNormalize.
@Test
public void testConvertFromNormalize() {
WorkEntity workEntity = getWorkEntity();
workEntity.setExternalIdentifiersJson("{\"workExternalIdentifier\":[{\"workExternalIdentifierType\":\"DOI\",\"workExternalIdentifierId\":{\"content\":\"doi:10.1/123\"}}]}");
ExternalIDs entityIDs = converter.convertFrom(workEntity.getExternalIdentifiersJson(), null);
assertEquals(1, entityIDs.getExternalIdentifier().size());
ExternalID externalID = entityIDs.getExternalIdentifier().get(0);
assertEquals("doi:10.1/123", externalID.getValue());
assertEquals("10.1/123", externalID.getNormalized().getValue());
assertNotNull(externalID.getType());
assertEquals(org.orcid.jaxb.model.message.WorkExternalIdentifierType.DOI.value(), externalID.getType());
}
use of org.orcid.jaxb.model.v3.dev1.record.ExternalID in project ORCID-Source by ORCID.
the class JSONWorkExternalIdentifiersConverterV3Test method testConvertFromNormalizeError.
@Test
public void testConvertFromNormalizeError() {
WorkEntity workEntity = getWorkEntity();
workEntity.setExternalIdentifiersJson("{\"workExternalIdentifier\":[{\"workExternalIdentifierType\":\"DOI\",\"workExternalIdentifierId\":{\"content\":\"123\"}}]}");
ExternalIDs entityIDs = converter.convertFrom(workEntity.getExternalIdentifiersJson(), null);
assertEquals(1, entityIDs.getExternalIdentifier().size());
ExternalID externalID = entityIDs.getExternalIdentifier().get(0);
assertEquals("123", externalID.getValue());
assertEquals("", externalID.getNormalized().getValue());
assertEquals("8001", externalID.getNormalizedError().getErrorCode());
assertEquals("Cannot normalize identifier value doi:123", externalID.getNormalizedError().getErrorMessage());
assertNotNull(externalID.getType());
assertEquals(org.orcid.jaxb.model.message.WorkExternalIdentifierType.DOI.value(), externalID.getType());
}
use of org.orcid.jaxb.model.v3.dev1.record.ExternalID in project ORCID-Source by ORCID.
the class JSONWorkExternalIdentifiersConverterV3Test method testConvertFrom.
@Test
public void testConvertFrom() {
WorkEntity workEntity = getWorkEntity();
ExternalIDs entityIDs = converter.convertFrom(workEntity.getExternalIdentifiersJson(), null);
assertEquals(1, entityIDs.getExternalIdentifier().size());
ExternalID externalID = entityIDs.getExternalIdentifier().get(0);
assertEquals("123", externalID.getValue());
assertNotNull(externalID.getType());
assertEquals("123", externalID.getNormalized().getValue());
assertEquals(org.orcid.jaxb.model.message.WorkExternalIdentifierType.AGR.value(), externalID.getType());
}
use of org.orcid.jaxb.model.v3.dev1.record.ExternalID in project ORCID-Source by ORCID.
the class WorkFormTest method getWork.
private Work getWork() {
Work work = new Work();
work.setCountry(new Country(Iso3166Country.US));
work.setJournalTitle(new Title("Journal title"));
work.setLanguageCode("en");
work.setPutCode(Long.valueOf("1"));
work.setShortDescription("Short description");
work.setSource(new org.orcid.jaxb.model.v3.dev1.common.Source("0000-0000-0000-0000"));
work.setUrl(new Url("http://myurl.com"));
work.setVisibility(org.orcid.jaxb.model.v3.dev1.common.Visibility.PUBLIC);
org.orcid.jaxb.model.v3.dev1.record.Citation citation = new org.orcid.jaxb.model.v3.dev1.record.Citation();
citation.setCitation("Citation");
citation.setWorkCitationType(CitationType.FORMATTED_UNSPECIFIED);
work.setWorkCitation(citation);
WorkTitle title = new WorkTitle();
title.setTitle(new Title("Title"));
title.setTranslatedTitle(new org.orcid.jaxb.model.v3.dev1.common.TranslatedTitle("Translated Title", "es"));
title.setSubtitle(new Subtitle("Subtitle"));
work.setWorkTitle(title);
work.setWorkType(WorkType.ARTISTIC_PERFORMANCE);
Date date = new Date();
date.setDay("1");
date.setMonth("1");
date.setYear("2015");
GregorianCalendar calendar = date.toCalendar();
work.setCreatedDate(new CreatedDate(datatypeFactory.newXMLGregorianCalendar(calendar)));
date = new Date();
date.setDay("2");
date.setMonth("2");
date.setYear("2015");
calendar = date.toCalendar();
work.setLastModifiedDate(new LastModifiedDate(datatypeFactory.newXMLGregorianCalendar(calendar)));
work.setPublicationDate(new PublicationDate(new Year(2015), new Month(3), new Day(3)));
org.orcid.jaxb.model.v3.dev1.record.WorkContributors contributors = new org.orcid.jaxb.model.v3.dev1.record.WorkContributors();
org.orcid.jaxb.model.v3.dev1.common.Contributor contributor = new org.orcid.jaxb.model.v3.dev1.common.Contributor();
org.orcid.jaxb.model.v3.dev1.common.ContributorAttributes attributes = new org.orcid.jaxb.model.v3.dev1.common.ContributorAttributes();
attributes.setContributorRole(org.orcid.jaxb.model.v3.dev1.common.ContributorRole.CO_INVENTOR);
attributes.setContributorSequence(org.orcid.jaxb.model.v3.dev1.record.SequenceType.FIRST);
contributor.setContributorAttributes(attributes);
contributor.setContributorEmail(null);
ContributorOrcid contributorOrcid = new ContributorOrcid("Contributor orcid");
contributorOrcid.setUri("Contributor uri");
contributor.setContributorOrcid(contributorOrcid);
CreditName creditName = new CreditName("Contributor credit name");
contributor.setCreditName(creditName);
contributors.getContributor().add(contributor);
work.setWorkContributors(contributors);
ExternalIDs externalIdentifiers = new ExternalIDs();
ExternalID extId = new ExternalID();
extId.setValue("External Identifier ID");
extId.setType(org.orcid.jaxb.model.message.WorkExternalIdentifierType.ASIN.value());
extId.setRelationship(Relationship.SELF);
externalIdentifiers.getExternalIdentifier().add(extId);
work.setWorkExternalIdentifiers(externalIdentifiers);
return work;
}
use of org.orcid.jaxb.model.v3.dev1.record.ExternalID in project ORCID-Source by ORCID.
the class WorkForm method populateExternalIdentifiers.
private static void populateExternalIdentifiers(WorkForm workForm, Work work) {
ExternalIDs workExternalIds = new ExternalIDs();
if (workForm.getWorkExternalIdentifiers() != null && !workForm.getWorkExternalIdentifiers().isEmpty()) {
for (WorkExternalIdentifier wfExtId : workForm.getWorkExternalIdentifiers()) {
ExternalID wExtId = new ExternalID();
if (!PojoUtil.isEmpty(wfExtId.getWorkExternalIdentifierId())) {
wExtId.setValue(wfExtId.getWorkExternalIdentifierId().getValue());
}
if (!PojoUtil.isEmpty(wfExtId.getWorkExternalIdentifierType())) {
wExtId.setType(wfExtId.getWorkExternalIdentifierType().getValue());
}
if (!PojoUtil.isEmpty(wfExtId.getRelationship())) {
wExtId.setRelationship(Relationship.fromValue(wfExtId.getRelationship().getValue()));
}
if (!PojoUtil.isEmpty(wfExtId.getUrl())) {
wExtId.setUrl(new org.orcid.jaxb.model.v3.dev1.common.Url(wfExtId.getUrl().getValue()));
}
workExternalIds.getExternalIdentifier().add(wExtId);
}
}
work.setWorkExternalIdentifiers(workExternalIds);
}
Aggregations