Class AliasManagerImpl
java.lang.Object
com.atlassian.crowd.manager.application.AliasManagerImpl
- All Implemented Interfaces:
AliasManager
-
Constructor Summary
ConstructorsConstructorDescriptionAliasManagerImpl(AliasDAO aliasDAO, ApplicationManager applicationManager, ApplicationService applicationService, com.atlassian.event.api.EventPublisher eventPublisher) -
Method Summary
Modifier and TypeMethodDescriptionfindAliasByUsername(Application application, String username) Will return the 'alias' associated to the user.findAliasesByUsernames(Application application, Iterable<String> usernames) Will return application-specific aliases for the provided users.findAllAliasesByUsernames(Application application) Returns application-specific aliases for all users.findUsernameByAlias(Application application, String authenticatingUsername) Will return the 'real' username of the authenticating user.voidremoveAlias(Application application, String username) Remove an application-specific alias for a username.voidremoveAliasesForUser(String username) Removes all the aliases registered for a given username in all applications (there may be different users)search(EntityQuery entityQuery) Perform anAliasQuerysearch on the alias tables of Crowd.voidstoreAlias(Application application, String username, String alias) Add or update the application-specific alias for a username.
-
Constructor Details
-
AliasManagerImpl
public AliasManagerImpl(AliasDAO aliasDAO, ApplicationManager applicationManager, ApplicationService applicationService, com.atlassian.event.api.EventPublisher eventPublisher)
-
-
Method Details
-
findUsernameByAlias
Description copied from interface:AliasManagerWill return the 'real' username of the authenticating user. This returned username maybe the username passed in, if the user does not have a configured 'alias' for the given application- Specified by:
findUsernameByAliasin interfaceAliasManager- Parameters:
application- the application the user is associated withauthenticatingUsername- the username passed to the application for authentication- Returns:
- The 'real' username of the authenticating user, or the passed in username
-
findAliasByUsername
Description copied from interface:AliasManagerWill return the 'alias' associated to the user. If an alias does not exist the 'real' username will be returned- Specified by:
findAliasByUsernamein interfaceAliasManager- Parameters:
application- the application the user is associated withusername- the 'real' username of the user- Returns:
- if an alias exists it will be returned, otherwise the username will be returned.
-
storeAlias
public void storeAlias(Application application, String username, String alias) throws AliasAlreadyInUseException Description copied from interface:AliasManagerAdd or update the application-specific alias for a username.- Specified by:
storeAliasin interfaceAliasManager- Parameters:
application- application context.username- real username of user in directory.alias- application-specific alias (cannot benullor blank).- Throws:
AliasAlreadyInUseException- the alias is already in use by another user for the given application.
-
removeAlias
Description copied from interface:AliasManagerRemove an application-specific alias for a username. This method will silently succeed if the username has no application-specific alias.- Specified by:
removeAliasin interfaceAliasManager- Parameters:
application- application context.username- real username of user in directory.- Throws:
AliasAlreadyInUseException- the username is already in use by another user as their alias for the given application.
-
search
Description copied from interface:AliasManagerPerform anAliasQuerysearch on the alias tables of Crowd.- Specified by:
searchin interfaceAliasManager- Parameters:
entityQuery- Will accept an entity query for aliases as anAliasQuery- Returns:
- a
List<String> of usernames for a givenAliasQueryor an empty list
-
removeAliasesForUser
Description copied from interface:AliasManagerRemoves all the aliases registered for a given username in all applications (there may be different users)- Specified by:
removeAliasesForUserin interfaceAliasManager- Parameters:
username- the username for which the aliases will be removed
-
findAliasesByUsernames
public Map<String,String> findAliasesByUsernames(Application application, Iterable<String> usernames) Description copied from interface:AliasManagerWill return application-specific aliases for the provided users. This method will return a Map with usernames as keys and aliases as values. If aliasing is not enabled or no usernames were provided then an empty map will be returned. Users who don't have an alias will not have a corresponding entry in the returned map.- Specified by:
findAliasesByUsernamesin interfaceAliasManager- Parameters:
application- application contextusernames- the usernames for which the aliases will be retrieved- Returns:
- a map from username to alias
-
findAllAliasesByUsernames
Description copied from interface:AliasManagerReturns application-specific aliases for all users. This method will return a Map with usernames as keys and aliases as values. If aliasing is not enabled then an empty map will be returned. Users who don't have an alias will not have a corresponding entry in the returned map.- Specified by:
findAllAliasesByUsernamesin interfaceAliasManager- Parameters:
application- application context- Returns:
- a map from username to alias
-