Search in sources :

Example 21 with Employment

use of org.orcid.jaxb.model.v3.dev1.record.Employment in project ORCID-Source by ORCID.

the class AffiliationsManagerImpl method createItemList.

private List<Item> createItemList(OrgAffiliationRelationEntity orgAffiliationEntity) {
    Item item = new Item();
    item.setItemName(orgAffiliationEntity.getOrg().getName());
    ItemType itemType = null;
    switch(orgAffiliationEntity.getAffiliationType()) {
        case DISTINCTION:
            itemType = ItemType.DISTINCTION;
            break;
        case EDUCATION:
            itemType = ItemType.EDUCATION;
            break;
        case EMPLOYMENT:
            itemType = ItemType.EMPLOYMENT;
            break;
        case INVITED_POSITION:
            itemType = ItemType.INVITED_POSITION;
            break;
        case MEMBERSHIP:
            itemType = ItemType.MEMBERSHIP;
            break;
        case QUALIFICATION:
            itemType = ItemType.QUALIFICATION;
            break;
        case SERVICE:
            itemType = ItemType.SERVICE;
            break;
    }
    item.setItemType(itemType);
    item.setPutCode(String.valueOf(orgAffiliationEntity.getId()));
    return Arrays.asList(item);
}
Also used : Item(org.orcid.jaxb.model.v3.dev1.notification.permission.Item) ItemType(org.orcid.jaxb.model.v3.dev1.notification.permission.ItemType)

Example 22 with Employment

use of org.orcid.jaxb.model.v3.dev1.record.Employment in project ORCID-Source by ORCID.

the class AffiliationsManagerImpl method updateAffiliation.

public Affiliation updateAffiliation(String orcid, Affiliation affiliation, boolean isApiRequest, AffiliationType type) {
    OrgAffiliationRelationEntity entity = orgAffiliationRelationDao.getOrgAffiliationRelation(orcid, affiliation.getPutCode());
    SourceEntity sourceEntity = sourceManager.retrieveSourceEntity();
    // Save the original source
    String existingSourceId = entity.getSourceId();
    String existingClientSourceId = entity.getClientSourceId();
    org.orcid.jaxb.model.common_v2.Visibility originalVisibility = entity.getVisibility();
    orcidSecurityManager.checkSource(entity);
    activityValidator.validateAffiliation(affiliation, sourceEntity, false, isApiRequest, org.orcid.jaxb.model.v3.dev1.common.Visibility.fromValue(originalVisibility.value()));
    if (isApiRequest) {
        checkAffiliationExternalIDsForDuplicates(orcid, affiliation, sourceEntity);
    }
    switch(type) {
        case DISTINCTION:
            jpaJaxbDistinctionAdapter.toOrgAffiliationRelationEntity((Distinction) affiliation, entity);
            break;
        case EDUCATION:
            jpaJaxbEducationAdapter.toOrgAffiliationRelationEntity((Education) affiliation, entity);
            break;
        case EMPLOYMENT:
            jpaJaxbEmploymentAdapter.toOrgAffiliationRelationEntity((Employment) affiliation, entity);
            break;
        case INVITED_POSITION:
            jpaJaxbInvitedPositionAdapter.toOrgAffiliationRelationEntity((InvitedPosition) affiliation, entity);
            break;
        case MEMBERSHIP:
            jpaJaxbMembershipAdapter.toOrgAffiliationRelationEntity((Membership) affiliation, entity);
            break;
        case QUALIFICATION:
            jpaJaxbQualificationAdapter.toOrgAffiliationRelationEntity((Qualification) affiliation, entity);
            break;
        case SERVICE:
            jpaJaxbServiceAdapter.toOrgAffiliationRelationEntity((Service) affiliation, entity);
            break;
    }
    entity.setVisibility(originalVisibility);
    // Be sure it doesn't overwrite the source
    entity.setSourceId(existingSourceId);
    entity.setClientSourceId(existingClientSourceId);
    // Updates the give organization with the latest organization from
    // database, or, create a new one
    OrgEntity updatedOrganization = orgManager.getOrgEntity(affiliation);
    entity.setOrg(updatedOrganization);
    entity.setAffiliationType(type);
    entity = orgAffiliationRelationDao.merge(entity);
    orgAffiliationRelationDao.flush();
    Affiliation result = null;
    switch(type) {
        case DISTINCTION:
            notificationManager.sendAmendEmail(orcid, AmendedSection.DISTINCTION, createItemList(entity));
            result = jpaJaxbDistinctionAdapter.toDistinction(entity);
            break;
        case EDUCATION:
            notificationManager.sendAmendEmail(orcid, AmendedSection.EDUCATION, createItemList(entity));
            result = jpaJaxbEducationAdapter.toEducation(entity);
            break;
        case EMPLOYMENT:
            notificationManager.sendAmendEmail(orcid, AmendedSection.EMPLOYMENT, createItemList(entity));
            result = jpaJaxbEmploymentAdapter.toEmployment(entity);
            break;
        case INVITED_POSITION:
            notificationManager.sendAmendEmail(orcid, AmendedSection.INVITED_POSITION, createItemList(entity));
            result = jpaJaxbInvitedPositionAdapter.toInvitedPosition(entity);
            break;
        case MEMBERSHIP:
            notificationManager.sendAmendEmail(orcid, AmendedSection.MEMBERSHIP, createItemList(entity));
            result = jpaJaxbMembershipAdapter.toMembership(entity);
            break;
        case QUALIFICATION:
            notificationManager.sendAmendEmail(orcid, AmendedSection.QUALIFICATION, createItemList(entity));
            result = jpaJaxbQualificationAdapter.toQualification(entity);
            break;
        case SERVICE:
            notificationManager.sendAmendEmail(orcid, AmendedSection.SERVICE, createItemList(entity));
            result = jpaJaxbServiceAdapter.toService(entity);
            break;
    }
    return result;
}
Also used : SourceEntity(org.orcid.persistence.jpa.entities.SourceEntity) OrgAffiliationRelationEntity(org.orcid.persistence.jpa.entities.OrgAffiliationRelationEntity) OrgEntity(org.orcid.persistence.jpa.entities.OrgEntity) Affiliation(org.orcid.jaxb.model.v3.dev1.record.Affiliation)

Example 23 with Employment

use of org.orcid.jaxb.model.v3.dev1.record.Employment in project ORCID-Source by ORCID.

the class AffiliationsManagerReadOnlyImpl method getAffiliations.

@Override
public List<Affiliation> getAffiliations(String orcid) {
    List<OrgAffiliationRelationEntity> affiliations = orgAffiliationRelationDao.getByUser(orcid);
    List<Affiliation> result = new ArrayList<Affiliation>();
    if (affiliations != null) {
        for (OrgAffiliationRelationEntity affiliation : affiliations) {
            switch(affiliation.getAffiliationType()) {
                case DISTINCTION:
                    result.add(jpaJaxbDistinctionAdapter.toDistinction(affiliation));
                    break;
                case EDUCATION:
                    result.add(jpaJaxbEducationAdapter.toEducation(affiliation));
                    break;
                case EMPLOYMENT:
                    result.add(jpaJaxbEmploymentAdapter.toEmployment(affiliation));
                    break;
                case INVITED_POSITION:
                    result.add(jpaJaxbInvitedPositionAdapter.toInvitedPosition(affiliation));
                    break;
                case MEMBERSHIP:
                    result.add(jpaJaxbMembershipAdapter.toMembership(affiliation));
                    break;
                case QUALIFICATION:
                    result.add(jpaJaxbQualificationAdapter.toQualification(affiliation));
                    break;
                case SERVICE:
                    result.add(jpaJaxbServiceAdapter.toService(affiliation));
                    break;
            }
        }
    }
    return result;
}
Also used : ArrayList(java.util.ArrayList) OrgAffiliationRelationEntity(org.orcid.persistence.jpa.entities.OrgAffiliationRelationEntity) Affiliation(org.orcid.jaxb.model.v3.dev1.record.Affiliation)

Example 24 with Employment

use of org.orcid.jaxb.model.v3.dev1.record.Employment 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));
}
Also used : SchemaFactory(javax.xml.validation.SchemaFactory) Marshaller(javax.xml.bind.Marshaller) ExternalIDs(org.orcid.jaxb.model.v3.dev1.record.ExternalIDs) StringWriter(java.io.StringWriter) ExternalID(org.orcid.jaxb.model.v3.dev1.record.ExternalID) Schema(javax.xml.validation.Schema) JAXBContext(javax.xml.bind.JAXBContext) TransientNonEmptyString(org.orcid.jaxb.model.v3.dev1.common.TransientNonEmptyString) Validator(javax.xml.validation.Validator) JAXBSource(javax.xml.bind.util.JAXBSource) Test(org.junit.Test)

Example 25 with Employment

use of org.orcid.jaxb.model.v3.dev1.record.Employment 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());
}
Also used : Memberships(org.orcid.jaxb.model.v3.dev1.record.summary.Memberships) Email(org.orcid.jaxb.model.v3.dev1.record.Email) Address(org.orcid.jaxb.model.v3.dev1.record.Address) Fundings(org.orcid.jaxb.model.v3.dev1.record.summary.Fundings) Distinctions(org.orcid.jaxb.model.v3.dev1.record.summary.Distinctions) ActivitiesSummary(org.orcid.jaxb.model.v3.dev1.record.summary.ActivitiesSummary) CreditName(org.orcid.jaxb.model.v3.dev1.record.CreditName) OtherName(org.orcid.jaxb.model.v3.dev1.record.OtherName) Name(org.orcid.jaxb.model.v3.dev1.record.Name) WorkSummary(org.orcid.jaxb.model.v3.dev1.record.summary.WorkSummary) FundingSummary(org.orcid.jaxb.model.v3.dev1.record.summary.FundingSummary) DistinctionSummary(org.orcid.jaxb.model.v3.dev1.record.summary.DistinctionSummary) Record(org.orcid.jaxb.model.v3.dev1.record.Record) ResearcherUrl(org.orcid.jaxb.model.v3.dev1.record.ResearcherUrl) Works(org.orcid.jaxb.model.v3.dev1.record.summary.Works) ServiceSummary(org.orcid.jaxb.model.v3.dev1.record.summary.ServiceSummary) Keyword(org.orcid.jaxb.model.v3.dev1.record.Keyword) OtherName(org.orcid.jaxb.model.v3.dev1.record.OtherName) PersonExternalIdentifier(org.orcid.jaxb.model.v3.dev1.record.PersonExternalIdentifier) Employments(org.orcid.jaxb.model.v3.dev1.record.summary.Employments) Services(org.orcid.jaxb.model.v3.dev1.record.summary.Services) InvitedPositionSummary(org.orcid.jaxb.model.v3.dev1.record.summary.InvitedPositionSummary) QualificationSummary(org.orcid.jaxb.model.v3.dev1.record.summary.QualificationSummary) EducationSummary(org.orcid.jaxb.model.v3.dev1.record.summary.EducationSummary) Educations(org.orcid.jaxb.model.v3.dev1.record.summary.Educations) EmploymentSummary(org.orcid.jaxb.model.v3.dev1.record.summary.EmploymentSummary) InvitedPositions(org.orcid.jaxb.model.v3.dev1.record.summary.InvitedPositions) MembershipSummary(org.orcid.jaxb.model.v3.dev1.record.summary.MembershipSummary) Person(org.orcid.jaxb.model.v3.dev1.record.Person) Qualifications(org.orcid.jaxb.model.v3.dev1.record.summary.Qualifications) Test(org.junit.Test)

Aggregations

Employment (org.orcid.jaxb.model.v3.dev1.record.Employment)61 Test (org.junit.Test)53 DBUnitTest (org.orcid.test.DBUnitTest)21 Response (javax.ws.rs.core.Response)20 Affiliation (org.orcid.jaxb.model.v3.dev1.record.Affiliation)18 Education (org.orcid.jaxb.model.v3.dev1.record.Education)13 Distinction (org.orcid.jaxb.model.v3.dev1.record.Distinction)11 Membership (org.orcid.jaxb.model.v3.dev1.record.Membership)11 Service (org.orcid.jaxb.model.v3.dev1.record.Service)11 FuzzyDate (org.orcid.jaxb.model.v3.dev1.common.FuzzyDate)10 InvitedPosition (org.orcid.jaxb.model.v3.dev1.record.InvitedPosition)10 Qualification (org.orcid.jaxb.model.v3.dev1.record.Qualification)10 Day (org.orcid.jaxb.model.v3.dev1.common.Day)8 Month (org.orcid.jaxb.model.v3.dev1.common.Month)8 Year (org.orcid.jaxb.model.v3.dev1.common.Year)8 ResearcherUrl (org.orcid.jaxb.model.v3.dev1.record.ResearcherUrl)8 EmploymentSummary (org.orcid.jaxb.model.v3.dev1.record.summary.EmploymentSummary)8 ActivitiesSummary (org.orcid.jaxb.model.v3.dev1.record.summary.ActivitiesSummary)7 Funding (org.orcid.jaxb.model.v3.dev1.record.Funding)6 Work (org.orcid.jaxb.model.v3.dev1.record.Work)6