/** * Creates ProjectForge's system groups for the new tenant.<br/> * Creates for every user an history entry if the user is part of this new tenant. * * @param tenant * @see org.projectforge.framework.persistence.api.BaseDao#afterSave(org.projectforge.core.ExtendedBaseDO) */ @Override public void afterSave(final TenantDO tenant) { final PFUserDO adminUser = ThreadLocalUserContext.getUser(); if (tenant.isDefault() == false) { // The groups do already exist for the default tenant. initDatabaseDao.internalCreateProjectForgeGroups(tenant, adminUser); } else { // Clear the dummy entry: TenantRegistryMap.getInstance().clear(); } final Collection<TenantDO> tenantList = new ArrayList<TenantDO>(); tenantList.add(tenant); if (tenant.getAssignedUsers() != null) { // Create history entry of PFUserDO for all assigned users: for (final PFUserDO user : tenant.getAssignedUsers()) { createHistoryEntry(user, null, tenantList); } } }
protected void clearDatabase() { log.info("clearDatabase..."); emf.getJpaSchemaService().clearDatabase(); TenantRegistryMap.getInstance().setAllUserGroupCachesAsExpired(); getUserGroupCache().setExpired(); TenantRegistryMap.getInstance().clear(); }
TenantRegistryMap.getInstance().clear(); TenantRegistryMap.getInstance().getTenantRegistry();
/** * @param adminUser The admin user with the desired username and the salted password (salt string included). * @param adminUserTimezone */ public PFUserDO updateAdminUser(PFUserDO user, final TimeZone adminUserTimezone) { //Update test data user with data from setup page PFUserDO adminUser = userDao.getInternalByName(DEFAULT_ADMIN_USER); adminUser.setUsername(user.getUsername()); adminUser.setPassword(user.getPassword()); adminUser.setPasswordSalt(user.getPasswordSalt()); adminUser.setLocalUser(true); adminUser.setTimeZone(adminUserTimezone); adminUser.setTenant(tenantService.getDefaultTenant()); adminUser.setSuperAdmin(true); userDao.internalUpdate(adminUser); ThreadLocalUserContext.setUser(getUserGroupCache(), adminUser); TenantRegistryMap.getInstance().clear(); UserGroupCache userGroupCache = TenantRegistryMap.getInstance().getTenantRegistry().getUserGroupCache(); userGroupCache.forceReload(); return adminUser; }