Class AbstractProjectsSecurityType

java.lang.Object
com.atlassian.jira.security.type.AbstractSecurityType
com.atlassian.jira.security.type.AbstractProjectsSecurityType
All Implemented Interfaces:
SchemeType, SecurityType
Direct Known Subclasses:
ApplicationRoleSecurityType, GroupDropdown, ProjectLead, ProjectRoleSecurityAndNotificationType, SingleUser

public abstract class AbstractProjectsSecurityType extends AbstractSecurityType
  • Constructor Details

    • AbstractProjectsSecurityType

      public AbstractProjectsSecurityType()
  • Method Details

    • isTopLevelProjectPermission

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

      public Set<org.apache.lucene.util.BytesRef> getPermissionFieldContents(ApplicationUser searcher, Project project, String parameter)
      Description copied from interface: SecurityType
      Returns a set of (project permission field) contents based on the project and optionally the parameter (for role-based queries). This is needed to build project security scheme query.
      Parameters:
      searcher - The searcher conducting the search
      project - The project for which we're constructing the permissions field contents
      parameter - Parameter identifying user related field (reporter, assignee, etc)
      Returns:
      A set of Lucene permissions field tuples
      See Also:
    • 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.
    • 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.
      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:
    • getPermissionFieldContents

      protected Set<org.apache.lucene.util.BytesRef> getPermissionFieldContents(IssueSecurityLevel securityLevel)