Search in sources :

Example 6 with ExternalID

use of org.orcid.jaxb.model.record_v2.ExternalID 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);
}
Also used : ExternalID(org.orcid.jaxb.model.record_v2.ExternalID)

Example 7 with ExternalID

use of org.orcid.jaxb.model.record_v2.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.common_v2.Url(wfExtId.getUrl().getValue()));
            }
            workExternalIds.getExternalIdentifier().add(wExtId);
        }
    }
    work.setWorkExternalIdentifiers(workExternalIds);
}
Also used : ExternalIDs(org.orcid.jaxb.model.record_v2.ExternalIDs) Url(org.orcid.jaxb.model.common_v2.Url) ExternalID(org.orcid.jaxb.model.record_v2.ExternalID)

Example 8 with ExternalID

use of org.orcid.jaxb.model.record_v2.ExternalID in project ORCID-Source by ORCID.

the class PeerReviewForm method valueOf.

public static PeerReviewForm valueOf(PeerReview peerReview) {
    PeerReviewForm form = new PeerReviewForm();
    // Put code
    if (peerReview.getPutCode() != null) {
        form.setPutCode(Text.valueOf(peerReview.getPutCode()));
    }
    // Visibility
    if (peerReview.getVisibility() != null) {
        form.setVisibility(peerReview.getVisibility());
    }
    // Completion date
    if (!PojoUtil.isEmpty(peerReview.getCompletionDate())) {
        form.setCompletionDate(Date.valueOf(peerReview.getCompletionDate()));
    }
    // Role
    if (peerReview.getRole() != null) {
        form.setRole(Text.valueOf(peerReview.getRole().value()));
    }
    // Type
    if (peerReview.getType() != null) {
        form.setType(Text.valueOf(peerReview.getType().value()));
    }
    // Url
    if (!PojoUtil.isEmpty(peerReview.getUrl())) {
        form.setUrl(Text.valueOf(peerReview.getUrl().getValue()));
    }
    // Org info
    if (peerReview.getOrganization() != null) {
        if (!PojoUtil.isEmpty(peerReview.getOrganization().getName())) {
            form.setOrgName(Text.valueOf(peerReview.getOrganization().getName()));
        }
        if (peerReview.getOrganization().getAddress() != null) {
            if (!PojoUtil.isEmpty(peerReview.getOrganization().getAddress().getCity())) {
                form.setCity(Text.valueOf(peerReview.getOrganization().getAddress().getCity()));
            }
            if (peerReview.getOrganization().getAddress().getCountry() != null) {
                form.setCountry(Text.valueOf(peerReview.getOrganization().getAddress().getCountry().value()));
            }
            if (!PojoUtil.isEmpty(peerReview.getOrganization().getAddress().getRegion())) {
                form.setRegion(Text.valueOf(peerReview.getOrganization().getAddress().getRegion()));
            }
        }
        if (peerReview.getOrganization().getDisambiguatedOrganization() != null) {
            if (!PojoUtil.isEmpty(peerReview.getOrganization().getDisambiguatedOrganization().getDisambiguatedOrganizationIdentifier())) {
                form.setDisambiguatedOrganizationSourceId(Text.valueOf(peerReview.getOrganization().getDisambiguatedOrganization().getDisambiguatedOrganizationIdentifier()));
            }
            if (!PojoUtil.isEmpty(peerReview.getOrganization().getDisambiguatedOrganization().getDisambiguationSource())) {
                form.setDisambiguationSource(Text.valueOf(peerReview.getOrganization().getDisambiguatedOrganization().getDisambiguationSource()));
            }
        }
    }
    // External ids
    if (peerReview.getExternalIdentifiers() != null) {
        List<ExternalID> externalIdentifiers = peerReview.getExternalIdentifiers().getExternalIdentifier();
        form.setExternalIdentifiers(new ArrayList<WorkExternalIdentifier>());
        for (ExternalID extId : externalIdentifiers) {
            form.getExternalIdentifiers().add(WorkExternalIdentifier.valueOf(extId));
        }
    }
    // Group Id
    if (!PojoUtil.isEmpty(peerReview.getGroupId())) {
        form.setGroupId(Text.valueOf(peerReview.getGroupId()));
    }
    // Subject ext Id
    if (peerReview.getSubjectExternalIdentifier() != null) {
        WorkExternalIdentifier wExtId = new WorkExternalIdentifier();
        if (peerReview.getSubjectExternalIdentifier().getRelationship() != null) {
            wExtId.setRelationship(Text.valueOf(peerReview.getSubjectExternalIdentifier().getRelationship().value()));
        }
        if (peerReview.getSubjectExternalIdentifier().getUrl() != null) {
            wExtId.setUrl(Text.valueOf(peerReview.getSubjectExternalIdentifier().getUrl().getValue()));
        }
        if (peerReview.getSubjectExternalIdentifier().getValue() != null) {
            wExtId.setWorkExternalIdentifierId(Text.valueOf(peerReview.getSubjectExternalIdentifier().getValue()));
        }
        if (peerReview.getSubjectExternalIdentifier().getType() != null) {
            wExtId.setWorkExternalIdentifierType(Text.valueOf(peerReview.getSubjectExternalIdentifier().getType()));
        }
        form.setSubjectExternalIdentifier(wExtId);
    }
    // Subject Container name
    if (peerReview.getSubjectContainerName() != null) {
        form.setSubjectContainerName(Text.valueOf(peerReview.getSubjectContainerName().getContent()));
    }
    // Subject type
    if (peerReview.getSubjectType() != null) {
        form.setSubjectType(Text.valueOf(peerReview.getSubjectType().value()));
    }
    // Subject name
    if (peerReview.getSubjectName() != null) {
        if (peerReview.getSubjectName().getTitle() != null) {
            form.setSubjectName(Text.valueOf(peerReview.getSubjectName().getTitle().getContent()));
        }
        TranslatedTitleForm tTitle = new TranslatedTitleForm();
        if (peerReview.getSubjectName().getTranslatedTitle() != null) {
            tTitle.setContent(peerReview.getSubjectName().getTranslatedTitle().getContent());
            tTitle.setLanguageCode(peerReview.getSubjectName().getTranslatedTitle().getLanguageCode());
        }
        form.setTranslatedSubjectName(tTitle);
    }
    // Subject url
    if (peerReview.getSubjectUrl() != null) {
        form.setSubjectUrl(Text.valueOf(peerReview.getSubjectUrl().getValue()));
    }
    // Source
    if (peerReview.getSource() != null) {
        form.setSource(peerReview.getSource().retrieveSourcePath());
        if (peerReview.getSource().getSourceName() != null)
            form.setSourceName(peerReview.getSource().getSourceName().getContent());
    }
    // Created Date
    if (peerReview.getCreatedDate() != null) {
        form.setCreatedDate(Date.valueOf(peerReview.getCreatedDate()));
    }
    // Last modified
    if (peerReview.getLastModifiedDate() != null) {
        form.setLastModified(Date.valueOf(peerReview.getLastModifiedDate()));
    }
    return form;
}
Also used : ExternalID(org.orcid.jaxb.model.record_v2.ExternalID)

Example 9 with ExternalID

use of org.orcid.jaxb.model.record_v2.ExternalID in project ORCID-Source by ORCID.

the class PeerReviewForm method toPeerReview.

public PeerReview toPeerReview() {
    PeerReview peerReview = new PeerReview();
    // Put Code
    if (!PojoUtil.isEmpty(putCode)) {
        peerReview.setPutCode(Long.valueOf(putCode.getValue()));
    }
    // Visibility
    if (visibility != null) {
        peerReview.setVisibility(visibility);
    }
    // Completion date
    if (completionDate != null) {
        peerReview.setCompletionDate(new FuzzyDate(completionDate.toFuzzyDate()));
    }
    // External identifiers
    if (externalIdentifiers != null && !externalIdentifiers.isEmpty()) {
        peerReview.setExternalIdentifiers(new ExternalIDs());
        for (WorkExternalIdentifier extId : externalIdentifiers) {
            peerReview.getExternalIdentifiers().getExternalIdentifier().add(extId.toRecordWorkExternalIdentifier());
        }
    }
    // Set Organization
    Organization organization = new Organization();
    OrganizationAddress organizationAddress = new OrganizationAddress();
    organization.setAddress(organizationAddress);
    if (!PojoUtil.isEmpty(orgName)) {
        organization.setName(orgName.getValue());
    }
    if (!PojoUtil.isEmpty(city)) {
        organizationAddress.setCity(city.getValue());
    }
    if (!PojoUtil.isEmpty(region)) {
        organizationAddress.setRegion(region.getValue());
    }
    if (!PojoUtil.isEmpty(country)) {
        organizationAddress.setCountry(Iso3166Country.fromValue(country.getValue()));
    }
    if (!PojoUtil.isEmpty(disambiguatedOrganizationSourceId)) {
        organization.setDisambiguatedOrganization(new DisambiguatedOrganization());
        organization.getDisambiguatedOrganization().setDisambiguatedOrganizationIdentifier(disambiguatedOrganizationSourceId.getValue());
        organization.getDisambiguatedOrganization().setDisambiguationSource(disambiguationSource.getValue());
    }
    peerReview.setOrganization(organization);
    // Role
    if (!PojoUtil.isEmpty(role)) {
        peerReview.setRole(Role.fromValue(role.getValue()));
    }
    // Type
    if (!PojoUtil.isEmpty(type)) {
        peerReview.setType(PeerReviewType.fromValue(type.getValue()));
    }
    // Url
    if (!PojoUtil.isEmpty(url)) {
        peerReview.setUrl(new Url(url.getValue()));
    }
    // Group id
    if (!PojoUtil.isEmpty(groupId)) {
        peerReview.setGroupId(groupId.getValue());
    }
    // Subject external id
    if (!PojoUtil.isEmpty(subjectExternalIdentifier)) {
        ExternalID subjectExtId = new ExternalID();
        if (!PojoUtil.isEmpty(subjectExternalIdentifier.getRelationship())) {
            subjectExtId.setRelationship(Relationship.fromValue(subjectExternalIdentifier.getRelationship().getValue()));
        }
        if (!PojoUtil.isEmpty(subjectExternalIdentifier.getUrl())) {
            subjectExtId.setUrl(new Url(subjectExternalIdentifier.getUrl().getValue()));
        }
        if (!PojoUtil.isEmpty(subjectExternalIdentifier.getWorkExternalIdentifierId())) {
            subjectExtId.setValue(subjectExternalIdentifier.getWorkExternalIdentifierId().getValue());
        }
        if (!PojoUtil.isEmpty(subjectExternalIdentifier.getWorkExternalIdentifierType())) {
            subjectExtId.setType(subjectExternalIdentifier.getWorkExternalIdentifierType().getValue());
        }
        peerReview.setSubjectExternalIdentifier(subjectExtId);
    }
    // Subject container name
    if (!PojoUtil.isEmpty(subjectContainerName)) {
        Title containerName = new Title(subjectContainerName.getValue());
        peerReview.setSubjectContainerName(containerName);
    }
    // Subject type
    if (!PojoUtil.isEmpty(subjectType)) {
        peerReview.setSubjectType(WorkType.fromValue(subjectType.getValue()));
    }
    // Subject name and subject translated name
    if (!PojoUtil.isEmpty(subjectName) || !PojoUtil.isEmpty(translatedSubjectName)) {
        WorkTitle workTitle = new WorkTitle();
        if (!PojoUtil.isEmpty(subjectName)) {
            workTitle.setTitle(new Title(subjectName.getValue()));
        }
        if (translatedSubjectName != null) {
            org.orcid.jaxb.model.common_v2.TranslatedTitle tTitle = new org.orcid.jaxb.model.common_v2.TranslatedTitle();
            if (!PojoUtil.isEmpty(translatedSubjectName.getContent())) {
                tTitle.setContent(translatedSubjectName.getContent());
            }
            if (!PojoUtil.isEmpty(translatedSubjectName.getLanguageCode())) {
                tTitle.setLanguageCode(translatedSubjectName.getLanguageCode());
            }
            workTitle.setTranslatedTitle(tTitle);
        }
        peerReview.setSubjectName(workTitle);
    }
    //Subject url
    if (!PojoUtil.isEmpty(subjectUrl)) {
        peerReview.setSubjectUrl(new Url(subjectUrl.getValue()));
    }
    return peerReview;
}
Also used : ExternalIDs(org.orcid.jaxb.model.record_v2.ExternalIDs) DisambiguatedOrganization(org.orcid.jaxb.model.common_v2.DisambiguatedOrganization) Organization(org.orcid.jaxb.model.common_v2.Organization) OrganizationAddress(org.orcid.jaxb.model.common_v2.OrganizationAddress) ExternalID(org.orcid.jaxb.model.record_v2.ExternalID) FuzzyDate(org.orcid.jaxb.model.common_v2.FuzzyDate) Title(org.orcid.jaxb.model.common_v2.Title) WorkTitle(org.orcid.jaxb.model.record_v2.WorkTitle) Url(org.orcid.jaxb.model.common_v2.Url) DisambiguatedOrganization(org.orcid.jaxb.model.common_v2.DisambiguatedOrganization) WorkTitle(org.orcid.jaxb.model.record_v2.WorkTitle) PeerReview(org.orcid.jaxb.model.record_v2.PeerReview)

Example 10 with ExternalID

use of org.orcid.jaxb.model.record_v2.ExternalID in project ORCID-Source by ORCID.

the class SourceInActivitiesTest method getFundingWithoutTitle.

private ProfileFundingEntity getFundingWithoutTitle(String userOrcid) {
    Funding funding = new Funding();
    funding.setOrganization(getOrganization());
    funding.setType(org.orcid.jaxb.model.record_v2.FundingType.AWARD);
    ExternalID extId = new ExternalID();
    extId.setValue("111");
    extId.setType(FundingExternalIdentifierType.GRANT_NUMBER.value());
    extId.setUrl(new Url("http://test.com"));
    ExternalIDs extIdentifiers = new ExternalIDs();
    extIdentifiers.getExternalIdentifier().add(extId);
    funding.setExternalIdentifiers(extIdentifiers);
    funding = profileFundingManager.createFunding(userOrcid, funding, true);
    return profileFundingManager.getProfileFundingEntity(funding.getPutCode());
}
Also used : ExternalIDs(org.orcid.jaxb.model.record_v2.ExternalIDs) Funding(org.orcid.jaxb.model.record_v2.Funding) ExternalID(org.orcid.jaxb.model.record_v2.ExternalID) Url(org.orcid.jaxb.model.common_v2.Url)

Aggregations

ExternalID (org.orcid.jaxb.model.record_v2.ExternalID)110 Test (org.junit.Test)97 Url (org.orcid.jaxb.model.common_v2.Url)55 ClientResponse (com.sun.jersey.api.client.ClientResponse)52 ExternalIDs (org.orcid.jaxb.model.record_v2.ExternalIDs)51 Work (org.orcid.jaxb.model.record_v2.Work)32 Title (org.orcid.jaxb.model.common_v2.Title)28 WorkTitle (org.orcid.jaxb.model.record_v2.WorkTitle)22 Funding (org.orcid.jaxb.model.record_v2.Funding)16 PeerReview (org.orcid.jaxb.model.record_v2.PeerReview)16 WorkSummary (org.orcid.jaxb.model.record.summary_v2.WorkSummary)14 ArrayList (java.util.ArrayList)13 ExternalID (org.orcid.jaxb.model.record_rc3.ExternalID)13 ExternalID (org.orcid.jaxb.model.record_rc4.ExternalID)13 FundingTitle (org.orcid.jaxb.model.record_v2.FundingTitle)11 OrcidError (org.orcid.jaxb.model.error_v2.OrcidError)9 WorkGroup (org.orcid.jaxb.model.record.summary_v2.WorkGroup)8 ExternalID (org.orcid.jaxb.model.record_rc2.ExternalID)8 List (java.util.List)7 Validator (javax.xml.validation.Validator)7