Class AbstractWorklogPROPermissionManager

java.lang.Object
com.deniz.jira.worklog.permissions.AbstractWorklogPROPermissionManager
All Implemented Interfaces:
com.atlassian.jira.security.PermissionManager, WPPermissionManager
Direct Known Subclasses:
WorklogPROPermissionManager

public abstract class AbstractWorklogPROPermissionManager
extends java.lang.Object
implements WPPermissionManager
  • Nested Class Summary

    Nested classes/interfaces inherited from interface com.deniz.jira.worklog.permissions.WPPermissionManager

    WPPermissionManager.Access
  • Field Summary

    Fields 
    Modifier and Type Field Description
    protected InternalIssuesService internalIssuesService  
    protected com.atlassian.jira.issue.security.IssueSecuritySchemeManager issueSecuritySchemeManager  
    protected com.atlassian.jira.security.PermissionManager permissionManager  
    protected com.atlassian.jira.permission.PermissionSchemeManager permissionSchemeManager  
  • Constructor Summary

    Constructors 
    Modifier Constructor Description
    protected AbstractWorklogPROPermissionManager​(com.atlassian.jira.security.PermissionManager permissionManager, com.atlassian.jira.issue.security.IssueSecuritySchemeManager issueSecuritySchemeManager, com.atlassian.jira.permission.PermissionSchemeManager permissionSchemeManager, InternalIssuesService internalIssuesService)  
  • Method Summary

    Modifier and Type Method Description
    WPPermissionManager.Access checkPermissionToViewWorklog​(com.atlassian.jira.issue.worklog.Worklog worklog, com.atlassian.jira.user.ApplicationUser user)  
    protected com.atlassian.jira.security.plugin.ProjectPermissionKey convertToProjectPermissionKey​(int permissionId)  
    protected boolean doIssuePermissionCheck​(com.atlassian.jira.security.plugin.ProjectPermissionKey permissionKey, com.atlassian.jira.issue.Issue issue, com.atlassian.jira.user.ApplicationUser user)  
    protected abstract boolean doIssuePermissionCheck​(com.atlassian.jira.security.plugin.ProjectPermissionKey permissionKey, com.atlassian.jira.issue.Issue issue, com.atlassian.jira.user.ApplicationUser user, boolean issueCreation)  
    protected boolean doIssuePermissionCheckImp​(com.atlassian.jira.security.plugin.ProjectPermissionKey permissionKey, com.atlassian.jira.issue.Issue issue, com.atlassian.jira.user.ApplicationUser user, boolean issueCreation)  
    protected boolean doPermissionSchemeCheck​(com.atlassian.jira.security.plugin.ProjectPermissionKey permissionKey, com.atlassian.jira.issue.Issue issue, com.atlassian.jira.user.ApplicationUser user, boolean issueCreation)  
    protected abstract boolean doProjectPermissionCheck​(com.atlassian.jira.security.plugin.ProjectPermissionKey permissionKey, com.atlassian.jira.project.Project project, com.atlassian.jira.user.ApplicationUser user, boolean issueCreation)  
    void flushCache()  
    java.util.Collection<com.atlassian.crowd.embedded.api.Group> getAllGroups​(int i, com.atlassian.jira.project.Project project)  
    java.util.Collection<com.atlassian.jira.permission.ProjectPermission> getAllProjectPermissions()  
    java.util.Collection<com.atlassian.jira.permission.ProjectPermission> getProjectPermissions​(com.atlassian.jira.permission.ProjectPermissionCategory projectPermissionCategory)  
    java.util.Collection<com.atlassian.jira.project.Project> getProjects​(int i, com.atlassian.jira.user.ApplicationUser applicationUser)
    Deprecated.
    java.util.Collection<com.atlassian.jira.project.Project> getProjects​(int i, com.atlassian.jira.user.ApplicationUser applicationUser, com.atlassian.jira.project.ProjectCategory projectCategory)
    Deprecated.
    java.util.Collection<com.atlassian.jira.project.Project> getProjects​(com.atlassian.jira.security.plugin.ProjectPermissionKey projectPermissionKey, com.atlassian.jira.user.ApplicationUser applicationUser)  
    java.util.Collection<com.atlassian.jira.project.Project> getProjects​(com.atlassian.jira.security.plugin.ProjectPermissionKey projectPermissionKey, com.atlassian.jira.user.ApplicationUser applicationUser, com.atlassian.jira.project.ProjectCategory projectCategory)  
    boolean hasPermission​(int permissionId, com.atlassian.jira.issue.Issue issue, com.atlassian.jira.user.ApplicationUser applicationUser)
    Deprecated.
    boolean hasPermission​(int permissionId, com.atlassian.jira.project.Project project, com.atlassian.jira.user.ApplicationUser applicationUser)
    Deprecated.
    boolean hasPermission​(int permissionId, com.atlassian.jira.project.Project project, com.atlassian.jira.user.ApplicationUser applicationUser, boolean issueCreation)
    Deprecated.
    boolean hasPermission​(int permissionId, com.atlassian.jira.user.ApplicationUser applicationUser)
    Deprecated.
    boolean hasPermission​(com.atlassian.jira.security.plugin.ProjectPermissionKey permissionKey, com.atlassian.jira.issue.Issue issue, com.atlassian.jira.user.ApplicationUser user)
    We handle "Worklog Related Permissions" as a special case in this method to allow collaborators to log work if they have permission granted to them.
    boolean hasPermission​(com.atlassian.jira.security.plugin.ProjectPermissionKey projectPermissionKey, com.atlassian.jira.issue.Issue issue, com.atlassian.jira.user.ApplicationUser applicationUser, com.atlassian.jira.issue.status.Status status)  
    boolean hasPermission​(com.atlassian.jira.security.plugin.ProjectPermissionKey projectPermissionKey, com.atlassian.jira.issue.Issue issue, com.atlassian.jira.user.ApplicationUser applicationUser, com.opensymphony.workflow.loader.ActionDescriptor actionDescriptor)  
    boolean hasPermission​(com.atlassian.jira.security.plugin.ProjectPermissionKey projectPermissionKey, com.atlassian.jira.project.Project project, com.atlassian.jira.user.ApplicationUser applicationUser)
    We handle "WORK_ON_ISSUE" and other worklog related permissions as a special case in this method to allow collaborators to log work if they have permission granted to them.
    boolean hasPermission​(com.atlassian.jira.security.plugin.ProjectPermissionKey projectPermissionKey, com.atlassian.jira.project.Project project, com.atlassian.jira.user.ApplicationUser applicationUser, boolean issueCreation)  
    boolean hasPermissionToViewEstimates​(com.atlassian.jira.issue.Issue issue, com.atlassian.jira.user.ApplicationUser user)  
    boolean hasPermissionToViewWorklog​(com.atlassian.jira.issue.worklog.Worklog worklog, com.atlassian.jira.user.ApplicationUser user)  
    boolean hasProjects​(int permissionId, com.atlassian.jira.user.ApplicationUser applicationUser)
    Deprecated.
    boolean hasProjects​(com.atlassian.jira.security.plugin.ProjectPermissionKey projectPermissionKey, com.atlassian.jira.user.ApplicationUser applicationUser)  
    com.atlassian.jira.security.ProjectWidePermission hasProjectWidePermission​(com.atlassian.jira.security.plugin.ProjectPermissionKey projectPermissionKey, com.atlassian.jira.project.Project project, com.atlassian.jira.user.ApplicationUser applicationUser)  
    protected boolean isWorklogPermission​(com.atlassian.jira.security.plugin.ProjectPermissionKey permissionKey)  
    void removeGroupPermissions​(java.lang.String s)  
    void removeUserPermissions​(com.atlassian.jira.user.ApplicationUser applicationUser)  

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface com.atlassian.jira.security.PermissionManager

    getArchivedProjects, getProjectPermission, hasPublicAccess
  • Field Details

  • Constructor Details

    • AbstractWorklogPROPermissionManager

      protected AbstractWorklogPROPermissionManager​(com.atlassian.jira.security.PermissionManager permissionManager, com.atlassian.jira.issue.security.IssueSecuritySchemeManager issueSecuritySchemeManager, com.atlassian.jira.permission.PermissionSchemeManager permissionSchemeManager, InternalIssuesService internalIssuesService)
  • Method Details

    • doPermissionSchemeCheck

      protected boolean doPermissionSchemeCheck​(com.atlassian.jira.security.plugin.ProjectPermissionKey permissionKey, com.atlassian.jira.issue.Issue issue, com.atlassian.jira.user.ApplicationUser user, boolean issueCreation)
    • doIssuePermissionCheckImp

      protected boolean doIssuePermissionCheckImp​(com.atlassian.jira.security.plugin.ProjectPermissionKey permissionKey, com.atlassian.jira.issue.Issue issue, com.atlassian.jira.user.ApplicationUser user, boolean issueCreation)
    • doProjectPermissionCheck

      protected abstract boolean doProjectPermissionCheck​(@Nonnull com.atlassian.jira.security.plugin.ProjectPermissionKey permissionKey, com.atlassian.jira.project.Project project, @Nullable com.atlassian.jira.user.ApplicationUser user, boolean issueCreation)
    • isWorklogPermission

      protected boolean isWorklogPermission​(@Nonnull com.atlassian.jira.security.plugin.ProjectPermissionKey permissionKey)
    • convertToProjectPermissionKey

      protected com.atlassian.jira.security.plugin.ProjectPermissionKey convertToProjectPermissionKey​(int permissionId)
    • hasPermission

      public boolean hasPermission​(@Nonnull com.atlassian.jira.security.plugin.ProjectPermissionKey permissionKey, @Nonnull com.atlassian.jira.issue.Issue issue, @Nullable com.atlassian.jira.user.ApplicationUser user)
      We handle "Worklog Related Permissions" as a special case in this method to allow collaborators to log work if they have permission granted to them.
      Specified by:
      hasPermission in interface com.atlassian.jira.security.PermissionManager
    • doIssuePermissionCheck

      protected boolean doIssuePermissionCheck​(com.atlassian.jira.security.plugin.ProjectPermissionKey permissionKey, com.atlassian.jira.issue.Issue issue, com.atlassian.jira.user.ApplicationUser user)
    • doIssuePermissionCheck

      protected abstract boolean doIssuePermissionCheck​(com.atlassian.jira.security.plugin.ProjectPermissionKey permissionKey, com.atlassian.jira.issue.Issue issue, com.atlassian.jira.user.ApplicationUser user, boolean issueCreation)
    • hasPermission

      @Deprecated public boolean hasPermission​(int permissionId, com.atlassian.jira.issue.Issue issue, com.atlassian.jira.user.ApplicationUser applicationUser)
      Deprecated.
      We handle "WORK_ON_ISSUE" and other worklog related permissions as a special case in this method to allow collaborators to log work if they have permission granted to them.
      Specified by:
      hasPermission in interface com.atlassian.jira.security.PermissionManager
    • getAllProjectPermissions

      public java.util.Collection<com.atlassian.jira.permission.ProjectPermission> getAllProjectPermissions()
      Specified by:
      getAllProjectPermissions in interface com.atlassian.jira.security.PermissionManager
    • getProjectPermissions

      public java.util.Collection<com.atlassian.jira.permission.ProjectPermission> getProjectPermissions​(@Nonnull com.atlassian.jira.permission.ProjectPermissionCategory projectPermissionCategory)
      Specified by:
      getProjectPermissions in interface com.atlassian.jira.security.PermissionManager
    • hasPermission

      @Deprecated public boolean hasPermission​(int permissionId, com.atlassian.jira.user.ApplicationUser applicationUser)
      Deprecated.
      Specified by:
      hasPermission in interface com.atlassian.jira.security.PermissionManager
    • hasPermission

      @Deprecated public boolean hasPermission​(int permissionId, com.atlassian.jira.project.Project project, com.atlassian.jira.user.ApplicationUser applicationUser)
      Deprecated.
      We handle "WORK_ON_ISSUE" and other worklog related permissions as a special case in this method to allow collaborators to log work if they have permission granted to them.
      Specified by:
      hasPermission in interface com.atlassian.jira.security.PermissionManager
    • hasPermission

      public boolean hasPermission​(@Nonnull com.atlassian.jira.security.plugin.ProjectPermissionKey projectPermissionKey, @Nonnull com.atlassian.jira.project.Project project, @Nullable com.atlassian.jira.user.ApplicationUser applicationUser)
      We handle "WORK_ON_ISSUE" and other worklog related permissions as a special case in this method to allow collaborators to log work if they have permission granted to them.
      Specified by:
      hasPermission in interface com.atlassian.jira.security.PermissionManager
    • hasProjectWidePermission

      @Nonnull @ExperimentalApi public com.atlassian.jira.security.ProjectWidePermission hasProjectWidePermission​(@Nonnull com.atlassian.jira.security.plugin.ProjectPermissionKey projectPermissionKey, @Nonnull com.atlassian.jira.project.Project project, @Nullable com.atlassian.jira.user.ApplicationUser applicationUser)
      Specified by:
      hasProjectWidePermission in interface com.atlassian.jira.security.PermissionManager
    • hasPermission

      @Deprecated public boolean hasPermission​(int permissionId, com.atlassian.jira.project.Project project, com.atlassian.jira.user.ApplicationUser applicationUser, boolean issueCreation)
      Deprecated.
      We handle "WORK_ON_ISSUE" and other worklog related permissions as a special case in this method to allow collaborators to log work if they have permission granted to them.
      Specified by:
      hasPermission in interface com.atlassian.jira.security.PermissionManager
    • hasPermission

      public boolean hasPermission​(@Nonnull com.atlassian.jira.security.plugin.ProjectPermissionKey projectPermissionKey, @Nonnull com.atlassian.jira.project.Project project, @Nullable com.atlassian.jira.user.ApplicationUser applicationUser, boolean issueCreation)
      Specified by:
      hasPermission in interface com.atlassian.jira.security.PermissionManager
    • removeGroupPermissions

      public void removeGroupPermissions​(java.lang.String s) throws com.atlassian.jira.exception.RemoveException
      Specified by:
      removeGroupPermissions in interface com.atlassian.jira.security.PermissionManager
      Throws:
      com.atlassian.jira.exception.RemoveException
    • removeUserPermissions

      public void removeUserPermissions​(com.atlassian.jira.user.ApplicationUser applicationUser) throws com.atlassian.jira.exception.RemoveException
      Specified by:
      removeUserPermissions in interface com.atlassian.jira.security.PermissionManager
      Throws:
      com.atlassian.jira.exception.RemoveException
    • hasProjects

      @Deprecated public boolean hasProjects​(int permissionId, com.atlassian.jira.user.ApplicationUser applicationUser)
      Deprecated.
      Specified by:
      hasProjects in interface com.atlassian.jira.security.PermissionManager
    • hasProjects

      public boolean hasProjects​(@Nonnull com.atlassian.jira.security.plugin.ProjectPermissionKey projectPermissionKey, @Nullable com.atlassian.jira.user.ApplicationUser applicationUser)
      Specified by:
      hasProjects in interface com.atlassian.jira.security.PermissionManager
    • getProjects

      @Deprecated public java.util.Collection<com.atlassian.jira.project.Project> getProjects​(int i, com.atlassian.jira.user.ApplicationUser applicationUser)
      Deprecated.
      Specified by:
      getProjects in interface com.atlassian.jira.security.PermissionManager
    • getProjects

      public java.util.Collection<com.atlassian.jira.project.Project> getProjects​(@Nonnull com.atlassian.jira.security.plugin.ProjectPermissionKey projectPermissionKey, @Nullable com.atlassian.jira.user.ApplicationUser applicationUser)
      Specified by:
      getProjects in interface com.atlassian.jira.security.PermissionManager
    • getProjects

      @Deprecated public java.util.Collection<com.atlassian.jira.project.Project> getProjects​(int i, com.atlassian.jira.user.ApplicationUser applicationUser, com.atlassian.jira.project.ProjectCategory projectCategory)
      Deprecated.
      Specified by:
      getProjects in interface com.atlassian.jira.security.PermissionManager
    • getProjects

      public java.util.Collection<com.atlassian.jira.project.Project> getProjects​(@Nonnull com.atlassian.jira.security.plugin.ProjectPermissionKey projectPermissionKey, @Nullable com.atlassian.jira.user.ApplicationUser applicationUser, @Nullable com.atlassian.jira.project.ProjectCategory projectCategory)
      Specified by:
      getProjects in interface com.atlassian.jira.security.PermissionManager
    • getAllGroups

      public java.util.Collection<com.atlassian.crowd.embedded.api.Group> getAllGroups​(int i, com.atlassian.jira.project.Project project)
      Specified by:
      getAllGroups in interface com.atlassian.jira.security.PermissionManager
    • flushCache

      public void flushCache()
      Specified by:
      flushCache in interface com.atlassian.jira.security.PermissionManager
    • hasPermission

      public boolean hasPermission​(@Nonnull com.atlassian.jira.security.plugin.ProjectPermissionKey projectPermissionKey, @Nonnull com.atlassian.jira.issue.Issue issue, @Nullable com.atlassian.jira.user.ApplicationUser applicationUser, @Nullable com.opensymphony.workflow.loader.ActionDescriptor actionDescriptor)
      Specified by:
      hasPermission in interface com.atlassian.jira.security.PermissionManager
    • hasPermission

      public boolean hasPermission​(@Nonnull com.atlassian.jira.security.plugin.ProjectPermissionKey projectPermissionKey, @Nonnull com.atlassian.jira.issue.Issue issue, @Nullable com.atlassian.jira.user.ApplicationUser applicationUser, @Nonnull com.atlassian.jira.issue.status.Status status)
      Specified by:
      hasPermission in interface com.atlassian.jira.security.PermissionManager
    • hasPermissionToViewEstimates

      public boolean hasPermissionToViewEstimates​(com.atlassian.jira.issue.Issue issue, @Nonnull com.atlassian.jira.user.ApplicationUser user)
      Specified by:
      hasPermissionToViewEstimates in interface WPPermissionManager
    • hasPermissionToViewWorklog

      public boolean hasPermissionToViewWorklog​(com.atlassian.jira.issue.worklog.Worklog worklog, @Nonnull com.atlassian.jira.user.ApplicationUser user)
      Specified by:
      hasPermissionToViewWorklog in interface WPPermissionManager
    • checkPermissionToViewWorklog

      public WPPermissionManager.Access checkPermissionToViewWorklog​(com.atlassian.jira.issue.worklog.Worklog worklog, @Nonnull com.atlassian.jira.user.ApplicationUser user)
      Specified by:
      checkPermissionToViewWorklog in interface WPPermissionManager