com.atlassian.jira.user.util
Enum UserManager.UserState

java.lang.Object
  extended by java.lang.Enum<UserManager.UserState>
      extended by com.atlassian.jira.user.util.UserManager.UserState
All Implemented Interfaces:
Serializable, Comparable<UserManager.UserState>
Enclosing interface:
UserManager

@ExperimentalApi
public static enum UserManager.UserState
extends Enum<UserManager.UserState>

The current state of a user with regard to the same username existing in other user directories. Only the first occurrence of a username in list of user directories is effective. If the same username is found in other directories, then those entries are said to be "shadowed". This value represents the results of searching for the username across all of the directories to determine whether or not shadowing is relevant for the given user.

Using the various test methods like isInMultipleDirectories() and isValid() should be preferred over testing for exact matches.


Enum Constant Summary
INVALID_USER
          Indicates that the specified user was not valid, meaning that the directory ID is invalid, that directory is disabled, or the directory does not have a user with the specified username.
NORMAL_USER
          Indicates that there is only a single active user with that username across all active user directories and shadowing is not relevant for the user.
NORMAL_USER_WITH_SHADOW
          Indicates that the specified username was first found in the specified directory is active and that there is at least one user with the same username defined in another directory that is ordered after it, so this user has a shadow (it is the effective version of the user, and is hiding others).
SHADOW_USER
          Indicates that an active user with the same name was found in a directory that currently takes priority over directory and username that were specified, meaning that the specified user is shadowed by another.
 
Method Summary
 boolean isEffective()
          Returns whether or not the user is the same user that would be returned by a call to UserManager.getUserByName(String).
 boolean isInMultipleDirectories()
          Returns true if the user is in multiple active user directories, regardless of whether or not the specified directory ID was the active one.
 boolean isValid()
          Convenience method that only returns true for all of the valid user types.
static UserManager.UserState valueOf(String name)
          Returns the enum constant of this type with the specified name.
static UserManager.UserState[] values()
          Returns an array containing the constants of this enum type, in the order they are declared.
 
Methods inherited from class java.lang.Enum
clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Enum Constant Detail

INVALID_USER

public static final UserManager.UserState INVALID_USER
Indicates that the specified user was not valid, meaning that the directory ID is invalid, that directory is disabled, or the directory does not have a user with the specified username.


SHADOW_USER

public static final UserManager.UserState SHADOW_USER
Indicates that an active user with the same name was found in a directory that currently takes priority over directory and username that were specified, meaning that the specified user is shadowed by another.


NORMAL_USER

public static final UserManager.UserState NORMAL_USER
Indicates that there is only a single active user with that username across all active user directories and shadowing is not relevant for the user.


NORMAL_USER_WITH_SHADOW

public static final UserManager.UserState NORMAL_USER_WITH_SHADOW
Indicates that the specified username was first found in the specified directory is active and that there is at least one user with the same username defined in another directory that is ordered after it, so this user has a shadow (it is the effective version of the user, and is hiding others).

Method Detail

values

public static UserManager.UserState[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
for (UserManager.UserState c : UserManager.UserState.values())
    System.out.println(c);

Returns:
an array containing the constants of this enum type, in the order they are declared

valueOf

public static UserManager.UserState valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Parameters:
name - the name of the enum constant to be returned.
Returns:
the enum constant with the specified name
Throws:
IllegalArgumentException - if this enum type has no constant with the specified name
NullPointerException - if the argument is null

isEffective

public boolean isEffective()
Returns whether or not the user is the same user that would be returned by a call to UserManager.getUserByName(String). This is, it was the first matching user found.


isValid

public boolean isValid()
Convenience method that only returns true for all of the valid user types.

Returns:
true if the specified username and directory ID was valid; false if the user does not actually exist

isInMultipleDirectories

public boolean isInMultipleDirectories()
Returns true if the user is in multiple active user directories, regardless of whether or not the specified directory ID was the active one.

Returns:
true if the user is in multiple active user directories; false if the user is only in one or does not exist at all


Copyright © 2002-2014 Atlassian. All Rights Reserved.