public class GlobalPermissionGroupAssociationUtil extends Object
Permissions.ADMINISTER
and
Permissions.SYSTEM_ADMIN
global permission information. You can use this class to find out
if you are removing all the groups that grant a provided user the permission. You can also use
this to find out the groups that the provided user is a member of and which is associated with
the global permission.Modifier and Type | Field and Description |
---|---|
static org.apache.commons.collections.Transformer |
GROUP_TO_GROUPNAME
Transforms a
Group to its name as a String. |
Constructor and Description |
---|
GlobalPermissionGroupAssociationUtil(GlobalPermissionManager globalPermissionManager,
GroupManager groupManager) |
Modifier and Type | Method and Description |
---|---|
Collection<String> |
getAdminMemberGroups(ApplicationUser user)
Returns All the groupNames that have global "Administration" permission that this user is a member of.
|
List<String> |
getGroupNamesModifiableByCurrentUser(ApplicationUser currentUser,
Collection<String> groupNames)
Determines which groups will be visible to the current user.
|
List<com.atlassian.crowd.embedded.api.Group> |
getGroupsModifiableByCurrentUser(ApplicationUser currentUser,
List<com.atlassian.crowd.embedded.api.Group> groups)
Determines which groups will be visible to the current user.
|
List<com.atlassian.crowd.embedded.api.Group> |
getNonAdminGroups(List<com.atlassian.crowd.embedded.api.Group> groups)
Get all groups which have neither
Permissions.SYSTEM_ADMIN or Permissions.ADMINISTER |
Collection<String> |
getSysAdminMemberGroups(ApplicationUser user)
Returns All the groupNames that have global "System Administration" permission that this user is a member of.
|
boolean |
isRemovingAllMyAdminGroups(Collection<String> groupsToLeave,
ApplicationUser user)
Return true if the user is trying to remove all the groups that grant them the administration permission.
|
boolean |
isRemovingAllMySysAdminGroups(Collection<String> groupsToLeave,
ApplicationUser user)
Return true if the user is trying to remove all the groups that grant them the system administration permission.
|
boolean |
isUserAbleToDeleteGroup(ApplicationUser user,
String groupName)
Determines, based on the users permissions, if the group can be deleted.
|
public static final org.apache.commons.collections.Transformer GROUP_TO_GROUPNAME
Group
to its name as a String.public GlobalPermissionGroupAssociationUtil(GlobalPermissionManager globalPermissionManager, GroupManager groupManager)
public boolean isRemovingAllMySysAdminGroups(Collection<String> groupsToLeave, ApplicationUser user)
groupsToLeave
- a Collection of String
, group names, that the user is trying to
unassociate/remove.user
- performing this operation.public Collection<String> getSysAdminMemberGroups(ApplicationUser user)
user
- the user performing this operation.String
group names that the global System Admin permission is associated
with and which the user is in.public boolean isRemovingAllMyAdminGroups(Collection<String> groupsToLeave, ApplicationUser user)
groupsToLeave
- a Collection of String
, group names, that the user is trying to
unassociate/remove.user
- performing this operation.public Collection<String> getAdminMemberGroups(ApplicationUser user)
user
- performing this operation.String
group names that the global Admin permission is associated
with and which the user is in.public boolean isUserAbleToDeleteGroup(ApplicationUser user, String groupName)
user
- performing this operation.groupName
- the group to deletePermissions.SYSTEM_ADMIN
permission or if
the group is not associated with the Permissions.SYSTEM_ADMIN
permission.public List<String> getGroupNamesModifiableByCurrentUser(ApplicationUser currentUser, Collection<String> groupNames)
Permissions.SYSTEM_ADMIN
then they can see all the groups, otherwise they will not be able to see the group names associated with
the Permissions.SYSTEM_ADMIN
permission.currentUser
- performing the operationgroupNames
- the full set of possible group names the user might seePermissions.SYSTEM_ADMIN
rights, otherwise a collection that does not contain the SYS_ADMIN group names.public List<com.atlassian.crowd.embedded.api.Group> getGroupsModifiableByCurrentUser(ApplicationUser currentUser, List<com.atlassian.crowd.embedded.api.Group> groups)
Permissions.SYSTEM_ADMIN
then they can see all the groups, otherwise they will not be able to see the groups associated with
the Permissions.SYSTEM_ADMIN
permission.currentUser
- performing the operationgroups
- the full set of possible groups the user might seegroups
list if they user has Permissions.SYSTEM_ADMIN
rights, otherwise a collection that does not contain the SYS_ADMIN groups.public List<com.atlassian.crowd.embedded.api.Group> getNonAdminGroups(List<com.atlassian.crowd.embedded.api.Group> groups)
Permissions.SYSTEM_ADMIN
or Permissions.ADMINISTER
groups
- the full set of possible groups the user might seegroups
list if they user has Permissions.SYSTEM_ADMIN
rights, otherwise a collection that does not contain the SYS_ADMIN groups.Copyright © 2002-2023 Atlassian. All Rights Reserved.