Class GradebookPermissionServiceImpl
- java.lang.Object
-
- org.springframework.dao.support.DaoSupport
-
- org.springframework.orm.hibernate5.support.HibernateDaoSupport
-
- org.sakaiproject.component.gradebook.BaseHibernateManager
-
- org.sakaiproject.component.gradebook.GradebookPermissionServiceImpl
-
- All Implemented Interfaces:
org.sakaiproject.service.gradebook.shared.GradebookPermissionService,org.springframework.beans.factory.InitializingBean
public class GradebookPermissionServiceImpl extends BaseHibernateManager implements org.sakaiproject.service.gradebook.shared.GradebookPermissionService
-
-
Field Summary
-
Fields inherited from class org.sakaiproject.component.gradebook.BaseHibernateManager
authn, eventTrackingService, externalAssessmentService, propertiesMap, serverConfigurationService
-
-
Constructor Summary
Constructors Constructor Description GradebookPermissionServiceImpl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclearPermissionsForUser(String gradebookUid, String userId)MapgetAvailableItemsForStudent(Long gradebookId, String userId, String studentId, Collection courseSections)MapgetAvailableItemsForStudent(String gradebookUid, String userId, String studentId, Collection courseSections)MapgetAvailableItemsForStudents(Long gradebookId, String userId, List studentIds, Collection courseSections)MapgetAvailableItemsForStudents(String gradebookUid, String userId, List studentIds, Collection courseSections)List<Long>getCategoriesForUser(Long gradebookId, String userId, List<Long> categoryIdList)List<Long>getCategoriesForUserForStudentView(Long gradebookId, String userId, String studentId, List<Long> categoriesIds, List<String> sectionIds)MapgetCourseGradePermission(Long gradebookId, String userId, List studentIds, List courseSections)MapgetCourseGradePermission(String gradebookUid, String userId, List studentIds, List courseSections)org.sakaiproject.service.gradebook.shared.GradebookServicegetGradebookService()ListgetGraderPermissionsForUser(Long gradebookId, String userId)ListgetGraderPermissionsForUser(String gradebookUid, String userId)booleangetPermissionForUserForAllAssignment(Long gradebookId, String userId)booleangetPermissionForUserForAllAssignmentForStudent(Long gradebookId, String userId, String studentId, List sectionIds)List<org.sakaiproject.service.gradebook.shared.PermissionDefinition>getPermissionsForUser(String gradebookUid, String userId)List<org.sakaiproject.service.gradebook.shared.PermissionDefinition>getRealmsPermissionsForUser(String userUuid, String siteId, org.sakaiproject.section.api.facade.Role role)Get a list of permissions defined for the given user based on section and role or all sections if allowed.org.sakaiproject.section.api.SectionAwarenessgetSectionAwareness()Map<String,String>getStudentsForItem(Long gradebookId, String userId, List<String> studentIds, int cateType, Long categoryId, List courseSections)Map<String,String>getStudentsForItem(String gradebookUid, String userId, List<String> studentIds, int cateType, Long categoryId, List courseSections)List<String>getViewableGroupsForUser(Long gradebookId, String userId, List<String> groupIds)ListgetViewableGroupsForUser(String gradebookUid, String userId, List groupIds)ListgetViewableStudentsForUser(Long gradebookId, String userId, List studentIds, List sections)ListgetViewableStudentsForUser(String gradebookUid, String userId, List studentIds, List sections)voidsetGradebookService(org.sakaiproject.service.gradebook.shared.GradebookService gradebookService)voidsetSectionAwareness(org.sakaiproject.section.api.SectionAwareness sectionAwareness)voidupdatePermissionsForUser(String gradebookUid, String userId, List<org.sakaiproject.service.gradebook.shared.PermissionDefinition> permissionDefinitions)-
Methods inherited from class org.sakaiproject.component.gradebook.BaseHibernateManager
addPermission, assignmentNameExists, calculateEquivalentPercent, calculateEquivalentPointValueForPercent, convertPointsToLetterGrade, convertPointsToPercentage, createAssignment, createAssignmentForCategory, createCategory, createCategory, createDefaultLetterGradePercentMapping, createOrUpdateDefaultLetterGradePercentMapping, createUngradedAssignment, createUngradedAssignmentForCategory, deletePermission, filterGradeRecordsByStudents, finalizeNullGradeRecords, getAllStudentUids, getAssignment, getAssignmentById, getAssignmentGradeRecord, getAssignments, getAssignmentScoreComment, getAssignmentsForCategory, getAssignmentWithoutStats, getAssignmentWithoutStats, getAuthn, getCategories, getCategoriesWithAssignments, getCategory, getComments, getCountedStudentGradeRecords, getCourseGrade, getCourseGradeOverrides, getCourseGradeRecord, getDefaultLetterGradePercentMapping, getEventTrackingService, getGradebook, getGradebookExternalAssessmentService, getGradebookUid, getIsAssignmentExcused, getLetterGradePercentMapping, getPermissionsForGB, getPermissionsForGBForCategoryIds, getPermissionsForUser, getPermissionsForUserAnyCategory, getPermissionsForUserAnyGroup, getPermissionsForUserAnyGroupAnyCategory, getPermissionsForUserAnyGroupForCategory, getPermissionsForUserForCategory, getPermissionsForUserForGoupsAnyCategory, getPermissionsForUserForGroup, getPropertyValue, getServerConfigurationService, getUserUid, getVisibleExternalAssignments, isAssignmentDefined, isExplicitlyEnteredCourseGradeRecords, isGradebookDefined, postEvent, removeCategory, saveNewAssignment, saveOrUpdateLetterGradePercentMapping, setAssignmentScoreComment, setAuthn, setEventTrackingService, setGradebookExternalAssessmentService, setPropertyValue, setServerConfigurationService, studentCanView, updateAssignment, updateCategory, updateGradebook, updateGradeMapping, updatePermission, updatePermission, validateLetterGradeMapping
-
-
-
-
Method Detail
-
getCategoriesForUser
public List<Long> getCategoriesForUser(Long gradebookId, String userId, List<Long> categoryIdList) throws IllegalArgumentException
- Specified by:
getCategoriesForUserin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService- Throws:
IllegalArgumentException
-
getCategoriesForUserForStudentView
public List<Long> getCategoriesForUserForStudentView(Long gradebookId, String userId, String studentId, List<Long> categoriesIds, List<String> sectionIds) throws IllegalArgumentException
- Specified by:
getCategoriesForUserForStudentViewin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService- Throws:
IllegalArgumentException
-
getPermissionForUserForAllAssignment
public boolean getPermissionForUserForAllAssignment(Long gradebookId, String userId) throws IllegalArgumentException
- Specified by:
getPermissionForUserForAllAssignmentin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService- Throws:
IllegalArgumentException
-
getPermissionForUserForAllAssignmentForStudent
public boolean getPermissionForUserForAllAssignmentForStudent(Long gradebookId, String userId, String studentId, List sectionIds) throws IllegalArgumentException
- Specified by:
getPermissionForUserForAllAssignmentForStudentin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService- Throws:
IllegalArgumentException
-
getStudentsForItem
public Map<String,String> getStudentsForItem(Long gradebookId, String userId, List<String> studentIds, int cateType, Long categoryId, List courseSections) throws IllegalArgumentException
- Specified by:
getStudentsForItemin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService- Throws:
IllegalArgumentException
-
getStudentsForItem
public Map<String,String> getStudentsForItem(String gradebookUid, String userId, List<String> studentIds, int cateType, Long categoryId, List courseSections) throws IllegalArgumentException
- Specified by:
getStudentsForItemin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService- Throws:
IllegalArgumentException
-
getViewableGroupsForUser
public List<String> getViewableGroupsForUser(Long gradebookId, String userId, List<String> groupIds)
- Specified by:
getViewableGroupsForUserin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService
-
getViewableGroupsForUser
public List getViewableGroupsForUser(String gradebookUid, String userId, List groupIds)
- Specified by:
getViewableGroupsForUserin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService
-
getGraderPermissionsForUser
public List getGraderPermissionsForUser(Long gradebookId, String userId)
- Specified by:
getGraderPermissionsForUserin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService
-
getGraderPermissionsForUser
public List getGraderPermissionsForUser(String gradebookUid, String userId)
- Specified by:
getGraderPermissionsForUserin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService
-
getAvailableItemsForStudent
public Map getAvailableItemsForStudent(Long gradebookId, String userId, String studentId, Collection courseSections) throws IllegalArgumentException
- Specified by:
getAvailableItemsForStudentin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService- Throws:
IllegalArgumentException
-
getAvailableItemsForStudent
public Map getAvailableItemsForStudent(String gradebookUid, String userId, String studentId, Collection courseSections) throws IllegalArgumentException
- Specified by:
getAvailableItemsForStudentin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService- Throws:
IllegalArgumentException
-
getAvailableItemsForStudents
public Map getAvailableItemsForStudents(Long gradebookId, String userId, List studentIds, Collection courseSections) throws IllegalArgumentException
- Specified by:
getAvailableItemsForStudentsin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService- Throws:
IllegalArgumentException
-
getAvailableItemsForStudents
public Map getAvailableItemsForStudents(String gradebookUid, String userId, List studentIds, Collection courseSections) throws IllegalArgumentException
- Specified by:
getAvailableItemsForStudentsin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService- Throws:
IllegalArgumentException
-
getCourseGradePermission
public Map getCourseGradePermission(Long gradebookId, String userId, List studentIds, List courseSections) throws IllegalArgumentException
- Specified by:
getCourseGradePermissionin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService- Throws:
IllegalArgumentException
-
getCourseGradePermission
public Map getCourseGradePermission(String gradebookUid, String userId, List studentIds, List courseSections) throws IllegalArgumentException
- Specified by:
getCourseGradePermissionin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService- Throws:
IllegalArgumentException
-
getViewableStudentsForUser
public List getViewableStudentsForUser(Long gradebookId, String userId, List studentIds, List sections)
- Specified by:
getViewableStudentsForUserin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService
-
getViewableStudentsForUser
public List getViewableStudentsForUser(String gradebookUid, String userId, List studentIds, List sections)
- Specified by:
getViewableStudentsForUserin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService
-
getRealmsPermissionsForUser
public List<org.sakaiproject.service.gradebook.shared.PermissionDefinition> getRealmsPermissionsForUser(String userUuid, String siteId, org.sakaiproject.section.api.facade.Role role)
Get a list of permissions defined for the given user based on section and role or all sections if allowed. This method checks realms permissions for role/section and is independent of the gb_permissions_t permissions. note: If user has the grade privilege, they are given the GraderPermission.VIEW_COURSE_GRADE permission to match GB classic functionality. This needs to be reviewed.- Specified by:
getRealmsPermissionsForUserin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService- Parameters:
userUuid-siteId-role- user Role- Returns:
- list of
PermissionDefinitionsor empty list if none
-
getSectionAwareness
public org.sakaiproject.section.api.SectionAwareness getSectionAwareness()
- Overrides:
getSectionAwarenessin classBaseHibernateManager
-
setSectionAwareness
public void setSectionAwareness(org.sakaiproject.section.api.SectionAwareness sectionAwareness)
- Overrides:
setSectionAwarenessin classBaseHibernateManager
-
getGradebookService
public org.sakaiproject.service.gradebook.shared.GradebookService getGradebookService()
-
setGradebookService
public void setGradebookService(org.sakaiproject.service.gradebook.shared.GradebookService gradebookService)
-
getPermissionsForUser
public List<org.sakaiproject.service.gradebook.shared.PermissionDefinition> getPermissionsForUser(String gradebookUid, String userId)
- Specified by:
getPermissionsForUserin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService
-
updatePermissionsForUser
public void updatePermissionsForUser(String gradebookUid, String userId, List<org.sakaiproject.service.gradebook.shared.PermissionDefinition> permissionDefinitions)
- Specified by:
updatePermissionsForUserin interfaceorg.sakaiproject.service.gradebook.shared.GradebookPermissionService
-
-