public interface SUserGroup extends UserGroup, NotificationRulesHolder, RolesHolder, AuthorityHolder
Modifier and Type | Method and Description |
---|---|
void |
addSubgroup(UserGroup group)
Adds a subgroup to this group.
|
void |
addUser(User user)
Adds a user to this group.
|
void |
deleteGroupProperty(PropertyKey propertyKey)
Deletes a property with specified key from this group.
|
void |
removeSubgroup(UserGroup group)
Removes a direct subgroup.
|
void |
removeUser(User user)
Removes a user from this group.
|
void |
setDescription(java.lang.String description)
Sets the group description.
|
void |
setGroupProperties(java.util.Map<? extends PropertyKey,java.lang.String> properties)
Updates properties of this group.
|
void |
setGroupProperty(PropertyKey propertyKey,
java.lang.String value)
Sets a property with specified key and value in this group.
|
void |
setName(java.lang.String name)
Sets the group name.
|
containsUserDirectly, getAllSubgroups, getAllUsers, getDescription, getDirectSubgroups, getDirectUsers, getKey, getName, getParentGroups
getBooleanProperty, getProperties, getPropertyValue
addNewRule, applyOrder, findConflictingRules, findRuleById, getAllParentRulesHolders, getNotificationRules, getParentRulesHolders, removeRule, removeRule, setNotificationRules
addRole, getAllParentHolders, getParentHolders, getRoles, getRolesWithScope, getScopes, isSystemAdministratorRoleGranted, isSystemAdministratorRoleGrantedDirectly, isSystemAdministratorRoleInherited, removeRole, removeRole, removeRoles
getAssociatedUser, getGlobalPermissions, getPermissionsGrantedForAllProjects, getPermissionsGrantedForAnyOfProjects, getPermissionsGrantedForProject, getProjectsPermissions, isPermissionGrantedForAllProjects, isPermissionGrantedForAnyOfProjects, isPermissionGrantedForAnyProject, isPermissionGrantedForProject, isPermissionGrantedGlobally
void setName(@NotNull java.lang.String name) throws UserGroupException
Note: group name must be unique among all user groups. If name
already
exists, an exception is thrown.
The name cannot be empty and cannot exceed 255 characters.
name
- the new group nameUserGroupException
- if name already exists, or is empty, or is too longUserGroup.getName()
void setDescription(@NotNull java.lang.String description) throws UserGroupException
The description cannot exceed 2000 characters.
description
- the new descriptionUserGroupException
- if description is too longUserGroup.getDescription()
void addSubgroup(@NotNull UserGroup group) throws UserGroupException
User group cycles by inclusion are not permitted. An attempt to create a cycle results in exception.
group
- a subgroup to addUserGroupException
- if addition of the subgroup leads to a cyclevoid removeSubgroup(@NotNull UserGroup group)
group
- a subgroup to removevoid addUser(@NotNull User user)
user
- the user to addvoid removeUser(@NotNull User user) throws UserGroupException
The user isn't allowed to remove himself from any group.
user
- a user to removeUserGroupException
- if user is the authority holder, trying to remove himselfvoid setGroupProperties(@NotNull java.util.Map<? extends PropertyKey,java.lang.String> properties) throws UserGroupException
properties
- propertiesUserGroupException
- if specified group no longer existsvoid setGroupProperty(@NotNull PropertyKey propertyKey, java.lang.String value) throws UserGroupException
propertyKey
- property keyvalue
- value of the propertyUserGroupException
- if specified group no longer existsvoid deleteGroupProperty(@NotNull PropertyKey propertyKey) throws UserGroupException
propertyKey
- property keyUserGroupException
- if specified group no longer exists