Class PermissionService


  • @Service
    @Transactional
    public class PermissionService
    extends Object
    Centralized service for all permission-checks.
    Author:
    Frederik Heremans
    • Field Detail

      • taskService

        @Autowired
        protected TaskService taskService
      • cmmnHistoryService

        @Autowired
        protected org.flowable.cmmn.api.CmmnHistoryService cmmnHistoryService
    • Constructor Detail

      • PermissionService

        public PermissionService()
    • Method Detail

      • validateReadPermissionOnTask

        public org.flowable.task.api.history.HistoricTaskInstance validateReadPermissionOnTask​(SecurityScope user,
                                                                                               String taskId)
        Check if the given user is allowed to read the task.
      • isTaskOwnerOrAssignee

        public boolean isTaskOwnerOrAssignee​(SecurityScope user,
                                             String taskId)
      • isTaskOwnerOrAssignee

        public boolean isTaskOwnerOrAssignee​(SecurityScope user,
                                             org.flowable.task.api.Task task)
      • validateIfUserIsInitiatorAndCanCompleteTask

        public boolean validateIfUserIsInitiatorAndCanCompleteTask​(SecurityScope user,
                                                                   org.flowable.task.api.Task task)
      • hasReadPermissionOnProcessInstance

        public boolean hasReadPermissionOnProcessInstance​(SecurityScope user,
                                                          String processInstanceId)
        Check if the given user is allowed to read the process instance.
      • hasReadPermissionOnCase

        public boolean hasReadPermissionOnCase​(SecurityScope user,
                                               String caseId)
        Check if the given user is allowed to read the Case.
      • hasReadPermissionOnProcessInstance

        public boolean hasReadPermissionOnProcessInstance​(SecurityScope user,
                                                          HistoricProcessInstance historicProcessInstance,
                                                          String processInstanceId)
        Check if the given user is allowed to read the process instance.
      • hasReadPermissionOnCaseInstance

        public boolean hasReadPermissionOnCaseInstance​(SecurityScope user,
                                                       org.flowable.cmmn.api.history.HistoricCaseInstance historicCaseInstance,
                                                       String caseInstanceId)
        Check if the given user is allowed to read the process instance.
      • canAddRelatedContentToTask

        public boolean canAddRelatedContentToTask​(SecurityScope user,
                                                  String taskId)
      • canAddRelatedContentToProcessInstance

        public boolean canAddRelatedContentToProcessInstance​(SecurityScope user,
                                                             String processInstanceId)
      • canAddRelatedContentToCase

        public boolean canAddRelatedContentToCase​(SecurityScope user,
                                                  String caseId)
      • hasWritePermissionOnRelatedContent

        public boolean hasWritePermissionOnRelatedContent​(SecurityScope user,
                                                          ContentItem content)
      • getPotentialStarterGroupIds

        protected List<String> getPotentialStarterGroupIds​(List<org.flowable.identitylink.api.IdentityLink> identityLinks)
      • getPotentialStarterUserIds

        protected List<String> getPotentialStarterUserIds​(List<org.flowable.identitylink.api.IdentityLink> identityLinks)