Class SecuredUserGroupManager
- java.lang.Object
-
- jetbrains.buildServer.groups.impl.SecuredUserGroupManager
-
- All Implemented Interfaces:
UserGroupManager
public class SecuredUserGroupManager extends Object implements UserGroupManager
- Author:
- Maxim Podkolzine (maxim.podkolzine@jetbrains.com)
-
-
Field Summary
-
Fields inherited from interface jetbrains.buildServer.groups.UserGroupManager
MAX_GROUP_KEY_LENGTH
-
-
Constructor Summary
Constructors Constructor Description SecuredUserGroupManager(UserGroupManager delegate, SecurityContextEx securityContext)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddUserGroupListener(UserGroupListener listener)Adds the specified listener to the manager's list.SUserGroupcreateUserGroup(String key, String name, String description)Creates a new user group.voiddeleteUserGroup(SUserGroup group)Deletes a user group.SUserGroupfindUserGroupByKey(String key)Given a group key method finds the corresponding user group.SUserGroupfindUserGroupByName(String name)Given a group name method finds the corresponding user group.Set<SUserGroup>findUserGroupsByPropertyValue(PropertyKey propertyKey, String propertyValue, boolean caseSensitive)Returns set of the user groups having specified property.List<UserGroup>getAllHostGroupsOf(User user)Returns topologically ordered list of all groups containing specified user, directly or through intermediate subgroups.SUserGroupgetAllUsersGroup()Returns the all-users group.List<UserGroup>getHostGroupsOf(User user)Returns the list of groups that host specified user (directly).Collection<SUserGroup>getRootUserGroups()Returns the collection of root user groups, i.e.Collection<SUserGroup>getUserGroups()Returns the collection of all user groups.booleanisAllUsersGroup(SUserGroup group)Returns true, if the specified group is the all-users group.voidremoveUserGroupListener(UserGroupListener listener)Removes the listener from the manager's list.voidrenameUserGroup(String key, String name)Renames a user group.
-
-
-
Constructor Detail
-
SecuredUserGroupManager
public SecuredUserGroupManager(@NotNull UserGroupManager delegate, @NotNull SecurityContextEx securityContext)
-
-
Method Detail
-
createUserGroup
@NotNull public SUserGroup createUserGroup(@NotNull String key, @NotNull String name, @NotNull String description) throws UserGroupException
Description copied from interface:UserGroupManagerCreates a new user group.The
keyis specified by user, but must be unique among all user groups. An attempt to create a user group with existing key results in exception.The
namemust be unique too. Similarly, in case of duplication an exception is thrown.- Specified by:
createUserGroupin interfaceUserGroupManager- Parameters:
key- user group keyname- user group namedescription- user group description- Returns:
- a newly created user group
- Throws:
UserGroupException- if specified key already exists
-
deleteUserGroup
public void deleteUserGroup(@NotNull SUserGroup group)Description copied from interface:UserGroupManagerDeletes a user group.Note: the
groupwould be deleted from all parent groups automatically, and all subgroups will be reattached to thegroup's parents.group's direct users aren't moved anywhere.- Specified by:
deleteUserGroupin interfaceUserGroupManager- Parameters:
group- a group to delete
-
renameUserGroup
public void renameUserGroup(@NotNull String key, @NotNull String name) throws UserGroupExceptionDescription copied from interface:UserGroupManagerRenames a user group.- Specified by:
renameUserGroupin interfaceUserGroupManager- Parameters:
key- the group keyname- new group name- Throws:
UserGroupException- if the group is not found, or cannot be renamed- See Also:
SUserGroup.setName(String)
-
getUserGroups
@NotNull public Collection<SUserGroup> getUserGroups()
Description copied from interface:UserGroupManagerReturns the collection of all user groups.- Specified by:
getUserGroupsin interfaceUserGroupManager- Returns:
- collection of user groups
- See Also:
UserGroupManager.getRootUserGroups()
-
getRootUserGroups
@NotNull public Collection<SUserGroup> getRootUserGroups()
Description copied from interface:UserGroupManagerReturns the collection of root user groups, i.e. the ones that are not included in any other group.- Specified by:
getRootUserGroupsin interfaceUserGroupManager- Returns:
- collection of root user groups
- See Also:
UserGroupManager.getUserGroups()
-
getHostGroupsOf
@NotNull public List<UserGroup> getHostGroupsOf(@NotNull User user)
Description copied from interface:UserGroupManagerReturns the list of groups that host specified user (directly).- Specified by:
getHostGroupsOfin interfaceUserGroupManager- Parameters:
user- the user- Returns:
- list of host groups
-
getAllHostGroupsOf
@NotNull public List<UserGroup> getAllHostGroupsOf(@NotNull User user)
Description copied from interface:UserGroupManagerReturns topologically ordered list of all groups containing specified user, directly or through intermediate subgroups.- Specified by:
getAllHostGroupsOfin interfaceUserGroupManager- Parameters:
user- the user- Returns:
- list of all groups containing the user
-
findUserGroupByKey
public SUserGroup findUserGroupByKey(@NotNull String key)
Description copied from interface:UserGroupManagerGiven a group key method finds the corresponding user group.- Specified by:
findUserGroupByKeyin interfaceUserGroupManager- Parameters:
key- the user group key- Returns:
- user group, or null
-
findUserGroupByName
public SUserGroup findUserGroupByName(@NotNull String name)
Description copied from interface:UserGroupManagerGiven a group name method finds the corresponding user group.- Specified by:
findUserGroupByNamein interfaceUserGroupManager- Parameters:
name- the user group name- Returns:
- user group, or null
-
findUserGroupsByPropertyValue
@NotNull public Set<SUserGroup> findUserGroupsByPropertyValue(@NotNull PropertyKey propertyKey, @Nullable String propertyValue, boolean caseSensitive)
Description copied from interface:UserGroupManagerReturns set of the user groups having specified property.- Specified by:
findUserGroupsByPropertyValuein interfaceUserGroupManager- Parameters:
propertyKey- property keypropertyValue- property valuecaseSensitive- whether to perform case sensitive search- Returns:
- see above
-
addUserGroupListener
public void addUserGroupListener(@NotNull UserGroupListener listener)Description copied from interface:UserGroupManagerAdds the specified listener to the manager's list.- Specified by:
addUserGroupListenerin interfaceUserGroupManager- Parameters:
listener- the listener to add
-
removeUserGroupListener
public void removeUserGroupListener(@NotNull UserGroupListener listener)Description copied from interface:UserGroupManagerRemoves the listener from the manager's list.- Specified by:
removeUserGroupListenerin interfaceUserGroupManager- Parameters:
listener- the listener to remove
-
getAllUsersGroup
@NotNull public SUserGroup getAllUsersGroup()
Description copied from interface:UserGroupManagerReturns the all-users group.- Specified by:
getAllUsersGroupin interfaceUserGroupManager- Returns:
- the all-users group
-
isAllUsersGroup
public boolean isAllUsersGroup(@NotNull SUserGroup group)Description copied from interface:UserGroupManagerReturns true, if the specified group is the all-users group.- Specified by:
isAllUsersGroupin interfaceUserGroupManager- Parameters:
group- the group to check- Returns:
- true if the specified group is the all-users group, false otherwise
-
-