use of org.orcid.persistence.jpa.entities.SubjectEntity in project ORCID-Source by ORCID.
the class ProfileDaoTest method testInsertWithSubjectsAndKeywords.
@Test
@Rollback(true)
@Transactional(propagation = Propagation.REQUIRES_NEW)
public void testInsertWithSubjectsAndKeywords() {
String newOrcid = "4444-1111-6666-4444";
ProfileEntity profile = new ProfileEntity();
profile.setId(newOrcid);
Set<SubjectEntity> subjects = new HashSet<SubjectEntity>(2);
// profile.setSubjects(subjects);
subjects.add(new SubjectEntity("Rhymin"));
subjects.add(new SubjectEntity("Stealin"));
SortedSet<ProfileKeywordEntity> keywords = new TreeSet<ProfileKeywordEntity>();
profile.setKeywords(keywords);
ProfileKeywordEntity entity = new ProfileKeywordEntity();
entity.setProfile(profile);
entity.setKeywordName("Bilocation");
keywords.add(entity);
entity = new ProfileKeywordEntity();
entity.setProfile(profile);
entity.setKeywordName("Humour");
keywords.add(entity);
entity = new ProfileKeywordEntity();
entity.setProfile(profile);
entity.setKeywordName("Ceramics");
keywords.add(entity);
profileDao.persist(profile);
profileDao.flush();
profile = profileDao.find(newOrcid);
assertNotNull(profile);
assertEquals(newOrcid, profile.getId());
// assertEquals(2, profile.getSubjects().size());
assertEquals(3, profile.getKeywords().size());
}
use of org.orcid.persistence.jpa.entities.SubjectEntity in project ORCID-Source by ORCID.
the class SubjectManagerImpl method retrieveSubjectAsMap.
@Override
public Map<String, String> retrieveSubjectAsMap() {
Map<String, String> map = new TreeMap<String, String>();
for (SubjectEntity subject : subjectDao.getAll()) {
String name = subject.getName();
map.put(name, name);
}
return map;
}
use of org.orcid.persistence.jpa.entities.SubjectEntity 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);
ClientDetailsEntity clientDetails2 = new ClientDetailsEntity();
clientDetails2.setId(APPLICATION_ORCID_2);
clientDetails.setGroupProfileId(applicationProfileEntity.getId());
clientDetailsManager.merge(clientDetails2);
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);
MockitoAnnotations.initMocks(this);
TargetProxyHelper.injectIntoProxy(jaxb2JpaAdapter, "sourceManager", mockSourceManager);
TargetProxyHelper.injectIntoProxy(orcidProfileManager, "sourceManager", mockSourceManager);
SourceEntity sourceEntity = new SourceEntity();
sourceEntity.setSourceClient(clientDetails);
when(mockSourceManager.retrieveSourceEntity()).thenReturn(sourceEntity);
SourceEntity sourceEntity2 = new SourceEntity();
sourceEntity2.setSourceClient(clientDetails2);
when(anotherMockSourceManager.retrieveSourceEntity()).thenReturn(sourceEntity2);
}
Aggregations