|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.atlassian.jira.security.AbstractPermissionManager
public abstract class AbstractPermissionManager
An abstract PermissionManager that implements a lot of the common functionality to all PermissionManagers.
DefaultPermissionManager
Constructor Summary | |
---|---|
AbstractPermissionManager()
|
Method Summary | |
---|---|
void |
addPermission(int permissionsId,
org.ofbiz.core.entity.GenericValue scheme,
String parameter,
String securityType)
Adds a permission to the system |
Collection |
getAllGroups(int permissionId,
org.ofbiz.core.entity.GenericValue project)
Retrieve all groups that are used in the permission globally and in the project entity |
protected PermissionSchemeManager |
getPermissionSchemeManager()
|
protected ProjectManager |
getProjectManager()
|
Collection |
getProjects(int permissionId,
User user)
Retrieve a list of projects this user has the permission for |
Collection |
getProjects(int permissionId,
User user,
org.ofbiz.core.entity.GenericValue category)
Retrieve a list of projects associated with the specified category, that this user has the permissions for |
boolean |
hasPermission(int permissionsId,
org.ofbiz.core.entity.GenericValue projectOrIssue,
User u)
Checks to see if this has permission to see the specified entity Check Permissions scheme(s) if the entity is project Check Permissions scheme(s) and issue level security scheme(s) if the entity is an issue |
boolean |
hasPermission(int permissionsId,
org.ofbiz.core.entity.GenericValue entity,
User u,
boolean issueCreation)
Does the same as PermissionManager.hasPermission(int,org.ofbiz.core.entity.GenericValue,com.opensymphony.user.User) except
the entity is a project GenericValue . |
boolean |
hasPermission(int permissionsId,
Issue issue,
User u)
Does the same as PermissionManager.hasPermission(int,org.ofbiz.core.entity.GenericValue,com.opensymphony.user.User) except
the entity is an issue. |
boolean |
hasPermission(int permissionsId,
Project project,
User user)
Checks whether the specified user has a specified permission within the context of a specified project. |
boolean |
hasPermission(int permissionsId,
Project project,
User user,
boolean issueCreation)
Checks whether the specified user has a specified permission within the context of a specified project. |
boolean |
hasPermission(int permissionsId,
User user)
Checks to see if this user has the specified permission It will check only global permissions as there are no other permissions to check |
protected boolean |
hasProjectPermission(Long permissionTypeLong,
org.ofbiz.core.entity.GenericValue entity,
User user,
boolean issueCreation)
Return true if the supplied user has the specified permission in the context of the supplied entity |
boolean |
hasProjects(int permissionId,
User user)
Can this user see at least one project with this permission |
protected boolean |
isGlobalPermission(int permissionId)
|
void |
removeGroupPermissions(String group)
Remove all permissions that have used this group |
void |
removeUserPermissions(String username)
Remove all permissions that have used this username |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public AbstractPermissionManager()
Method Detail |
---|
public void addPermission(int permissionsId, org.ofbiz.core.entity.GenericValue scheme, String parameter, String securityType) throws CreateException
addPermission
in interface PermissionManager
permissionsId
- Permissions valuescheme
- If null permission is global otherwise it is added to the schemeparameter
- Used for e.g. group namesecurityType
- e.g. GroupDropdown.DESC
CreateException
public boolean hasPermission(int permissionsId, User user)
hasPermission
in interface PermissionManager
permissionsId
- permission iduser
- user
GlobalPermissionManager.hasPermission(int, com.opensymphony.user.User)
public boolean hasPermission(int permissionsId, org.ofbiz.core.entity.GenericValue projectOrIssue, User u)
hasPermission
in interface PermissionManager
permissionsId
- , not a global permissionprojectOrIssue
- not null must be Project or Issueu
- User object, possibly null if JIRA is accessed anonymously
public boolean hasPermission(int permissionsId, Issue issue, User u)
PermissionManager
PermissionManager.hasPermission(int,org.ofbiz.core.entity.GenericValue,com.opensymphony.user.User)
except
the entity is an issue.
Note that if the issue's generic value is null, it is assumed that the issue is currently being created, and so
the permission check call is defered to the issue's project object, with the issueCreation flag set to true. See
JRA-14788 for more info.
hasPermission
in interface PermissionManager
permissionsId
- Not a global permissionissue
- Not null.u
- User object, possibly null if JIRA is accessed anonymously
public boolean hasPermission(int permissionsId, Project project, User user)
PermissionManager
hasPermission
in interface PermissionManager
permissionsId
- A non-global permission, i.e. a permission that is granted via a project contextproject
- The project that is the context of the permission check.user
- The person to perform the permission check for
public boolean hasPermission(int permissionsId, Project project, User user, boolean issueCreation)
PermissionManager
hasPermission
in interface PermissionManager
permissionsId
- A non-global permission, i.e. a permission that is granted via a project contextproject
- The project that is the context of the permission check.user
- The person to perform the permission check forissueCreation
- Whether this permission is being checked during issue creation
public boolean hasPermission(int permissionsId, org.ofbiz.core.entity.GenericValue entity, User u, boolean issueCreation)
PermissionManager
PermissionManager.hasPermission(int,org.ofbiz.core.entity.GenericValue,com.opensymphony.user.User)
except
the entity is a project GenericValue
.
hasPermission
in interface PermissionManager
permissionsId
- Not a global permissionentity
- Not null.u
- User object, possibly null if JIRA is accessed anonymouslyissueCreation
- Whether this permission is being checked during issue creation
protected boolean hasProjectPermission(Long permissionTypeLong, org.ofbiz.core.entity.GenericValue entity, User user, boolean issueCreation)
permissionTypeLong
- A non-global permission, i.e. a permission that is granted via a contextentity
- The entity that is the context of the permission check.user
- The person to perform the permission check forissueCreation
- Whether this permission is being checked during issue creation (passed through the
PermissionSchemeManager
to SchemeType.hasPermission(
org.ofbiz.core.entity.GenericValue, String, com.opensymphony.user.User, boolean)
)
protected PermissionSchemeManager getPermissionSchemeManager()
public void removeGroupPermissions(String group) throws RemoveException
removeGroupPermissions
in interface PermissionManager
group
- The name of the group that needs to be removed, must NOT be null and must be a real group
RemoveException
public void removeUserPermissions(String username) throws RemoveException
PermissionManager
removeUserPermissions
in interface PermissionManager
username
- username of the user whose permissions are to be removed
RemoveException
- if permission removal failspublic boolean hasProjects(int permissionId, User user) throws Exception
hasProjects
in interface PermissionManager
permissionId
- must NOT be a global permissionuser
- user
Exception
protected ProjectManager getProjectManager()
public Collection getProjects(int permissionId, User user)
getProjects
in interface PermissionManager
permissionId
- must NOT be a global permissionuser
- user
GenericValue
objectspublic Collection getProjects(int permissionId, User user, org.ofbiz.core.entity.GenericValue category) throws org.ofbiz.core.entity.GenericEntityException
PermissionManager
getProjects
in interface PermissionManager
permissionId
- permission iduser
- usercategory
- GenericValue representing category
GenericValue
objects
org.ofbiz.core.entity.GenericEntityException
protected boolean isGlobalPermission(int permissionId)
public Collection getAllGroups(int permissionId, org.ofbiz.core.entity.GenericValue project) throws Exception
getAllGroups
in interface PermissionManager
permissionId
- permission idproject
- project to retireve groups from
Exception
- this implementation does not throw any non-runtime exceptions
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |