Class ProjectLead

All Implemented Interfaces:
SchemeType, SecurityType

public class ProjectLead extends AbstractProjectsSecurityType
  • Field Details

  • Constructor Details

  • Method Details

    • getDisplayName

      public String getDisplayName()
    • getType

      public String getType()
    • hasPermission

      public boolean hasPermission(Project project, String argument)
      Description copied from interface: SchemeType
      Determines if this permission type is satisfied for anonymous access.
      Parameters:
      project - This is the project that the security is being checked for
      argument - If this particular SchemeType has been configured with a parameter, then this parameter is passed (eg. Group Name for GroupDropdown)
      Returns:
      true if anonymous Users have this permission.
    • hasPermission

      public boolean hasPermission(Issue issue, String parameter)
      Description copied from interface: SchemeType
      Determines if this permission type is satisfied for anonymous access.
      Parameters:
      issue - This is the issue that the security is being checked for
      parameter - If this particular SchemeType has been configured with a parameter, then this parameter is passed (eg. Group Name for GroupDropdown)
      Returns:
      true if anonymous Users have this permission.
    • hasPermission

      public boolean hasPermission(Project project, String argument, ApplicationUser user, boolean issueCreation)
      Description copied from interface: SchemeType
      Determines if this permission type is satisfied.
      Parameters:
      project - This is the project that the security is being checked for
      argument - If this particular SchemeType has been configured with a parameter, then this parameter is passed (eg. Group Name for GroupDropdown)
      user - The user for whom the permission is being checked
      issueCreation - Whether this permission is being checked during issue creation
      Returns:
      true if the given User has this permission.
    • hasPermission

      public boolean hasPermission(Issue issue, String parameter, ApplicationUser user, boolean issueCreation)
      Description copied from interface: SchemeType
      Determines if this permission type is satisfied.
      Parameters:
      issue - This is the issue that the security is being checked for
      parameter - If this particular SchemeType has been configured with a parameter, then this parameter is passed (eg. Group Name for GroupDropdown)
      user - The user for whom the permission is being checked
      issueCreation - Whether this permission is being checked during issue creation
      Returns:
      true if the given User has this permission.
    • doValidation

      public void doValidation(String key, Map parameters, JiraServiceContext jiraServiceContext)
    • getUsers

      public Set<ApplicationUser> getUsers(PermissionContext ctx, String ignored)
      Description copied from interface: SecurityType
      Returns a set of ApplicationUsers represented by a security type instance. The collection must not contain any nulls.
      Parameters:
      ctx - The current issue and project
      ignored - Instance value, eg. a group name, user name, custom field id
      Returns:
      A set of ApplicationUsers.
    • isTopLevelIssueSecurityPermission

      public boolean isTopLevelIssueSecurityPermission()
      Description copied from interface: SecurityType
      Returns true if this permission depends only on a issue security level value and not on project or any field value. Used for optimisation.
      Specified by:
      isTopLevelIssueSecurityPermission in interface SecurityType
      Overrides:
      isTopLevelIssueSecurityPermission in class AbstractProjectsSecurityType
    • getPermissionFieldContents

      public Set<org.apache.lucene.util.BytesRef> getPermissionFieldContents(ApplicationUser searcher, Project project, IssueSecurityLevel securityLevel, String parameter)
      Description copied from interface: SecurityType
      Returns a set of (issue level permission field) contents based on the security level, the project and optionally the parameter (for role-based queries). This is needed to build issue security level query.
      Specified by:
      getPermissionFieldContents in interface SecurityType
      Overrides:
      getPermissionFieldContents in class AbstractProjectsSecurityType
      Parameters:
      searcher - The searcher conducting the search
      project - The project for which we're constructing a query
      securityLevel - The security level for which we are constructing the permissions field contents
      parameter - Parameter identifying user related field (reporter, assignee, etc)
      Returns:
      A set of Lucene permissions field tuples
      See Also: