use of org.orcid.jaxb.model.v3.dev1.common.Url in project ORCID-Source by ORCID.
the class ResearcherUrlManagerImpl method updateResearcherUrls.
/**
* Update the researcher urls associated with a specific account
*
* @param orcid
* @param researcherUrls
*/
@Override
@Transactional
public ResearcherUrls updateResearcherUrls(String orcid, ResearcherUrls researcherUrls) {
List<ResearcherUrlEntity> existingEntities = researcherUrlDao.getResearcherUrls(orcid, getLastModified(orcid));
// Delete the deleted ones
for (ResearcherUrlEntity existingEntity : existingEntities) {
boolean deleteMe = true;
if (researcherUrls.getResearcherUrls() != null) {
for (ResearcherUrl updatedOrNew : researcherUrls.getResearcherUrls()) {
if (existingEntity.getId().equals(updatedOrNew.getPutCode())) {
deleteMe = false;
break;
}
}
}
if (deleteMe) {
try {
researcherUrlDao.deleteResearcherUrl(existingEntity.getProfile().getId(), existingEntity.getId());
} catch (Exception e) {
throw new ApplicationException("Unable to delete researcher url " + existingEntity.getId(), e);
}
}
}
// Update or create new
if (researcherUrls != null && researcherUrls.getResearcherUrls() != null) {
for (ResearcherUrl updatedOrNew : researcherUrls.getResearcherUrls()) {
if (updatedOrNew.getPutCode() != null) {
// Update the existing ones
for (ResearcherUrlEntity existingEntity : existingEntities) {
if (existingEntity.getId().equals(updatedOrNew.getPutCode())) {
existingEntity.setLastModified(new Date());
existingEntity.setVisibility(org.orcid.jaxb.model.common_v2.Visibility.fromValue(updatedOrNew.getVisibility().value()));
existingEntity.setUrl(updatedOrNew.getUrl().getValue());
existingEntity.setUrlName(updatedOrNew.getUrlName());
existingEntity.setDisplayIndex(updatedOrNew.getDisplayIndex());
researcherUrlDao.merge(existingEntity);
}
}
} else {
// Add the new ones
ResearcherUrlEntity newResearcherUrl = jpaJaxbResearcherUrlAdapter.toResearcherUrlEntity(updatedOrNew);
SourceEntity sourceEntity = sourceManager.retrieveSourceEntity();
ProfileEntity profile = new ProfileEntity(orcid);
newResearcherUrl.setUser(profile);
newResearcherUrl.setDateCreated(new Date());
newResearcherUrl.setLastModified(new Date());
if (sourceEntity.getSourceProfile() != null) {
newResearcherUrl.setSourceId(sourceEntity.getSourceProfile().getId());
}
if (sourceEntity.getSourceClient() != null) {
newResearcherUrl.setClientSourceId(sourceEntity.getSourceClient().getId());
}
newResearcherUrl.setVisibility(org.orcid.jaxb.model.common_v2.Visibility.fromValue(updatedOrNew.getVisibility().value()));
newResearcherUrl.setDisplayIndex(updatedOrNew.getDisplayIndex());
researcherUrlDao.persist(newResearcherUrl);
}
}
}
return researcherUrls;
}
use of org.orcid.jaxb.model.v3.dev1.common.Url in project ORCID-Source by ORCID.
the class TransientNonEmptyStringTest method testMarshal.
/**
* <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
* <common:external-ids xmlns:internal="http://www.orcid.org/ns/internal" xmlns:address="http://www.orcid.org/ns/address" xmlns:email="http://www.orcid.org/ns/email" xmlns:history="http://www.orcid.org/ns/history" xmlns:employment="http://www.orcid.org/ns/employment" xmlns:person="http://www.orcid.org/ns/person" xmlns:education="http://www.orcid.org/ns/education" xmlns:other-name="http://www.orcid.org/ns/other-name" xmlns:personal-details="http://www.orcid.org/ns/personal-details" xmlns:bulk="http://www.orcid.org/ns/bulk" xmlns:common="http://www.orcid.org/ns/common" xmlns:record="http://www.orcid.org/ns/record" xmlns:keyword="http://www.orcid.org/ns/keyword" xmlns:activities="http://www.orcid.org/ns/activities" xmlns:deprecated="http://www.orcid.org/ns/deprecated" xmlns:external-identifier="http://www.orcid.org/ns/external-identifier" xmlns:funding="http://www.orcid.org/ns/funding" xmlns:error="http://www.orcid.org/ns/error" xmlns:preferences="http://www.orcid.org/ns/preferences" xmlns:work="http://www.orcid.org/ns/work" xmlns:researcher-url="http://www.orcid.org/ns/researcher-url" xmlns:peer-review="http://www.orcid.org/ns/peer-review">
* <common:external-id>
* <common:external-id-type>doi</common:external-id-type>
* <common:external-id-value>value</common:external-id-value>
* <common:external-id-normalized transient="true">normalized-value</common:external-id-normalized>
* </common:external-id>
* </common:external-ids>
* @throws JAXBException
* @throws SAXException
* @throws IOException
*/
@Test
public void testMarshal() throws JAXBException, SAXException, IOException {
ExternalIDs ids = new ExternalIDs();
ExternalID id = new ExternalID();
id.setType("doi");
id.setValue("value");
id.setNormalized(new TransientNonEmptyString("normalized-value"));
ids.getExternalIdentifier().add(id);
JAXBContext context = JAXBContext.newInstance(ExternalIDs.class);
Marshaller marshaller = context.createMarshaller();
StringWriter sw = new StringWriter();
marshaller.marshal(ids, sw);
assertTrue(sw.toString().contains("<common:external-id-normalized transient=\"true\">normalized-value</common:external-id-normalized>"));
SchemaFactory factory = SchemaFactory.newInstance("http://www.w3.org/2001/XMLSchema");
Schema schema = factory.newSchema(getClass().getResource("/common_3.0_dev1/common-3.0_dev1.xsd"));
Validator validator = schema.newValidator();
validator.validate(new JAXBSource(context, ids));
}
use of org.orcid.jaxb.model.v3.dev1.common.Url in project ORCID-Source by ORCID.
the class ValidateV3_dev1SamplesTest method testUnmarshallRecord.
@Test
public void testUnmarshallRecord() throws SAXException, URISyntaxException {
Record record = (Record) unmarshallFromPath("/record_3.0_dev1/samples/read_samples/record-3.0_dev1.xml", Record.class, "/record_3.0_dev1/record-3.0_dev1.xsd");
assertNotNull(record);
// Check activities
assertNotNull(record.getActivitiesSummary());
ActivitiesSummary activities = record.getActivitiesSummary();
assertNotNull(activities.getLastModifiedDate());
assertNotNull(activities.getDistinctions());
Distinctions distinctions = activities.getDistinctions();
assertNotNull(distinctions.getLastModifiedDate());
assertEquals(1, distinctions.getSummaries().size());
DistinctionSummary distinction = distinctions.getSummaries().get(0);
assertEquals(Long.valueOf(0), distinction.getPutCode());
assertEquals(Visibility.PRIVATE, distinction.getVisibility());
assertEquals("distinction:department-name", distinction.getDepartmentName());
assertEquals("distinction:role-title", distinction.getRoleTitle());
assertNotNull(distinction.getEndDate());
assertEquals("02", distinction.getEndDate().getDay().getValue());
assertEquals("02", distinction.getEndDate().getMonth().getValue());
assertEquals("1848", distinction.getEndDate().getYear().getValue());
assertNotNull(distinction.getStartDate());
assertEquals("02", distinction.getStartDate().getDay().getValue());
assertEquals("02", distinction.getStartDate().getMonth().getValue());
assertEquals("1848", distinction.getStartDate().getYear().getValue());
assertNotNull(distinction.getOrganization());
assertEquals("common:name", distinction.getOrganization().getName());
assertEquals("common:city", distinction.getOrganization().getAddress().getCity());
assertEquals("common:region", distinction.getOrganization().getAddress().getRegion());
assertEquals(Iso3166Country.AF, distinction.getOrganization().getAddress().getCountry());
assertNotNull(activities.getEducations());
Educations educations = activities.getEducations();
assertNotNull(educations.getLastModifiedDate());
assertEquals(1, educations.getSummaries().size());
EducationSummary education = educations.getSummaries().get(0);
assertEquals(Long.valueOf(0), education.getPutCode());
assertEquals(Visibility.PRIVATE, education.getVisibility());
assertEquals("education:department-name", education.getDepartmentName());
assertEquals("education:role-title", education.getRoleTitle());
assertNotNull(education.getEndDate());
assertEquals("02", education.getEndDate().getDay().getValue());
assertEquals("02", education.getEndDate().getMonth().getValue());
assertEquals("1848", education.getEndDate().getYear().getValue());
assertNotNull(education.getStartDate());
assertEquals("02", education.getStartDate().getDay().getValue());
assertEquals("02", education.getStartDate().getMonth().getValue());
assertEquals("1848", education.getStartDate().getYear().getValue());
assertNotNull(education.getOrganization());
assertEquals("common:name", education.getOrganization().getName());
assertEquals("common:city", education.getOrganization().getAddress().getCity());
assertEquals("common:region", education.getOrganization().getAddress().getRegion());
assertEquals(Iso3166Country.AF, education.getOrganization().getAddress().getCountry());
assertNotNull(activities.getEmployments());
Employments employments = activities.getEmployments();
assertNotNull(employments.getLastModifiedDate());
assertEquals(1, employments.getSummaries().size());
EmploymentSummary employment = employments.getSummaries().get(0);
assertEquals(Long.valueOf(0), employment.getPutCode());
assertEquals(Visibility.PRIVATE, employment.getVisibility());
assertEquals("employment:department-name", employment.getDepartmentName());
assertEquals("employment:role-title", employment.getRoleTitle());
assertNotNull(employment.getEndDate());
assertEquals("02", employment.getEndDate().getDay().getValue());
assertEquals("02", employment.getEndDate().getMonth().getValue());
assertEquals("1848", employment.getEndDate().getYear().getValue());
assertNotNull(employment.getStartDate());
assertEquals("02", employment.getStartDate().getDay().getValue());
assertEquals("02", employment.getStartDate().getMonth().getValue());
assertEquals("1848", employment.getStartDate().getYear().getValue());
assertNotNull(employment.getOrganization());
assertEquals("common:name", employment.getOrganization().getName());
assertEquals("common:city", employment.getOrganization().getAddress().getCity());
assertEquals("common:region", employment.getOrganization().getAddress().getRegion());
assertEquals(Iso3166Country.AF, employment.getOrganization().getAddress().getCountry());
assertNotNull(activities.getInvitedPositions());
InvitedPositions invitedPositions = activities.getInvitedPositions();
assertNotNull(invitedPositions.getLastModifiedDate());
assertEquals(1, invitedPositions.getSummaries().size());
InvitedPositionSummary invitedPosition = invitedPositions.getSummaries().get(0);
assertEquals(Long.valueOf(0), invitedPosition.getPutCode());
assertEquals(Visibility.PRIVATE, invitedPosition.getVisibility());
assertEquals("invited-position:department-name", invitedPosition.getDepartmentName());
assertEquals("invited-position:role-title", invitedPosition.getRoleTitle());
assertNotNull(invitedPosition.getEndDate());
assertEquals("02", invitedPosition.getEndDate().getDay().getValue());
assertEquals("02", invitedPosition.getEndDate().getMonth().getValue());
assertEquals("1848", invitedPosition.getEndDate().getYear().getValue());
assertNotNull(invitedPosition.getStartDate());
assertEquals("02", invitedPosition.getStartDate().getDay().getValue());
assertEquals("02", invitedPosition.getStartDate().getMonth().getValue());
assertEquals("1848", invitedPosition.getStartDate().getYear().getValue());
assertNotNull(invitedPosition.getOrganization());
assertEquals("common:name", invitedPosition.getOrganization().getName());
assertEquals("common:city", invitedPosition.getOrganization().getAddress().getCity());
assertEquals("common:region", invitedPosition.getOrganization().getAddress().getRegion());
assertEquals(Iso3166Country.AF, invitedPosition.getOrganization().getAddress().getCountry());
assertNotNull(activities.getFundings());
Fundings fundings = activities.getFundings();
assertNotNull(fundings.getLastModifiedDate());
assertEquals(1, fundings.getFundingGroup().size());
assertNotNull(fundings.getFundingGroup().get(0).getLastModifiedDate());
assertEquals(1, fundings.getFundingGroup().get(0).getFundingSummary().size());
assertEquals(1, fundings.getFundingGroup().get(0).getIdentifiers().getExternalIdentifier().size());
assertEquals("grant_number", fundings.getFundingGroup().get(0).getIdentifiers().getExternalIdentifier().get(0).getType());
assertEquals("external-id-value", fundings.getFundingGroup().get(0).getIdentifiers().getExternalIdentifier().get(0).getValue());
assertEquals(1, fundings.getFundingGroup().get(0).getFundingSummary().size());
FundingSummary funding = fundings.getFundingGroup().get(0).getFundingSummary().get(0);
assertEquals(Long.valueOf(0), funding.getPutCode());
assertEquals(Visibility.PRIVATE, funding.getVisibility());
assertNotNull(funding.getTitle());
assertEquals("common:title", funding.getTitle().getTitle().getContent());
assertEquals("common:translated-title", funding.getTitle().getTranslatedTitle().getContent());
assertEquals("en", funding.getTitle().getTranslatedTitle().getLanguageCode());
assertNotNull(funding.getExternalIdentifiers());
assertEquals(1, funding.getExternalIdentifiers().getExternalIdentifier().size());
assertEquals(Relationship.SELF, funding.getExternalIdentifiers().getExternalIdentifier().get(0).getRelationship());
assertEquals("grant_number", funding.getExternalIdentifiers().getExternalIdentifier().get(0).getType());
assertEquals("http://tempuri.org", funding.getExternalIdentifiers().getExternalIdentifier().get(0).getUrl().getValue());
assertEquals("external-id-value", funding.getExternalIdentifiers().getExternalIdentifier().get(0).getValue());
assertNotNull(funding.getEndDate());
assertEquals("02", funding.getEndDate().getDay().getValue());
assertEquals("02", funding.getEndDate().getMonth().getValue());
assertEquals("1848", funding.getEndDate().getYear().getValue());
assertNotNull(funding.getStartDate());
assertEquals("02", funding.getStartDate().getDay().getValue());
assertEquals("02", funding.getStartDate().getMonth().getValue());
assertEquals("1848", funding.getStartDate().getYear().getValue());
assertNotNull(activities.getMemberships());
Memberships memberships = activities.getMemberships();
assertNotNull(memberships.getLastModifiedDate());
assertEquals(1, memberships.getSummaries().size());
MembershipSummary membership = memberships.getSummaries().get(0);
assertEquals(Long.valueOf(0), membership.getPutCode());
assertEquals(Visibility.PRIVATE, membership.getVisibility());
assertEquals("membership:department-name", membership.getDepartmentName());
assertEquals("membership:role-title", membership.getRoleTitle());
assertNotNull(membership.getEndDate());
assertEquals("02", membership.getEndDate().getDay().getValue());
assertEquals("02", membership.getEndDate().getMonth().getValue());
assertEquals("1848", membership.getEndDate().getYear().getValue());
assertNotNull(membership.getStartDate());
assertEquals("02", membership.getStartDate().getDay().getValue());
assertEquals("02", membership.getStartDate().getMonth().getValue());
assertEquals("1848", membership.getStartDate().getYear().getValue());
assertNotNull(membership.getOrganization());
assertEquals("common:name", membership.getOrganization().getName());
assertEquals("common:city", membership.getOrganization().getAddress().getCity());
assertEquals("common:region", membership.getOrganization().getAddress().getRegion());
assertEquals(Iso3166Country.AF, membership.getOrganization().getAddress().getCountry());
assertNotNull(funding.getOrganization());
assertEquals("common:name", funding.getOrganization().getName());
assertEquals("common:city", funding.getOrganization().getAddress().getCity());
assertEquals("common:region", funding.getOrganization().getAddress().getRegion());
assertEquals(Iso3166Country.AF, funding.getOrganization().getAddress().getCountry());
assertNotNull(activities.getPeerReviews());
assertNotNull(activities.getPeerReviews().getLastModifiedDate());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup());
assertEquals(1, activities.getPeerReviews().getPeerReviewGroup().size());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getIdentifiers());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getIdentifiers().getExternalIdentifier());
assertEquals(1, activities.getPeerReviews().getPeerReviewGroup().get(0).getIdentifiers().getExternalIdentifier().size());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getIdentifiers().getExternalIdentifier().get(0).getType());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getIdentifiers().getExternalIdentifier().get(0).getValue());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getIdentifiers().getExternalIdentifier().get(0).getUrl());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getIdentifiers().getExternalIdentifier().get(0).getRelationship());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary());
assertEquals(1, activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().size());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getCompletionDate());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getCompletionDate().getDay());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getCompletionDate().getMonth());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getCompletionDate().getYear());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getCreatedDate());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getCreatedDate().getValue());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getDisplayIndex());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getExternalIdentifiers());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getExternalIdentifiers().getExternalIdentifier());
assertEquals(1, activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getExternalIdentifiers().getExternalIdentifier().size());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getExternalIdentifiers().getExternalIdentifier().get(0).getType());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getExternalIdentifiers().getExternalIdentifier().get(0).getValue());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getExternalIdentifiers().getExternalIdentifier().get(0).getUrl());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getExternalIdentifiers().getExternalIdentifier().get(0).getRelationship());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getGroupId());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getLastModifiedDate());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getOrganization());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getOrganization().getAddress());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getOrganization().getAddress().getCity());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getOrganization().getAddress().getCountry());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getOrganization().getAddress().getRegion());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getOrganization().getName());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getPutCode());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getSource());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getSource().retrieveSourcePath());
assertNotNull(activities.getPeerReviews().getPeerReviewGroup().get(0).getPeerReviewSummary().get(0).getVisibility());
assertNotNull(activities.getQualifications());
Qualifications qualifications = activities.getQualifications();
assertNotNull(qualifications.getLastModifiedDate());
assertEquals(1, qualifications.getSummaries().size());
QualificationSummary qualification = qualifications.getSummaries().get(0);
assertEquals(Long.valueOf(0), qualification.getPutCode());
assertEquals(Visibility.PRIVATE, qualification.getVisibility());
assertEquals("qualification:department-name", qualification.getDepartmentName());
assertEquals("qualification:role-title", qualification.getRoleTitle());
assertNotNull(qualification.getEndDate());
assertEquals("02", qualification.getEndDate().getDay().getValue());
assertEquals("02", qualification.getEndDate().getMonth().getValue());
assertEquals("1848", qualification.getEndDate().getYear().getValue());
assertNotNull(qualification.getStartDate());
assertEquals("02", qualification.getStartDate().getDay().getValue());
assertEquals("02", qualification.getStartDate().getMonth().getValue());
assertEquals("1848", qualification.getStartDate().getYear().getValue());
assertNotNull(qualification.getOrganization());
assertEquals("common:name", qualification.getOrganization().getName());
assertEquals("common:city", qualification.getOrganization().getAddress().getCity());
assertEquals("common:region", qualification.getOrganization().getAddress().getRegion());
assertEquals(Iso3166Country.AF, qualification.getOrganization().getAddress().getCountry());
assertNotNull(activities.getServices());
Services services = activities.getServices();
assertNotNull(services.getLastModifiedDate());
assertEquals(1, services.getSummaries().size());
ServiceSummary service = services.getSummaries().get(0);
assertEquals(Long.valueOf(0), service.getPutCode());
assertEquals(Visibility.PRIVATE, service.getVisibility());
assertEquals("service:department-name", service.getDepartmentName());
assertEquals("service:role-title", service.getRoleTitle());
assertNotNull(service.getEndDate());
assertEquals("02", service.getEndDate().getDay().getValue());
assertEquals("02", service.getEndDate().getMonth().getValue());
assertEquals("1848", service.getEndDate().getYear().getValue());
assertNotNull(service.getStartDate());
assertEquals("02", service.getStartDate().getDay().getValue());
assertEquals("02", service.getStartDate().getMonth().getValue());
assertEquals("1848", service.getStartDate().getYear().getValue());
assertNotNull(service.getOrganization());
assertEquals("common:name", service.getOrganization().getName());
assertEquals("common:city", service.getOrganization().getAddress().getCity());
assertEquals("common:region", service.getOrganization().getAddress().getRegion());
assertEquals(Iso3166Country.AF, service.getOrganization().getAddress().getCountry());
assertNotNull(activities.getWorks());
Works works = activities.getWorks();
assertNotNull(works.getLastModifiedDate());
assertEquals(1, works.getWorkGroup().size());
assertNotNull(works.getWorkGroup().get(0).getIdentifiers());
assertEquals(1, works.getWorkGroup().get(0).getIdentifiers().getExternalIdentifier().size());
assertEquals(Relationship.PART_OF, works.getWorkGroup().get(0).getIdentifiers().getExternalIdentifier().get(0).getRelationship());
assertEquals("agr", works.getWorkGroup().get(0).getIdentifiers().getExternalIdentifier().get(0).getType());
assertEquals("http://orcid.org", works.getWorkGroup().get(0).getIdentifiers().getExternalIdentifier().get(0).getUrl().getValue());
assertEquals("external-id-value", works.getWorkGroup().get(0).getIdentifiers().getExternalIdentifier().get(0).getValue());
assertEquals(1, works.getWorkGroup().get(0).getWorkSummary().size());
WorkSummary work = works.getWorkGroup().get(0).getWorkSummary().get(0);
assertEquals(Long.valueOf(0), work.getPutCode());
assertEquals(Visibility.PRIVATE, work.getVisibility());
assertNotNull(work.getTitle());
assertEquals("common:title", work.getTitle().getTitle().getContent());
assertEquals("common:translated-title", work.getTitle().getTranslatedTitle().getContent());
assertEquals("en", work.getTitle().getTranslatedTitle().getLanguageCode());
assertNotNull(work.getExternalIdentifiers());
assertEquals(1, work.getExternalIdentifiers().getExternalIdentifier().size());
assertEquals(Relationship.SELF, work.getExternalIdentifiers().getExternalIdentifier().get(0).getRelationship());
assertEquals("agr", work.getExternalIdentifiers().getExternalIdentifier().get(0).getType());
assertEquals("http://tempuri.org", work.getExternalIdentifiers().getExternalIdentifier().get(0).getUrl().getValue());
assertEquals("external-id-value", work.getExternalIdentifiers().getExternalIdentifier().get(0).getValue());
assertEquals(WorkType.ARTISTIC_PERFORMANCE, work.getType());
assertNotNull(work.getPublicationDate());
assertEquals("02", work.getPublicationDate().getDay().getValue());
assertEquals("02", work.getPublicationDate().getMonth().getValue());
assertEquals("1848", work.getPublicationDate().getYear().getValue());
// Check biography
Person person = record.getPerson();
assertNotNull(person);
assertNotNull(person.getLastModifiedDate().getValue());
assertNotNull(person.getAddresses());
assertNotNull(person.getAddresses().getLastModifiedDate());
assertEquals(1, person.getAddresses().getAddress().size());
Address address = person.getAddresses().getAddress().get(0);
assertEquals(Long.valueOf(1), address.getPutCode());
assertEquals(Visibility.PUBLIC, address.getVisibility());
assertEquals(Iso3166Country.US, address.getCountry().getValue());
assertEquals(Long.valueOf(0), address.getDisplayIndex());
assertNotNull(address.getLastModifiedDate());
assertNotNull(person.getBiography());
assertEquals(Visibility.PUBLIC, person.getBiography().getVisibility());
assertEquals("biography", person.getBiography().getContent());
assertNotNull(person.getEmails());
assertTrue(StringUtils.isNotBlank(person.getEmails().getPath()));
assertNotNull(person.getEmails().getLastModifiedDate());
assertNotNull(person.getEmails().getEmails());
assertEquals(1, person.getEmails().getEmails().size());
Email email = person.getEmails().getEmails().get(0);
assertNotNull(email.getCreatedDate().getValue());
assertEquals("user1@email.com", email.getEmail());
assertNotNull(email.getLastModifiedDate().getValue());
assertEquals(Long.valueOf(0), email.getPutCode());
assertNotNull(email.getSource());
assertEquals(Visibility.PUBLIC, email.getVisibility());
assertNotNull(person.getExternalIdentifiers());
assertTrue(StringUtils.isNotBlank(person.getExternalIdentifiers().getPath()));
assertNotNull(person.getExternalIdentifiers().getLastModifiedDate().getValue());
assertNotNull(person.getExternalIdentifiers().getExternalIdentifiers());
assertEquals(1, person.getExternalIdentifiers().getExternalIdentifiers().size());
PersonExternalIdentifier extId = person.getExternalIdentifiers().getExternalIdentifiers().get(0);
assertNotNull(extId.getCreatedDate().getValue());
assertNotNull(extId.getLastModifiedDate());
assertEquals(Long.valueOf(0), extId.getDisplayIndex());
assertEquals(Long.valueOf(1), extId.getPutCode());
assertEquals(Relationship.PART_OF, extId.getRelationship());
assertNotNull(extId.getSource());
assertEquals("type-1", extId.getType());
assertEquals("http://url.com/1", extId.getUrl().getValue());
assertEquals("value-1", extId.getValue());
assertEquals(Visibility.PUBLIC, extId.getVisibility());
assertNotNull(person.getKeywords());
assertTrue(StringUtils.isNotBlank(person.getKeywords().getPath()));
assertNotNull(person.getKeywords().getLastModifiedDate().getValue());
assertNotNull(person.getKeywords().getKeywords());
assertEquals(1, person.getKeywords().getKeywords().size());
Keyword keyword = person.getKeywords().getKeywords().get(0);
assertEquals("keyword1", keyword.getContent());
assertNotNull(keyword.getCreatedDate().getValue());
assertNotNull(keyword.getLastModifiedDate().getValue());
assertEquals(Long.valueOf(0), keyword.getDisplayIndex());
assertEquals(Long.valueOf(1), keyword.getPutCode());
assertNotNull(keyword.getSource());
assertEquals(Visibility.PUBLIC, keyword.getVisibility());
assertNotNull(person.getOtherNames());
assertTrue(StringUtils.isNotBlank(person.getOtherNames().getPath()));
assertNotNull(person.getOtherNames().getLastModifiedDate().getValue());
assertNotNull(person.getOtherNames().getOtherNames());
assertEquals(1, person.getOtherNames().getOtherNames().size());
OtherName otherName = person.getOtherNames().getOtherNames().get(0);
assertEquals("other-name-1", otherName.getContent());
assertNotNull(otherName.getCreatedDate().getValue());
assertNotNull(otherName.getLastModifiedDate().getValue());
assertEquals(Long.valueOf(0), otherName.getDisplayIndex());
assertEquals(Long.valueOf(1), otherName.getPutCode());
assertNotNull(otherName.getSource());
assertEquals(Visibility.PUBLIC, otherName.getVisibility());
assertNotNull(person.getResearcherUrls());
assertTrue(StringUtils.isNotBlank(person.getResearcherUrls().getPath()));
assertNotNull(person.getResearcherUrls().getLastModifiedDate().getValue());
assertNotNull(person.getResearcherUrls().getResearcherUrls().size());
ResearcherUrl rUrl = person.getResearcherUrls().getResearcherUrls().get(0);
assertNotNull(rUrl.getCreatedDate().getValue());
assertEquals(Long.valueOf(0), rUrl.getDisplayIndex());
assertNotNull(rUrl.getLastModifiedDate().getValue());
assertEquals(Long.valueOf(1248), rUrl.getPutCode());
assertNotNull(rUrl.getSource());
assertEquals("http://url.com/", rUrl.getUrl().getValue());
assertEquals("url-name-1", rUrl.getUrlName());
assertEquals(Visibility.PUBLIC, rUrl.getVisibility());
assertNotNull(person.getName());
Name name = person.getName();
assertTrue(StringUtils.isNotBlank(name.getPath()));
assertEquals("credit-name", name.getCreditName().getContent());
assertEquals("family-name", name.getFamilyName().getContent());
assertEquals("give-names", name.getGivenNames().getContent());
assertNotNull(name.getLastModifiedDate().getValue());
assertEquals(Visibility.PUBLIC, name.getVisibility());
}
use of org.orcid.jaxb.model.v3.dev1.common.Url in project ORCID-Source by ORCID.
the class ValidateV3_dev1SamplesTest method testUnmarshallExternalIdentifiers.
@Test
public void testUnmarshallExternalIdentifiers() throws SAXException, URISyntaxException {
PersonExternalIdentifiers externalIdentifiers = (PersonExternalIdentifiers) unmarshallFromPath("/record_3.0_dev1/samples/read_samples/external-identifiers-3.0_dev1.xml", PersonExternalIdentifiers.class, "/record_3.0_dev1/person-external-identifier-3.0_dev1.xsd");
assertNotNull(externalIdentifiers);
assertNotNull(externalIdentifiers.getExternalIdentifiers());
assertEquals(2, externalIdentifiers.getExternalIdentifiers().size());
for (PersonExternalIdentifier extId : externalIdentifiers.getExternalIdentifiers()) {
assertThat(extId.getPutCode(), anyOf(is(1L), is(2L)));
assertThat(extId.getType(), anyOf(is("common-name-1"), is("common-name-2")));
assertThat(extId.getValue(), anyOf(is("id-reference-1"), is("id-reference-2")));
assertNotNull(extId.getUrl());
assertThat(extId.getUrl().getValue(), anyOf(is("http://url/1"), is("http://url/2")));
assertNotNull(extId.getCreatedDate());
assertNotNull(extId.getLastModifiedDate());
assertNotNull(extId.getSource());
assertEquals("8888-8888-8888-8880", extId.getSource().retrieveSourcePath());
}
PersonExternalIdentifier extId = (PersonExternalIdentifier) unmarshallFromPath("/record_3.0_dev1/samples/read_samples/external-identifier-3.0_dev1.xml", PersonExternalIdentifier.class);
assertNotNull(extId);
assertEquals("A-0003", extId.getType());
assertEquals(Long.valueOf(1), extId.getPutCode());
assertEquals("A-0003", extId.getValue());
assertNotNull(extId.getUrl());
assertEquals("http://ext-id/A-0003", extId.getUrl().getValue());
assertEquals(Visibility.PUBLIC.value(), extId.getVisibility().value());
assertNotNull(extId.getCreatedDate());
assertNotNull(extId.getLastModifiedDate());
assertNotNull(extId.getSource());
assertEquals("8888-8888-8888-8880", extId.getSource().retrieveSourcePath());
}
use of org.orcid.jaxb.model.v3.dev1.common.Url in project ORCID-Source by ORCID.
the class JpaJaxbWorkAdapterTest method fromProfileWorkEntityToWorkTest.
@Test
public void fromProfileWorkEntityToWorkTest() {
// Set base url to https to ensure source URI is converted to http
orcidUrlManager.setBaseUrl("https://testserver.orcid.org");
WorkEntity work = getWorkEntity();
assertNotNull(work);
Work w = jpaJaxbWorkAdapter.toWork(work);
assertNotNull(w);
assertNotNull(w.getCreatedDate());
assertEquals(DateUtils.convertToDate("2015-06-05T10:15:20"), DateUtils.convertToDate(w.getCreatedDate().getValue()));
assertNotNull(w.getLastModifiedDate());
assertEquals(DateUtils.convertToDate("2015-06-05T10:15:20"), DateUtils.convertToDate(w.getLastModifiedDate().getValue()));
assertEquals(Iso3166Country.CR.value(), w.getCountry().getValue().value());
assertEquals("work:citation", w.getWorkCitation().getCitation());
assertEquals("work:description", w.getShortDescription());
assertEquals("work:journalTitle", w.getJournalTitle().getContent());
assertEquals(CitationType.BIBTEX.value(), w.getWorkCitation().getWorkCitationType().value());
assertEquals(Long.valueOf(12345), w.getPutCode());
assertEquals(Visibility.LIMITED.value(), w.getVisibility().value());
assertEquals("work:title", w.getWorkTitle().getTitle().getContent());
assertEquals("work:subtitle", w.getWorkTitle().getSubtitle().getContent());
assertEquals("work:translatedTitle", w.getWorkTitle().getTranslatedTitle().getContent());
assertEquals("ES", w.getWorkTitle().getTranslatedTitle().getLanguageCode());
assertEquals(WorkType.ARTISTIC_PERFORMANCE.value(), w.getWorkType().value());
assertNotNull(w.getWorkExternalIdentifiers());
assertNotNull(w.getWorkExternalIdentifiers().getExternalIdentifier());
assertEquals(1, w.getWorkExternalIdentifiers().getExternalIdentifier().size());
ExternalID workExtId = w.getWorkExternalIdentifiers().getExternalIdentifier().get(0);
assertNotNull(workExtId.getValue());
assertEquals("123", workExtId.getValue());
assertNotNull(workExtId.getType());
assertEquals(org.orcid.jaxb.model.message.WorkExternalIdentifierType.AGR.value(), workExtId.getType());
String sourcePath = w.getSource().retrieveSourcePath();
assertNotNull(sourcePath);
assertEquals("APP-5555555555555555", sourcePath);
// Identifier URIs should always be http, event if base url is https
assertEquals("https://testserver.orcid.org/client/APP-5555555555555555", w.getSource().retriveSourceUri());
}
Aggregations