private void createDefaultRoles() { final List<Role> allRoles = daoFactory.getRoleDao().getAll(); addMissingRole( allRoles, Role.ROLE_ADMIN ); addMissingRole( allRoles, Role.ROLE_CURATOR ); addMissingRole( allRoles, Role.ROLE_REVIEWER ); log.info( "After init: found " + daoFactory.getRoleDao().getAll().size() + " role(s) in the database." ); }
@Transactional(propagation = Propagation.REQUIRES_NEW) public void createUsersIfNecessary() { createDefaultRoles(); if (daoFactory.getUserDao().countAll() == 0) { createDefaultUsers(); } }
Institution defaultInstitution = getDefaultInstitution(configuration); if (isAutoPersist()) { configurationHandler.persistConfiguration(); log.info("\tDataSources("+ datasourceMap.size() +"):"); for ( Map.Entry<String, DataSource> e : datasourceMap.entrySet() ) { log.info("\t\t" + e.getKey() + ": " + printDataSource( (DataSource) e.getValue() )); checkSchemaCompatibility(); persistInstitution(defaultInstitution, true); if (isAutoPersist()) { for (Institution institution : institutionMap.values()) { persistInstitution(institution, false); persistBasicCvObjects(); createUsersIfNecessary();
if (isAutoPersist() ) { log.info("Persisting necessary CvObjects"); CvTopic usedInClass = createCvIfMissing(CvTopic.class, null, CvTopic.USED_IN_CLASS, null); addUsedInClass(usedInClass, usedInClass, CvObject.class.getName()); CvTopic hidden = createCvIfMissing(CvTopic.class, null, CvTopic.HIDDEN, null); addUsedInClass(hidden, usedInClass, CvObject.class.getName()); CvTopic onhold = createCvIfMissing(CvTopic.class, null, CvTopic.ON_HOLD, null); addUsedInClass(onhold, usedInClass, Publication.class.getName() + "," + Experiment.class.getName()); CvTopic correctionComment = createCvIfMissing(CvTopic.class, null, CvTopic.CORRECTION_COMMENT, null); addUsedInClass(correctionComment, usedInClass, Experiment.class.getName()); final CvPublicationStatus rootStatus = createIntactCvIfMissing(CvPublicationStatus.class, CvPublicationStatusType.PUB_STATUS.identifier(), CvPublicationStatusType.PUB_STATUS.name(), null); for (CvPublicationStatusType cvPublicationStatusType : CvPublicationStatusType.values()) { createIntactCvIfMissing(CvPublicationStatus.class, cvPublicationStatusType.identifier(), cvPublicationStatusType.shortLabel(), rootStatus); final CvLifecycleEvent rootEvent = createIntactCvIfMissing(CvLifecycleEvent.class, CvLifecycleEventType.LIFECYCLE_EVENT.identifier(), CvLifecycleEventType.LIFECYCLE_EVENT.name(), null); for (CvLifecycleEventType cvLifecycleEventType : CvLifecycleEventType.values()) { createIntactCvIfMissing(CvLifecycleEvent.class, cvLifecycleEventType.identifier(), cvLifecycleEventType.shortLabel(), rootEvent);
@Transactional(propagation = Propagation.REQUIRES_NEW) public void persistInstitution(Institution candidateInstitution, boolean isDefault) { Institution institution = institutionDao.getByShortLabel(candidateInstitution.getShortLabel()); CvDatabase intact = daoFactory.getCvObjectDao(CvDatabase.class).getByIdentifier(CvDatabase.INTACT_MI_REF); CvXrefQualifier identity = daoFactory.getCvObjectDao(CvXrefQualifier.class).getByIdentifier(CvXrefQualifier.IDENTITY_MI_REF); if (identity == null && isAutoPersist()){ createCvIfMissing(CvXrefQualifier.class, CvXrefQualifier.IDENTITY_MI_REF, CvXrefQualifier.IDENTITY, null); } if (intact == null && isAutoPersist()){ createCvIfMissing(CvDatabase.class, CvDatabase.INTACT_MI_REF, CvDatabase.INTACT, null); } if (institution == null && isAutoPersist()) { if (log.isDebugEnabled()) log.debug("Persisting institution: "+candidateInstitution); corePersister.saveOrUpdate(candidateInstitution); } else if (isDefault) { if (institution == null) { institution = candidateInstitution; } configuration.setDefaultInstitution(institution); } }
private void createDefaultUsers() { User admin = new User( "admin", "Admin", "N/A", "intact-admin@ebi.ac.uk" ); admin.setPassword("d033e22ae348aeb5660fc2140aec35850c4da997"); createAdminUser(admin); // Make the default user an admin if it does not exist User user = intactContext.getUserContext().getUser(); if (user != null) { createAdminUser(user); } }
Institution defaultInstitution = getDefaultInstitution(configuration); if (isAutoPersist()) { configurationHandler.persistConfiguration(); log.info("\tDataSources("+ datasourceMap.size() +"):"); for ( Map.Entry<String, DataSource> e : datasourceMap.entrySet() ) { log.info("\t\t" + e.getKey() + ": " + printDataSource( (DataSource) e.getValue() )); checkSchemaCompatibility(); persistInstitution(defaultInstitution, true); if (isAutoPersist()) { for (Institution institution : institutionMap.values()) { persistInstitution(institution, false); persistBasicCvObjects(); createUsersIfNecessary();
if (isAutoPersist() ) { log.info("Persisting necessary CvObjects"); CvTopic usedInClass = createCvIfMissing(CvTopic.class, null, CvTopic.USED_IN_CLASS, null); addUsedInClass(usedInClass, usedInClass, CvObject.class.getName()); CvTopic hidden = createCvIfMissing(CvTopic.class, null, CvTopic.HIDDEN, null); addUsedInClass(hidden, usedInClass, CvObject.class.getName()); CvTopic onhold = createCvIfMissing(CvTopic.class, null, CvTopic.ON_HOLD, null); addUsedInClass(onhold, usedInClass, Publication.class.getName() + "," + Experiment.class.getName()); CvTopic correctionComment = createCvIfMissing(CvTopic.class, null, CvTopic.CORRECTION_COMMENT, null); addUsedInClass(correctionComment, usedInClass, Experiment.class.getName()); final CvPublicationStatus rootStatus = createIntactCvIfMissing(CvPublicationStatus.class, CvPublicationStatusType.PUB_STATUS.identifier(), CvPublicationStatusType.PUB_STATUS.name(), null); for (CvPublicationStatusType cvPublicationStatusType : CvPublicationStatusType.values()) { createIntactCvIfMissing(CvPublicationStatus.class, cvPublicationStatusType.identifier(), cvPublicationStatusType.shortLabel(), rootStatus); final CvLifecycleEvent rootEvent = createIntactCvIfMissing(CvLifecycleEvent.class, CvLifecycleEventType.LIFECYCLE_EVENT.identifier(), CvLifecycleEventType.LIFECYCLE_EVENT.name(), null); for (CvLifecycleEventType cvLifecycleEventType : CvLifecycleEventType.values()) { createIntactCvIfMissing(CvLifecycleEvent.class, cvLifecycleEventType.identifier(), cvLifecycleEventType.shortLabel(), rootEvent);
@Transactional(propagation = Propagation.REQUIRES_NEW) public void persistInstitution(Institution candidateInstitution, boolean isDefault) { Institution institution = institutionDao.getByShortLabel(candidateInstitution.getShortLabel()); CvDatabase intact = daoFactory.getCvObjectDao(CvDatabase.class).getByIdentifier(CvDatabase.INTACT_MI_REF); CvXrefQualifier identity = daoFactory.getCvObjectDao(CvXrefQualifier.class).getByIdentifier(CvXrefQualifier.IDENTITY_MI_REF); if (identity == null && isAutoPersist()){ createCvIfMissing(CvXrefQualifier.class, CvXrefQualifier.IDENTITY_MI_REF, CvXrefQualifier.IDENTITY, null); } if (intact == null && isAutoPersist()){ createCvIfMissing(CvDatabase.class, CvDatabase.INTACT_MI_REF, CvDatabase.INTACT, null); } if (institution == null && isAutoPersist()) { if (log.isDebugEnabled()) log.debug("Persisting institution: "+candidateInstitution); corePersister.saveOrUpdate(candidateInstitution); } else if (isDefault) { if (institution == null) { institution = candidateInstitution; } configuration.setDefaultInstitution(institution); } }
private void createDefaultUsers() { User admin = new User( "admin", "Admin", "N/A", "intact-admin@ebi.ac.uk" ); admin.setPassword("d033e22ae348aeb5660fc2140aec35850c4da997"); createAdminUser(admin); // Make the default user an admin if it does not exist User user = intactContext.getUserContext().getUser(); if (user != null) { createAdminUser(user); } }
@Transactional(propagation = Propagation.REQUIRES_NEW) public void createUsersIfNecessary() { createDefaultRoles(); if (daoFactory.getUserDao().countAll() == 0) { createDefaultUsers(); } }
private void createDefaultRoles() { final List<Role> allRoles = daoFactory.getRoleDao().getAll(); addMissingRole( allRoles, Role.ROLE_ADMIN ); addMissingRole( allRoles, Role.ROLE_CURATOR ); addMissingRole( allRoles, Role.ROLE_REVIEWER ); log.info( "After init: found " + daoFactory.getRoleDao().getAll().size() + " role(s) in the database." ); }