Search in sources :

Example 16 with CreditName

use of org.orcid.jaxb.model.message.CreditName in project ORCID-Source by ORCID.

the class OrcidProfileManagerImplTest method before.

@Before
@Transactional
@Rollback
public void before() throws Exception {
    OrcidProfileManagerImpl orcidProfileManagerImpl = getTargetObject(orcidProfileManager, OrcidProfileManagerImpl.class);
    orcidProfileManagerImpl.setNotificationManager(notificationManager);
    if (profileDao.find(TEST_ORCID) != null) {
        profileDao.remove(TEST_ORCID);
    }
    subjectDao.merge(new SubjectEntity("Computer Science"));
    subjectDao.merge(new SubjectEntity("Dance"));
    OrcidProfile delegateProfile = new OrcidProfile();
    delegateProfile.setOrcidIdentifier(DELEGATE_ORCID);
    OrcidBio delegateBio = new OrcidBio();
    delegateProfile.setOrcidBio(delegateBio);
    PersonalDetails delegatePersonalDetails = new PersonalDetails();
    delegateBio.setPersonalDetails(delegatePersonalDetails);
    CreditName delegateCreditName = new CreditName("H. Shearer");
    delegateCreditName.setVisibility(Visibility.PUBLIC);
    delegatePersonalDetails.setCreditName(delegateCreditName);
    orcidProfileManager.createOrcidProfile(delegateProfile, false, false);
    OrcidProfile applicationProfile = new OrcidProfile();
    applicationProfile.setOrcidIdentifier(APPLICATION_ORCID);
    OrcidBio applicationBio = new OrcidBio();
    applicationProfile.setOrcidBio(applicationBio);
    PersonalDetails applicationPersonalDetails = new PersonalDetails();
    applicationBio.setPersonalDetails(applicationPersonalDetails);
    applicationPersonalDetails.setCreditName(new CreditName("Brown University"));
    orcidProfileManager.createOrcidProfile(applicationProfile, false, false);
    ClientDetailsEntity clientDetails = new ClientDetailsEntity();
    clientDetails.setId(applicationProfile.getOrcidIdentifier().getPath());
    ProfileEntity applicationProfileEntity = profileDao.find(applicationProfile.getOrcidIdentifier().getPath());
    profileDao.refresh(applicationProfileEntity);
    clientDetails.setGroupProfileId(applicationProfileEntity.getId());
    clientDetailsManager.merge(clientDetails);
    OrcidOauth2TokenDetail token = new OrcidOauth2TokenDetail();
    token.setTokenValue("1234");
    token.setClientDetailsId(clientDetails.getId());
    token.setProfile(profileDao.find(delegateProfile.getOrcidIdentifier().getPath()));
    token.setScope(StringUtils.join(new String[] { ScopePathType.ORCID_BIO_READ_LIMITED.value(), ScopePathType.ORCID_BIO_UPDATE.value() }, " "));
    SortedSet<OrcidOauth2TokenDetail> tokens = new TreeSet<>();
    tokens.add(token);
    ProfileEntity delegateProfileEntity = profileDao.find(delegateProfile.getOrcidIdentifier().getPath());
    delegateProfileEntity.setTokenDetails(tokens);
    profileDao.merge(delegateProfileEntity);
    SecurityQuestionEntity existingSecurityQuestionEntity = securityQuestionDao.find(3);
    if (existingSecurityQuestionEntity == null) {
        SecurityQuestionEntity securityQuestionEntity = new SecurityQuestionEntity();
        securityQuestionEntity.setId(3);
        securityQuestionEntity.setQuestion("What?");
        securityQuestionDao.persist(securityQuestionEntity);
    }
    orcidProfileManager.setCompareWorksUsingScopusWay(true);
}
Also used : ClientDetailsEntity(org.orcid.persistence.jpa.entities.ClientDetailsEntity) OrcidBio(org.orcid.jaxb.model.message.OrcidBio) SubjectEntity(org.orcid.persistence.jpa.entities.SubjectEntity) CreditName(org.orcid.jaxb.model.message.CreditName) PersonalDetails(org.orcid.jaxb.model.message.PersonalDetails) ProfileEntity(org.orcid.persistence.jpa.entities.ProfileEntity) SecurityQuestionEntity(org.orcid.persistence.jpa.entities.SecurityQuestionEntity) OrcidProfile(org.orcid.jaxb.model.message.OrcidProfile) OrcidProfileManagerImpl(org.orcid.core.manager.impl.OrcidProfileManagerImpl) TreeSet(java.util.TreeSet) OrcidOauth2TokenDetail(org.orcid.persistence.jpa.entities.OrcidOauth2TokenDetail) Before(org.junit.Before) Rollback(org.springframework.test.annotation.Rollback) Transactional(org.springframework.transaction.annotation.Transactional)

Example 17 with CreditName

use of org.orcid.jaxb.model.message.CreditName in project ORCID-Source by ORCID.

the class OrcidProfileManagerImplTest method testDeactivateProfile.

@Test
@Transactional
@Rollback(true)
public void testDeactivateProfile() {
    OrcidProfile profile1 = createBasicProfile();
    profile1.getOrcidBio().getPersonalDetails().setCreditName(new CreditName("My Credit Name"));
    ExternalIdentifiers extIds = new ExternalIdentifiers();
    ExternalIdentifier extId = new ExternalIdentifier();
    extId.setExternalIdCommonName(new ExternalIdCommonName("External body"));
    extId.setExternalIdReference(new ExternalIdReference("abc123"));
    extIds.getExternalIdentifier().add(extId);
    profile1.getOrcidBio().setExternalIdentifiers(extIds);
    OtherNames otherNames = new OtherNames();
    otherNames.addOtherName("OtherName 1", null);
    otherNames.addOtherName("OtherName 2", null);
    profile1.getOrcidBio().getPersonalDetails().setOtherNames(otherNames);
    profile1 = orcidProfileManager.createOrcidProfile(profile1, false, false);
    assertEquals(1, profile1.getOrcidBio().getExternalIdentifiers().getExternalIdentifier().size());
    assertEquals(2, profile1.getOrcidBio().getPersonalDetails().getOtherNames().getOtherName().size());
    assertEquals("My Credit Name", profile1.getOrcidBio().getPersonalDetails().getCreditName().getContent());
    assertEquals(Visibility.PRIVATE, profile1.getOrcidBio().getExternalIdentifiers().getExternalIdentifier().iterator().next().getVisibility());
    orcidProfileManager.deactivateOrcidProfile(profile1);
    OrcidProfile retrievedProfile = orcidProfileManager.retrieveOrcidProfile(profile1.getOrcidIdentifier().getPath());
    assertTrue(retrievedProfile.getOrcidBio().getExternalIdentifiers().getExternalIdentifier().isEmpty());
    assertNull(retrievedProfile.getOrcidBio().getPersonalDetails().getCreditName());
    assertEquals(0, retrievedProfile.getOrcidBio().getPersonalDetails().getOtherNames().getOtherName().size());
    assertEquals("Given Names Deactivated", retrievedProfile.getOrcidBio().getPersonalDetails().getGivenNames().getContent());
    assertEquals("Family Name Deactivated", retrievedProfile.getOrcidBio().getPersonalDetails().getFamilyName().getContent());
    assertNull(retrievedProfile.getOrcidBio().getBiography().getContent());
}
Also used : OrcidProfile(org.orcid.jaxb.model.message.OrcidProfile) ExternalIdCommonName(org.orcid.jaxb.model.message.ExternalIdCommonName) ExternalIdReference(org.orcid.jaxb.model.message.ExternalIdReference) ExternalIdentifier(org.orcid.jaxb.model.message.ExternalIdentifier) WorkExternalIdentifier(org.orcid.jaxb.model.message.WorkExternalIdentifier) FundingExternalIdentifier(org.orcid.jaxb.model.message.FundingExternalIdentifier) OtherNames(org.orcid.jaxb.model.message.OtherNames) CreditName(org.orcid.jaxb.model.message.CreditName) WorkExternalIdentifiers(org.orcid.jaxb.model.message.WorkExternalIdentifiers) FundingExternalIdentifiers(org.orcid.jaxb.model.message.FundingExternalIdentifiers) ExternalIdentifiers(org.orcid.jaxb.model.message.ExternalIdentifiers) Test(org.junit.Test) Rollback(org.springframework.test.annotation.Rollback) Transactional(org.springframework.transaction.annotation.Transactional)

Example 18 with CreditName

use of org.orcid.jaxb.model.message.CreditName in project ORCID-Source by ORCID.

the class OrcidJaxbCopyManagerTest method getBio.

private OrcidBio getBio(String sufix, Visibility visibility, int max) {
    OrcidBio orcidBio = new OrcidBio();
    Biography bio = new Biography(sufix + "My Biography", visibility);
    orcidBio.setBiography(bio);
    ContactDetails contactDetails = new ContactDetails();
    Address address = new Address();
    Country country = new Country(visibility.equals(Visibility.PRIVATE) ? Iso3166Country.US : Iso3166Country.CR);
    country.setVisibility(visibility);
    address.setCountry(country);
    contactDetails.setAddress(address);
    List<Email> emails = new ArrayList<Email>();
    for (int i = 0; i < max; i++) {
        Email email = new Email();
        email.setValue(sufix + "Email" + i);
        if (i == 0) {
            email.setPrimary(true);
        }
        email.setVisibility(visibility);
        emails.add(email);
    }
    contactDetails.setEmail(emails);
    orcidBio.setContactDetails(contactDetails);
    ExternalIdentifiers extIds = new ExternalIdentifiers();
    extIds.setVisibility(visibility);
    for (int i = 0; i < max; i++) {
        ExternalIdentifier extId = new ExternalIdentifier();
        extId.setExternalIdCommonName(new ExternalIdCommonName(sufix + "CommonName" + i));
        extId.setExternalIdReference(new ExternalIdReference(sufix + "Reference" + i));
        extIds.getExternalIdentifier().add(extId);
    }
    orcidBio.setExternalIdentifiers(extIds);
    Keywords keywords = new Keywords();
    keywords.setVisibility(visibility);
    for (int i = 0; i < max; i++) {
        Keyword k = new Keyword();
        k.setContent(sufix + "Keyword" + i);
        keywords.getKeyword().add(k);
    }
    orcidBio.setKeywords(keywords);
    PersonalDetails personalDetails = new PersonalDetails();
    CreditName creditName = new CreditName(sufix + "Credit name");
    creditName.setVisibility(visibility);
    personalDetails.setCreditName(creditName);
    FamilyName familyName = new FamilyName(sufix + "Family");
    personalDetails.setFamilyName(familyName);
    GivenNames givenNames = new GivenNames();
    givenNames.setContent(sufix + "Given");
    personalDetails.setGivenNames(givenNames);
    OtherNames other = new OtherNames();
    other.setVisibility(visibility);
    for (int i = 0; i < max; i++) {
        other.addOtherName(sufix + "Other" + i, null);
    }
    personalDetails.setOtherNames(other);
    orcidBio.setPersonalDetails(personalDetails);
    ResearcherUrls researcherUrls = new ResearcherUrls();
    researcherUrls.setVisibility(visibility);
    for (int i = 0; i < max; i++) {
        ResearcherUrl rUrl = new ResearcherUrl();
        rUrl.setUrl(new Url("http://www.rurl.com/" + sufix + "/" + i));
        rUrl.setUrlName(new UrlName(sufix + "Url" + i));
        researcherUrls.getResearcherUrl().add(rUrl);
    }
    orcidBio.setResearcherUrls(researcherUrls);
    return orcidBio;
}
Also used : Email(org.orcid.jaxb.model.message.Email) Keywords(org.orcid.jaxb.model.message.Keywords) OrcidBio(org.orcid.jaxb.model.message.OrcidBio) Address(org.orcid.jaxb.model.message.Address) ExternalIdReference(org.orcid.jaxb.model.message.ExternalIdReference) Keyword(org.orcid.jaxb.model.message.Keyword) ExternalIdentifier(org.orcid.jaxb.model.message.ExternalIdentifier) FamilyName(org.orcid.jaxb.model.message.FamilyName) OtherNames(org.orcid.jaxb.model.message.OtherNames) ArrayList(java.util.ArrayList) CreditName(org.orcid.jaxb.model.message.CreditName) UrlName(org.orcid.jaxb.model.message.UrlName) PersonalDetails(org.orcid.jaxb.model.message.PersonalDetails) Url(org.orcid.jaxb.model.message.Url) ResearcherUrl(org.orcid.jaxb.model.message.ResearcherUrl) ExternalIdCommonName(org.orcid.jaxb.model.message.ExternalIdCommonName) ContactDetails(org.orcid.jaxb.model.message.ContactDetails) GivenNames(org.orcid.pojo.GivenNames) Biography(org.orcid.jaxb.model.message.Biography) Country(org.orcid.jaxb.model.message.Country) Iso3166Country(org.orcid.jaxb.model.message.Iso3166Country) ResearcherUrls(org.orcid.jaxb.model.message.ResearcherUrls) ResearcherUrl(org.orcid.jaxb.model.message.ResearcherUrl) ExternalIdentifiers(org.orcid.jaxb.model.message.ExternalIdentifiers)

Example 19 with CreditName

use of org.orcid.jaxb.model.message.CreditName in project ORCID-Source by ORCID.

the class OrcidProfileManagerBaseTest method createWork1Contributors.

private WorkContributors createWork1Contributors() {
    WorkContributors workContributors = new WorkContributors();
    Contributor workContributor1 = new Contributor();
    workContributors.getContributor().add(workContributor1);
    workContributor1.setCreditName(new CreditName("Will Simpson"));
    ContributorAttributes contributorAttributes1 = new ContributorAttributes();
    workContributor1.setContributorAttributes(contributorAttributes1);
    contributorAttributes1.setContributorRole(ContributorRole.AUTHOR);
    contributorAttributes1.setContributorSequence(SequenceType.FIRST);
    Contributor workContributor2 = new Contributor();
    workContributors.getContributor().add(workContributor2);
    workContributor2.setCreditName(new CreditName("Josiah Wedgewood"));
    ContributorAttributes contributorAttributes2 = new ContributorAttributes();
    workContributor2.setContributorAttributes(contributorAttributes2);
    contributorAttributes2.setContributorRole(ContributorRole.AUTHOR);
    contributorAttributes2.setContributorSequence(SequenceType.ADDITIONAL);
    return workContributors;
}
Also used : ContributorAttributes(org.orcid.jaxb.model.message.ContributorAttributes) WorkContributors(org.orcid.jaxb.model.message.WorkContributors) CreditName(org.orcid.jaxb.model.message.CreditName) Contributor(org.orcid.jaxb.model.message.Contributor)

Example 20 with CreditName

use of org.orcid.jaxb.model.message.CreditName in project ORCID-Source by ORCID.

the class OrcidProfileManagerBaseTest method createFullOrcidProfile.

protected OrcidProfile createFullOrcidProfile() {
    OrcidProfile profile2 = new OrcidProfile();
    profile2.setPassword("password");
    profile2.setVerificationCode("1234");
    profile2.setOrcidIdentifier(TEST_ORCID);
    OrcidBio bio = new OrcidBio();
    ContactDetails contactDetails = new ContactDetails();
    contactDetails.addOrReplacePrimaryEmail(new Email("will@orcid.org"));
    bio.setContactDetails(contactDetails);
    profile2.setOrcidBio(bio);
    PersonalDetails personalDetails = new PersonalDetails();
    personalDetails.setGivenNames(new GivenNames("William"));
    personalDetails.setFamilyName(new FamilyName("Simpson"));
    personalDetails.setCreditName(new CreditName("W. J. R. Simpson"));
    bio.setPersonalDetails(personalDetails);
    ResearcherUrls researcherUrls = new ResearcherUrls();
    researcherUrls.getResearcherUrl().add(new ResearcherUrl(new Url("http://www.wjrs.co.uk"), null));
    bio.setResearcherUrls(researcherUrls);
    Keywords keywords = new Keywords();
    bio.setKeywords(keywords);
    keywords.getKeyword().add(new Keyword("Java", null));
    bio.setBiography(new Biography("Will is a software developer at Semantico"));
    return profile2;
}
Also used : Email(org.orcid.jaxb.model.message.Email) Keywords(org.orcid.jaxb.model.message.Keywords) OrcidBio(org.orcid.jaxb.model.message.OrcidBio) Keyword(org.orcid.jaxb.model.message.Keyword) FamilyName(org.orcid.jaxb.model.message.FamilyName) CreditName(org.orcid.jaxb.model.message.CreditName) PersonalDetails(org.orcid.jaxb.model.message.PersonalDetails) Url(org.orcid.jaxb.model.message.Url) ResearcherUrl(org.orcid.jaxb.model.message.ResearcherUrl) OrcidProfile(org.orcid.jaxb.model.message.OrcidProfile) ContactDetails(org.orcid.jaxb.model.message.ContactDetails) GivenNames(org.orcid.jaxb.model.message.GivenNames) Biography(org.orcid.jaxb.model.message.Biography) ResearcherUrls(org.orcid.jaxb.model.message.ResearcherUrls) ResearcherUrl(org.orcid.jaxb.model.message.ResearcherUrl)

Aggregations

CreditName (org.orcid.jaxb.model.message.CreditName)24 OrcidBio (org.orcid.jaxb.model.message.OrcidBio)14 OrcidProfile (org.orcid.jaxb.model.message.OrcidProfile)14 PersonalDetails (org.orcid.jaxb.model.message.PersonalDetails)14 GivenNames (org.orcid.jaxb.model.message.GivenNames)11 ContactDetails (org.orcid.jaxb.model.message.ContactDetails)9 FamilyName (org.orcid.jaxb.model.message.FamilyName)9 OtherNames (org.orcid.jaxb.model.message.OtherNames)8 Email (org.orcid.jaxb.model.message.Email)7 Test (org.junit.Test)6 ExternalIdentifiers (org.orcid.jaxb.model.message.ExternalIdentifiers)6 OrcidMessage (org.orcid.jaxb.model.message.OrcidMessage)6 Url (org.orcid.jaxb.model.message.Url)6 ExternalIdentifier (org.orcid.jaxb.model.message.ExternalIdentifier)5 Keyword (org.orcid.jaxb.model.message.Keyword)5 Keywords (org.orcid.jaxb.model.message.Keywords)5 WorkExternalIdentifier (org.orcid.jaxb.model.message.WorkExternalIdentifier)5 WorkExternalIdentifiers (org.orcid.jaxb.model.message.WorkExternalIdentifiers)5 Biography (org.orcid.jaxb.model.message.Biography)4 Contributor (org.orcid.jaxb.model.message.Contributor)4