com.atlassian.jira.scheme
Interface SchemeType

All Known Subinterfaces:
SecurityType
All Known Implementing Classes:
AbstractIssueFieldSecurityType, AbstractProjectsSecurityType, AbstractSecurityType, CurrentAssignee, CurrentAssigneeHasAssignablePermission, CurrentReporter, CurrentReporterHasCreatePermission, GroupCF, GroupDropdown, ProjectLead, ProjectRoleSecurityAndNotificationType, SimpleIssueFieldSecurityType, SingleUser, UserCF

public interface SchemeType


Method Summary
 void doValidation(String key, Map<String,String> parameters, JiraServiceContext jiraServiceContext)
           
 String getDisplayName()
           
 String getType()
           
 boolean hasPermission(org.ofbiz.core.entity.GenericValue entity, String argument)
          Deprecated. Use hasPermission(com.atlassian.jira.issue.Issue, String) or hasPermission(com.atlassian.jira.project.Project, String) instead. Since v5.2.
 boolean hasPermission(org.ofbiz.core.entity.GenericValue entity, String argument, com.atlassian.crowd.embedded.api.User user, boolean issueCreation)
          Deprecated. Use hasPermission(Project, String, User, boolean) or hasPermission(Issue, String, User, boolean) instead. Since v5.2.
 boolean hasPermission(Issue issue, String parameter)
          Determines if this permission type is satisfied for anonymous access.
 boolean hasPermission(Issue issue, String parameter, com.atlassian.crowd.embedded.api.User user, boolean issueCreation)
          Determines if this permission type is satisfied.
 boolean hasPermission(Project project, String parameter)
          Determines if this permission type is satisfied for anonymous access.
 boolean hasPermission(Project project, String parameter, com.atlassian.crowd.embedded.api.User user, boolean issueCreation)
          Determines if this permission type is satisfied.
 boolean isValidForPermission(ProjectPermissionKey permissionKey)
          This method determines if this SchemeType is valid for the given permissionKey.
 

Method Detail

getDisplayName

String getDisplayName()

getType

String getType()

doValidation

void doValidation(String key,
                  Map<String,String> parameters,
                  JiraServiceContext jiraServiceContext)

hasPermission

boolean hasPermission(org.ofbiz.core.entity.GenericValue entity,
                      String argument)
Deprecated. Use hasPermission(com.atlassian.jira.issue.Issue, String) or hasPermission(com.atlassian.jira.project.Project, String) instead. Since v5.2.

Interface for determining if a permission type has the permission.

This method is called if there is no Remote User (ie anonymous)

Parameters:
entity - This is the issue or 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

boolean hasPermission(Project project,
                      String parameter)
Determines if this permission type is satisfied for anonymous access.

Parameters:
project - This is the project 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

boolean hasPermission(Issue issue,
                      String parameter)
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

boolean hasPermission(org.ofbiz.core.entity.GenericValue entity,
                      String argument,
                      com.atlassian.crowd.embedded.api.User user,
                      boolean issueCreation)
Deprecated. Use hasPermission(Project, String, User, boolean) or hasPermission(Issue, String, User, boolean) instead. Since v5.2.

Interface for determining if a permission type has the permission

Parameters:
entity - This is the issue or 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

boolean hasPermission(Project project,
                      String parameter,
                      com.atlassian.crowd.embedded.api.User user,
                      boolean issueCreation)
Determines if this permission type is satisfied.

Parameters:
project - This is the project 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.

hasPermission

boolean hasPermission(Issue issue,
                      String parameter,
                      com.atlassian.crowd.embedded.api.User user,
                      boolean issueCreation)
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.

isValidForPermission

boolean isValidForPermission(ProjectPermissionKey permissionKey)
This method determines if this SchemeType is valid for the given permissionKey.

The default behaviour is for SchemeTypes to be valid for all permission functions, but some scheme types may choose to override this behaviour. eg the CurrentReporterHasCreatePermission scheme is invalid to be added to the "Create Issue" function. Also see JRA-13315.

Parameters:
permissionKey - key of the permission in question
Returns:
true if this SchemeType is valid for the given permissionId.
See Also:
CurrentReporterHasCreatePermission


Copyright © 2002-2014 Atlassian. All Rights Reserved.