void checkEditUserPermission(UserDto user) throws KaaAdminServiceException, ControlServiceException { checkUserId(user.getId()); }
protected org.kaaproject.kaa.common.dto.admin.UserDto toUser(UserDto tenantUser) { User user = userFacade.findById(Long.valueOf(tenantUser.getExternalUid())); org.kaaproject.kaa.common.dto.admin.UserDto result = new org.kaaproject.kaa.common.dto.admin.UserDto( user.getId().toString(), user.getUsername(), user.getFirstName(), user.getLastName(), user.getMail(), KaaAuthorityDto.valueOf(user.getAuthorities().iterator().next().getAuthority())); result.setId(tenantUser.getId()); result.setTenantId(tenantUser.getTenantId()); return result; }
@Override public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { User user = userFacade.findByUserName(username); if (user == null) { throw new UsernameNotFoundException("user not found"); } AuthUserDto authUser = new AuthUserDto(user); if (authUser.getAuthority() != KaaAuthorityDto.KAA_ADMIN) { UserDto userDto; try { userDto = controlService.getUserByExternalUid(authUser.getExternalUid()); authUser.setId(userDto.getId()); authUser.setTenantId(userDto.getTenantId()); } catch (ControlServiceException ex) { throw new UsernameNotFoundException("unable to fetch user details", ex); } } return authUser; }
private void assertUsersListsEqual(List<UserDto> expectedUsers, List<UserDto> actualUsers) { Assert.assertNotNull(expectedUsers); Assert.assertNotNull(actualUsers); Assert.assertEquals(expectedUsers.size(), actualUsers.size()); List<UserDto> notMatchedUsers = new ArrayList<>(actualUsers); for (UserDto expectedUser : expectedUsers) { boolean found = false; for (UserDto actualUser : actualUsers) { if (expectedUser.getId().equals(actualUser.getId())) { Assert.assertEquals(expectedUser, actualUser); found = true; notMatchedUsers.remove(actualUser); } } Assert.assertTrue("User not found", found); } Assert.assertTrue(notMatchedUsers.isEmpty()); }
@Test public void removeUserByIdTest() { TenantDto tenantDto = generateTenantDto(); List<UserDto> users = generateUsersDto(tenantDto.getId(), KaaAuthorityDto.TENANT_DEVELOPER, 1); Assert.assertFalse(users.isEmpty()); UserDto user = users.get(0); userService.removeUserById(user.getId()); UserDto foundUser = userService.findUserById(user.getId()); Assert.assertNull(foundUser); }
@Test public void findTenantAdminByIdTest() { UserDto tenantAdminDto = generateTenantAdmin(null, null); UserDto found = userService.findUserById(tenantAdminDto.getId()); Assert.assertEquals(tenantAdminDto, found); }
@Test public void saveUserTest() { TenantDto tenantDto = generateTenantDto(); List<UserDto> users = generateUsersDto(tenantDto.getId(), KaaAuthorityDto.TENANT_DEVELOPER, 1); Assert.assertFalse(users.isEmpty()); UserDto user = users.get(0); UserDto foundUser = userService.findUserById(user.getId()); Assert.assertEquals(user, foundUser); }
@Override public void deleteUser(String userId) throws KaaAdminServiceException { try { UserDto user = controlService.getUser(userId); Utils.checkNotNull(user); if (user.getAuthority().equals(KaaAuthorityDto.TENANT_ADMIN)) { checkAuthority(KaaAuthorityDto.KAA_ADMIN); } else { checkAuthority(KaaAuthorityDto.TENANT_ADMIN); checkTenantId(user.getTenantId()); } userFacade.deleteUser(Long.valueOf(user.getExternalUid())); controlService.deleteUser(user.getId()); } catch (Exception ex) { throw Utils.handleException(ex); } }
protected UserDto generateTenantAdmin(TenantDto tenantDto, String userId) { UserDto tenant = new UserDto(); tenant.setUsername(generateString(TENANT_NAME)); if (tenantDto == null) { tenantDto = generateTenantDto(); } tenant.setTenantId(tenantDto.getId()); if (isBlank(userId)) { List<UserDto> users = generateUsersDto(tenantDto.getId(), KaaAuthorityDto.TENANT_ADMIN, 1); tenant.setId(users.get(0).getId()); } else { tenant.setId(userId); } tenant.setExternalUid(UUID.randomUUID().toString()); tenant = userService.saveUser(tenant); return tenant; }