package fi.otavanopisto.muikku.users; import java.util.List; import javax.inject.Inject; import fi.otavanopisto.muikku.dao.base.SchoolDataSourceDAO; import fi.otavanopisto.muikku.model.base.SchoolDataSource; import fi.otavanopisto.muikku.model.users.UserGroupEntity; import fi.otavanopisto.muikku.schooldata.UserSchoolDataController; import fi.otavanopisto.muikku.schooldata.entity.GroupUser; import fi.otavanopisto.muikku.schooldata.entity.GroupUserType; import fi.otavanopisto.muikku.schooldata.entity.User; import fi.otavanopisto.muikku.schooldata.entity.UserGroup; public class UserGroupController { @Inject private SchoolDataSourceDAO schoolDataSourceDAO; @Inject private UserSchoolDataController userSchoolDataController; public UserGroup findUserGroup(String dataSource, String identifier) { SchoolDataSource schoolDataSource = schoolDataSourceDAO.findByIdentifier(dataSource); if (dataSource != null) { return userSchoolDataController.findUserGroup(schoolDataSource, identifier); } return null; } public UserGroup findUserGroup(SchoolDataSource schoolDataSource, String identifier) { return userSchoolDataController.findUserGroup(schoolDataSource, identifier); } public UserGroup findUserGroup(UserGroupEntity userGroupEntity) { return findUserGroup(userGroupEntity.getSchoolDataSource(), userGroupEntity.getIdentifier()); } public List<GroupUser> listUserGroupStaffMembers(UserGroup userGroup) { return userSchoolDataController.listGroupUsersByGroupAndType( userGroup, GroupUserType.STAFF_MEMBER); } public User findUserByGroupUser(GroupUser groupUser) { return userSchoolDataController.findUser( groupUser.getUserSchoolDataSource(), groupUser.getUserIdentifier() ); } }