Package com.atlassian.bamboo.user
Interface BambooUserManager
- All Superinterfaces:
com.atlassian.user.search.query.EntityQueryParser,bucket.user.UserAccessor
- All Known Implementing Classes:
BambooUserManagerImpl
public interface BambooUserManager
extends bucket.user.UserAccessor
Service class to manage interactions with the user.
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionbooleanaddMembershipWithConfirmation(com.atlassian.user.Group group, com.atlassian.user.User user) addUser(String username, String password, boolean enabled, String email, String fullName, String jabberAddress, List<String> selectedGroups, @NotNull List<Long> authors) addUser(String username, String password, String email, String fullName, String jabberAddress, List<String> groupNames) Method that extends the standard addUser methods to also add Bamboo specific paramsaddUser(String username, String password, String email, String fullName, String jabberAddress, List<String> selectedGroups, ExtendedAuthor author) Method that extends the standard addUser methods to also add Bamboo specific paramsaddUser(String username, String password, String email, String fullName, String jabberAddress, List<String> selectedGroups, @NotNull List<Long> authors) booleanWhether creation of new groups is allowed.booleanWhether creation of new users is allowed.voidcleanupRemovedGroupReferences(@NotNull String groupName) Cleanup all Bamboo-stored data related to a group that is being deleted or has been deleted.voidcleanupRemovedUserReferences(@NotNull String userName) Cleanup all Bamboo-stored data related to a user that is being deleted or has been deleted.@NotNull PasswordResetTokencreatePasswordResetToken(String username) Request new one-time token for a user.voiddeletePasswordResetToken(String username) Deletes existing user token.@Nullable BambooUserfindUserWithJabberAddress(@NotNull String jabberAddress) Searches for user using specified jabberAddress.@Nullable BambooUsergetBambooUser(@NotNull AccessToken accessToken) Returns aBambooUserwith filled accessToken@Nullable BambooUsergetBambooUser(@Nullable com.atlassian.user.User user) Returns aBambooUsergiven aUser@Nullable BambooUsergetBambooUser(String username) Returns aBambooUserof the given usernamegetGroupNamesAsList(com.atlassian.user.User user) Returns groups for theUser@Nullable StringgetJiraIssueDefaults(@NotNull com.atlassian.user.User user) getMemberNamesAsList(com.atlassian.user.Group group) @Nullable PasswordResetTokengetPasswordResetToken(String username) Retrieves existing user token.injectUser(@NotNull BambooUser user) A variation of addUser which inserts the encryptedPassword instead - used for importingbooleanisDeletable(com.atlassian.user.Group group) Returns true if the given group can be deleted.booleanisDeletable(com.atlassian.user.User user) Is this user deletable?booleanisReadOnly(com.atlassian.user.Group group) Is this group read only?booleanisReadOnly(com.atlassian.user.User user) Is this user read only?booleanDetermines whether we are allowed to do autocompletion for users.loadUserByUsername(String username) Currently should NOT be called during setup/upgrade.voidonExternalUserRename(@NotNull String oldUserName, @NotNull String newUserName) voidrenameUser(String oldUserName, String newUserName) voidsaveJiraIssueDefaults(@NotNull com.atlassian.user.User user, @NotNull String jiraIssueDefaultsJson) Saves default data use in JIRA issue creation dialogvoidsaveNotificationPreferences(String username, String notificationPreference, String notificationTransportPref) Save just the notification preferences for the given uservoidsaveUser(String username, @Nullable String password, boolean active, String email, String fullName, String jabberAddress, String notificationPreference, String notificationTransportPreference, List<String> selectedGroups, @NotNull List<Long> authors) voidsaveUser(String username, String password, String email, String fullName, String jabberAddress, List<String> selectedGroups) Saves the properties for the given uservoidsaveUser(String username, String password, String email, String fullName, String jabberAddress, List<String> selectedGroups, ExtendedAuthor author) Saves the properties for the given uservoidsetMembership(com.atlassian.user.Group group, List<String> members) Sets a group's members as the passed listvoidsetupInitialAdminUser(String username, String password, String email, String fullName) Setup the initial admin user for the Bamboo instance.Methods inherited from interface com.atlassian.user.search.query.EntityQueryParser
findGroups, findGroups, findUsersMethods inherited from interface bucket.user.UserAccessor
addGroup, addMembership, addMembership, addUser, addUser, alterPassword, authenticate, createGroup, createUser, deactivateUser, findUsers, getDefaultGroup, getDelegatingRepositories, getExternallMembers, getGroup, getGroupCreateIfNecessary, getGroups, getGroups, getLocalMembers, getMemberNames, getPropertySet, getRepository, getUser, getUserNames, getUsers, getUsersByEmail, getUsersWithConfluenceAccess, hasMembership, hasMembership, isDeactivated, isDeactivated, isLicensedToAddMoreUsers, isUserRemovable, reactivateUser, removeGroup, removeMembership, removeMembership, removeUser, saveUser, setAtlassianUserConfiguration
-
Field Details
-
JABBER_ADDRESS_KEY
- See Also:
-
USER_NOTIFICATION_PREFERENCE
- See Also:
-
USER_NOTIFICATION_TRANSPORT_PREFERENCE
- See Also:
-
-
Method Details
-
getBambooUser
Returns aBambooUserof the given username- Parameters:
username-- Returns:
- The matching user, null if does not exist
-
getBambooUser
Returns aBambooUsergiven aUser- Parameters:
user-- Returns:
- The wrapped user.
-
getBambooUser
Returns aBambooUserwith filled accessToken- Parameters:
accessToken-- Returns:
- The wrapped user with access token
-
addUser
BambooUser addUser(String username, String password, String email, String fullName, String jabberAddress, List<String> groupNames) Method that extends the standard addUser methods to also add Bamboo specific params- Parameters:
username-password-email-fullName-jabberAddress-groupNames- -Listof Strings as the group names. May be null.- Returns:
- the created
BambooUserobject with the created properties
-
addUser
BambooUser addUser(String username, String password, String email, String fullName, String jabberAddress, List<String> selectedGroups, ExtendedAuthor author) Method that extends the standard addUser methods to also add Bamboo specific params- Parameters:
username-password-email-fullName-jabberAddress-selectedGroups- -Listof Strings as the group names. May be null.author-- Returns:
- the created
BambooUserobject with the created properties
-
addUser
-
addUser
-
renameUser
-
onExternalUserRename
-
saveUser
void saveUser(String username, String password, String email, String fullName, String jabberAddress, List<String> selectedGroups) throws IllegalArgumentException Saves the properties for the given user- Parameters:
username-password-email-fullName-jabberAddress-selectedGroups- -Listof Strings as the group names. May be null.- Throws:
IllegalArgumentException- ifusernamedoes not match a user, or if the password cannot be altered by the local user management facility.
-
saveUser
void saveUser(String username, String password, String email, String fullName, String jabberAddress, List<String> selectedGroups, ExtendedAuthor author) throws IllegalArgumentException Saves the properties for the given user- Parameters:
username-password-email-fullName-jabberAddress-selectedGroups- -Listof Strings as the group names. May be null.author-- Throws:
IllegalArgumentException- ifusernamedoes not match a user, or if the password cannot be altered by the local user management facility.
-
saveUser
void saveUser(String username, @Nullable @Nullable String password, boolean active, String email, String fullName, String jabberAddress, String notificationPreference, String notificationTransportPreference, List<String> selectedGroups, @NotNull @NotNull List<Long> authors) throws IllegalArgumentException - Throws:
IllegalArgumentException
-
cleanupRemovedUserReferences
Cleanup all Bamboo-stored data related to a user that is being deleted or has been deleted. -
cleanupRemovedGroupReferences
Cleanup all Bamboo-stored data related to a group that is being deleted or has been deleted. -
getGroupNamesAsList
Returns groups for theUser- Parameters:
user- - Must not be null- Returns:
ListofStringrepresenting group names.Collections.emptyList()if none exists
-
setMembership
Sets a group's members as the passed list -
addMembershipWithConfirmation
boolean addMembershipWithConfirmation(com.atlassian.user.Group group, com.atlassian.user.User user) - Returns:
- true iff operation successful
-
getMemberNamesAsList
-
injectUser
A variation of addUser which inserts the encryptedPassword instead - used for importing- Parameters:
user- user data- Returns:
- the created
BambooUserobject with the created properties
-
isDeletable
boolean isDeletable(com.atlassian.user.User user) Is this user deletable? A user may not be deletable because: 1) They are read-only (i.e. the user is externally sourced)- Parameters:
user- user data- Returns:
-
whether user deletable
invalid reference
boolean
-
isDeletable
boolean isDeletable(com.atlassian.user.Group group) Returns true if the given group can be deleted. Some user directories may be read-only and thus may not permit deleting entities. -
isReadOnly
boolean isReadOnly(com.atlassian.user.User user) Is this user read only?- Parameters:
user-
-
isReadOnly
boolean isReadOnly(com.atlassian.user.Group group) Is this group read only?- Parameters:
group-
-
canCreateUsers
boolean canCreateUsers()Whether creation of new users is allowed. Some user directories may be read-only and thus may not permit adding new entities. -
canCreateGroups
boolean canCreateGroups()Whether creation of new groups is allowed. Some user directories may be read-only and thus may not permit adding new entities. -
saveNotificationPreferences
void saveNotificationPreferences(String username, String notificationPreference, String notificationTransportPref) Save just the notification preferences for the given user- Parameters:
username-notificationPreference-
-
setupInitialAdminUser
Setup the initial admin user for the Bamboo instance.- Parameters:
username-password-email-fullName-
-
createPasswordResetToken
Request new one-time token for a user. Replaces the old one if it exists.- Parameters:
username- user login name- Returns:
- freshly created one-time token
-
getPasswordResetToken
Retrieves existing user token. Returns null if there is none.- Parameters:
username- user login name- Returns:
- user token object or null
-
deletePasswordResetToken
Deletes existing user token. Does nothing if there is no token.- Parameters:
username- user login name
-
findUserWithJabberAddress
Searches for user using specified jabberAddress.- Parameters:
jabberAddress- address to be matched- Returns:
BambooUseror null if none found
-
getJiraIssueDefaults
- Returns:
- json string containing default JIRA server applink id, project id and issue type id
- Since:
- 4.1
-
saveJiraIssueDefaults
void saveJiraIssueDefaults(@NotNull @NotNull com.atlassian.user.User user, @NotNull @NotNull String jiraIssueDefaultsJson) Saves default data use in JIRA issue creation dialog- Parameters:
user- userjiraIssueDefaultsJson- default data formatted as JSON string- Since:
- 4.1
-
isUserAutocompleteAllowed
boolean isUserAutocompleteAllowed()Determines whether we are allowed to do autocompletion for users. Currently this will return false if using LDAP, otherwise true- Returns:
- true if we are allowed to do autocomplete for users.
-
loadUserByUsername
BambooUser loadUserByUsername(String username) throws org.acegisecurity.userdetails.UsernameNotFoundException Currently should NOT be called during setup/upgrade. We need a better way of handling bamboo-users vs bamboo-user for Cloud and Server https://jira.atlassian.com/browse/ROTP-1557- Throws:
org.acegisecurity.userdetails.UsernameNotFoundException
-