|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.atlassian.jira.user.util.DefaultUserManager
public class DefaultUserManager
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface com.atlassian.jira.user.util.UserManager |
---|
UserManager.UserState |
Constructor Summary | |
---|---|
DefaultUserManager(com.atlassian.crowd.embedded.api.CrowdService crowdService,
com.atlassian.crowd.embedded.api.CrowdDirectoryService crowdDirectoryService,
com.atlassian.crowd.manager.directory.DirectoryManager directoryManager,
UserKeyStore userKeyStore,
com.atlassian.crowd.manager.application.ApplicationManager applicationManager,
ApplicationProperties applicationProperties)
|
Method Summary | |
---|---|
boolean |
canDirectoryUpdateUserPassword(com.atlassian.crowd.embedded.api.Directory directory)
Checks if the given directory is able to update user passwords. |
boolean |
canRenameUser(ApplicationUser user)
Test if this user can be renamed. |
boolean |
canUpdateGroupMembershipForUser(com.atlassian.crowd.embedded.api.User user)
Test if this user's group membership can be updated, i.e. |
boolean |
canUpdateUser(ApplicationUser user)
Test if this user can be updated, i.e. |
boolean |
canUpdateUser(com.atlassian.crowd.embedded.api.User user)
Test if this user can be updated, i.e. |
boolean |
canUpdateUserPassword(com.atlassian.crowd.embedded.api.User user)
Test if this user's password can be updated, i.e. |
com.atlassian.crowd.embedded.api.User |
findUserInDirectory(String userName,
Long directoryId)
Returns a User based on user name and directoryId |
Collection<ApplicationUser> |
getAllApplicationUsers()
Returns all users defined in JIRA, regardless of whether they are active or not. |
Set<com.atlassian.crowd.embedded.api.Group> |
getAllGroups()
Returns all groups defined in JIRA. |
Set<com.atlassian.crowd.embedded.api.User> |
getAllUsers()
Returns all users defined in JIRA, regardless of whether they are active or not. |
com.atlassian.crowd.embedded.api.Directory |
getDirectory(Long directoryId)
|
com.atlassian.crowd.embedded.api.Group |
getGroup(String groupName)
Returns a Group based on user name. |
com.atlassian.crowd.embedded.api.Group |
getGroupObject(String groupName)
Returns a Group based on user name. |
Collection<com.atlassian.crowd.embedded.api.Group> |
getGroups()
Returns all groups defined in JIRA. |
int |
getTotalUserCount()
Returns the total number of users defined in JIRA, regardless of whether they are active or not. |
com.atlassian.crowd.embedded.api.User |
getUser(String userName)
Returns a User based on user name. |
ApplicationUser |
getUserByKey(String key)
Returns an ApplicationUser based on user key. |
ApplicationUser |
getUserByKeyEvenWhenUnknown(String userKey)
Returns an ApplicationUser based on user key. |
ApplicationUser |
getUserByName(String username)
Returns an ApplicationUser based on user name. |
ApplicationUser |
getUserByNameEvenWhenUnknown(String userName)
Returns an ApplicationUser based on user name. |
com.atlassian.crowd.embedded.api.User |
getUserEvenWhenUnknown(String userName)
Returns a User based on user name. |
com.atlassian.crowd.embedded.api.User |
getUserObject(String userName)
Returns a User based on user name. |
Collection<com.atlassian.crowd.embedded.api.User> |
getUsers()
Returns all users defined in JIRA, regardless of whether they are active or not. |
UserManager.UserState |
getUserState(ApplicationUser user)
This convenience method is equivalent to getUserState(user.getUsername(), user.getDirectoryId())
except that a null user is permitted and returns UserManager.UserState.INVALID_USER . |
UserManager.UserState |
getUserState(String username,
long queryDirectoryId)
Checks for the existence of this user across all directories to determine whether or not the user exists in the specified directory and whether or not it is shadowing or shadowed by a user with the same username in another active user directory. |
UserManager.UserState |
getUserState(com.atlassian.crowd.embedded.api.User user)
This convenience method is equivalent to getUserState(user.getName(), user.getDirectoryId())
except that a null user is permitted and returns UserManager.UserState.INVALID_USER . |
List<com.atlassian.crowd.embedded.api.Directory> |
getWritableDirectories()
Returns an ordered list of directories that have "read-write" permission. |
boolean |
hasGroupWritableDirectory()
Returns true if any of the directories have permission to update groups. |
boolean |
hasPasswordWritableDirectory()
Returns true if any of the directories have permission to update user passwords, false if otherwise. |
boolean |
hasWritableDirectory()
Returns true if at least one User Directory has "read-write" permission. |
boolean |
isUserExisting(ApplicationUser user)
Checks if given user is existing user |
void |
updateUser(ApplicationUser user)
Updates the ApplicationUser . |
void |
updateUser(com.atlassian.crowd.embedded.api.User user)
Updates the User . |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public DefaultUserManager(com.atlassian.crowd.embedded.api.CrowdService crowdService, com.atlassian.crowd.embedded.api.CrowdDirectoryService crowdDirectoryService, com.atlassian.crowd.manager.directory.DirectoryManager directoryManager, UserKeyStore userKeyStore, com.atlassian.crowd.manager.application.ApplicationManager applicationManager, ApplicationProperties applicationProperties)
Method Detail |
---|
public int getTotalUserCount()
UserManager
getTotalUserCount
in interface UserManager
@Nonnull public Collection<com.atlassian.crowd.embedded.api.User> getUsers()
UserManager
UserManager.getAllUsers()
.
getUsers
in interface UserManager
UserManager.getAllUsers()
@Nonnull public Collection<ApplicationUser> getAllApplicationUsers()
UserManager
getAllApplicationUsers
in interface UserManager
@Nonnull public Set<com.atlassian.crowd.embedded.api.User> getAllUsers()
UserManager
getAllUsers
in interface UserManager
public com.atlassian.crowd.embedded.api.User getUser(String userName)
UserManager
User
based on user name.
getUser
in interface UserManager
userName
- the user name of the user
public com.atlassian.crowd.embedded.api.User getUserObject(@Nullable String userName)
UserManager
User
based on user name.
getUserObject
in interface UserManager
userName
- the user name of the user
public com.atlassian.crowd.embedded.api.User findUserInDirectory(String userName, Long directoryId)
UserManager
User
based on user name and directoryId
findUserInDirectory
in interface UserManager
userName
- the user name of the userdirectoryId
- the Directory to look in
public com.atlassian.crowd.embedded.api.User getUserEvenWhenUnknown(String userName)
UserManager
User
based on user name.
If a null username is passed, then a null User object is returned, but it is guaranteed to return a non-null User in all other cases.
If the username is not null, but the User is not found then a proxy unknown immutable User object is returned.
getUserEvenWhenUnknown
in interface UserManager
userName
- the user name of the user
public ApplicationUser getUserByKey(String key)
UserManager
ApplicationUser
based on user key.
getUserByKey
in interface UserManager
key
- the key of the user
public ApplicationUser getUserByName(String username)
UserManager
ApplicationUser
based on user name.
getUserByName
in interface UserManager
username
- the user name of the user
public ApplicationUser getUserByKeyEvenWhenUnknown(@Nullable String userKey)
UserManager
ApplicationUser
based on user key.
If you want to check if given user is known user - please use UserManager.isUserExisting(com.atlassian.jira.user.ApplicationUser)
getUserByKeyEvenWhenUnknown
in interface UserManager
userKey
- the key of the user
public ApplicationUser getUserByNameEvenWhenUnknown(@Nullable String userName)
UserManager
ApplicationUser
based on user name.
If you want to check if given user is known user - please use UserManager.isUserExisting(com.atlassian.jira.user.ApplicationUser)
getUserByNameEvenWhenUnknown
in interface UserManager
userName
- the user name of the user
public boolean canUpdateUser(com.atlassian.crowd.embedded.api.User user)
UserManager
If the "External user management" setting is on, then you cannot update the user.
canUpdateUser
in interface UserManager
user
- The user to update.
null
and can be updated.public boolean canUpdateUser(ApplicationUser user)
UserManager
canUpdateUser
in interface UserManager
user
- The user to update.
null
and can be updated.public boolean canRenameUser(ApplicationUser user)
UserManager
UserManager.canUpdateUser(ApplicationUser)
,
renaming a user is only allowed when:
INTERNAL
or DELEGATING
user directory;
ANDAPKeys.JIRA_OPTION_USER_CROWD_ALLOW_RENAME
is enabled to bypass this check.
canRenameUser
in interface UserManager
user
- The user to rename.
null
and can be renamed.public void updateUser(com.atlassian.crowd.embedded.api.User user)
UserManager
User
. The user must have non-null names and email address.
updateUser
in interface UserManager
user
- The user to update.public void updateUser(ApplicationUser user)
UserManager
ApplicationUser
. The user must have non-null names and email address. If the user's name
does not match the name that is currently associated with the key
, then
this is implicitly treated as a request to rename the user.
updateUser
in interface UserManager
user
- The user to update.public boolean canUpdateUserPassword(com.atlassian.crowd.embedded.api.User user)
UserManager
If the "External user management", or "External password management" setting is on, then you cannot update the password.
canUpdateUserPassword
in interface UserManager
user
- The user to update.
null
and the user's password can be updated.public boolean canUpdateGroupMembershipForUser(com.atlassian.crowd.embedded.api.User user)
UserManager
canUpdateGroupMembershipForUser
in interface UserManager
user
- The user to update.
null
and can be updated.public Collection<com.atlassian.crowd.embedded.api.Group> getGroups()
UserManager
UserManager.getAllGroups()
.
getGroups
in interface UserManager
UserManager.getAllGroups()
public Set<com.atlassian.crowd.embedded.api.Group> getAllGroups()
UserManager
com.opensymphony.user.User
. This class
has now been removed from the JIRA API, meaning that the 5.0 version is not binary or source compatible with
earlier versions.
getAllGroups
in interface UserManager
public com.atlassian.crowd.embedded.api.Group getGroup(String groupName)
UserManager
Group
based on user name.
Warning: previous incarnations of this method returned com.opensymphony.user.User
. This class
has now been removed from the JIRA API, meaning that the 5.0 version is not binary or source compatible with
earlier versions.
getGroup
in interface UserManager
groupName
- the user name of the group
public com.atlassian.crowd.embedded.api.Group getGroupObject(@Nullable String groupName)
UserManager
Group
based on user name.
Legacy synonym for UserManager.getGroup(String)
.
getGroupObject
in interface UserManager
groupName
- the user name of the group
UserManager.getGroup(String)
@Nonnull public List<com.atlassian.crowd.embedded.api.Directory> getWritableDirectories()
UserManager
getWritableDirectories
in interface UserManager
UserManager.hasWritableDirectory()
public boolean hasWritableDirectory()
UserManager
This is equivalent to:
getWritableDirectories().size() > 0
hasWritableDirectory
in interface UserManager
UserManager.getWritableDirectories()
,
UserManager.hasPasswordWritableDirectory()
,
UserManager.hasGroupWritableDirectory()
public boolean hasPasswordWritableDirectory()
UserManager
Note that this is not quite the same as UserManager.hasWritableDirectory()
because of "Internal with LDAP Authentication" directories.
These directories are generally read-write but passwords are read-only.
hasPasswordWritableDirectory
in interface UserManager
UserManager.hasWritableDirectory()
public boolean hasGroupWritableDirectory()
UserManager
Note that this will not always return the same results as UserManager.hasWritableDirectory()
because you can set "Read-Only with Local Groups" to LDAP directories.
These directories are generally read-only but you can create local gropus and assign users to them.
hasGroupWritableDirectory
in interface UserManager
UserManager.hasWritableDirectory()
public com.atlassian.crowd.embedded.api.Directory getDirectory(Long directoryId)
getDirectory
in interface UserManager
public boolean isUserExisting(ApplicationUser user)
UserManager
isUserExisting
in interface UserManager
user
- possible existing user object - i.e. recieved from UserManager.getUserByKeyEvenWhenUnknown(String)
or UserManager.getUserByNameEvenWhenUnknown(String)
true
if given user is real user, false
otherwise (also when given object is null
)UserManager.getUserByKeyEvenWhenUnknown(String)
,
UserManager.getUserByNameEvenWhenUnknown(String)
public boolean canDirectoryUpdateUserPassword(com.atlassian.crowd.embedded.api.Directory directory)
UserManager
canDirectoryUpdateUserPassword
in interface UserManager
directory
- the Directory
@Nonnull public UserManager.UserState getUserState(@Nullable com.atlassian.crowd.embedded.api.User user)
UserManager
getUserState(user.getName(), user.getDirectoryId())
except that a null
user is permitted and returns UserManager.UserState.INVALID_USER
.
getUserState
in interface UserManager
user
- the user to check
@Nonnull public UserManager.UserState getUserState(@Nullable ApplicationUser user)
UserManager
getUserState(user.getUsername(), user.getDirectoryId())
except that a null
user is permitted and returns UserManager.UserState.INVALID_USER
.
getUserState
in interface UserManager
user
- the user to check
@Nonnull public UserManager.UserState getUserState(@Nonnull String username, long queryDirectoryId)
UserManager
getUserState
in interface UserManager
username
- the username to checkqueryDirectoryId
- the directory ID of the user directory that the user came from
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |