com.ibm.as400.access
Class UserList

java.lang.Object
  |
  +--com.ibm.as400.access.UserList
All Implemented Interfaces:
java.io.Serializable

public class UserList
extends java.lang.Object
implements java.io.Serializable

The UserList class represents a list of OS/400 user profiles.

Implementation note: This class internally uses the Open List APIs (e.g. QGYOLAUS).

See Also:
User, UserGroup, RUser, RUserList, Serialized Form

Field Summary
static java.lang.String ALL
          Selection value indicating that the list contains all user profiles and group profiles.
static java.lang.String GROUP
          Selection value indicating that the list contains only user profiles that are group profiles.
static java.lang.String MEMBER
          Selection value indicating that the list contains only user profiles that are members of a specified group.
static java.lang.String NOGROUP
          Selection value indicating that the list contains only user profiles that are not group profiles.
static java.lang.String NONE
          Selection value indicating that no group profile is specified.
static java.lang.String USER
          Selection value indicating that the list contains only user profiles that are not group profiles.
 
Constructor Summary
UserList()
          Constructs a UserList object.
UserList(AS400 system)
          Constructs a UserList object.
UserList(AS400 system, java.lang.String userInfo, java.lang.String groupInfo)
          Constructs a UserList object.
 
Method Summary
 void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
          Adds a PropertyChangeListener.
 void addVetoableChangeListener(java.beans.VetoableChangeListener listener)
          Adds a VetoableChangeListener.
 void close()
          Closes the user list on the system.
 java.lang.String getGroupInfo()
          Returns the group profile whose members are to be returned.
 int getLength()
          Returns the number of users in the user list.
 AS400 getSystem()
          Returns the system.
 java.lang.String getUserInfo()
          Returns the description of which users are returned.
 java.util.Enumeration getUsers()
          Returns the list of users in the user list.
 User[] getUsers(int listOffset, int number)
          Returns a subset of the list of users.
 void load()
          Loads the list of users on the system.
 void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
          Removes a PropertyChangeListener.
 void removeVetoableChangeListener(java.beans.VetoableChangeListener listener)
          Removes a VetoableChangeListener.
 void setGroupInfo(java.lang.String groupInfo)
          Sets the group profile whose members are to be returned.
 void setSystem(AS400 system)
          Sets the system.
 void setUserInfo(java.lang.String userInfo)
          Sets which users are returned.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ALL

public static final java.lang.String ALL
Selection value indicating that the list contains all user profiles and group profiles.

See Also:
Constant Field Values

USER

public static final java.lang.String USER
Selection value indicating that the list contains only user profiles that are not group profiles. These are user profiles that do not have a group identifier specified.

See Also:
Constant Field Values

GROUP

public static final java.lang.String GROUP
Selection value indicating that the list contains only user profiles that are group profiles. These are user profiles that have a group identifier specified.

See Also:
Constant Field Values

MEMBER

public static final java.lang.String MEMBER
Selection value indicating that the list contains only user profiles that are members of a specified group.

See Also:
Constant Field Values

NONE

public static final java.lang.String NONE
Selection value indicating that no group profile is specified.

See Also:
Constant Field Values

NOGROUP

public static final java.lang.String NOGROUP
Selection value indicating that the list contains only user profiles that are not group profiles. These are user profiles that do not have a group identifier specified.

See Also:
Constant Field Values
Constructor Detail

UserList

public UserList()
Constructs a UserList object. The system must be set before calling any of the methods that connect to the server. The usersInfo parameter defaults to ALL and the groupInfo parameter defaults to NONE.


UserList

public UserList(AS400 system)
Constructs a UserList object. The usersInfo parameter defaults to ALL and the groupInfo parameter defaults to NONE.

Parameters:
system - The system.

UserList

public UserList(AS400 system,
                java.lang.String userInfo,
                java.lang.String groupInfo)
Constructs a UserList object.

Parameters:
system - The system.
userInfo - The users to be returned. Possible values are:
groupInfo - The group profile whose members are to be returned. Possible values are:
Method Detail

addPropertyChangeListener

public void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
Adds a PropertyChangeListener. The specified PropertyChangeListener's propertyChange() method will be called each time the value of any bound property is changed.

Parameters:
listener - The listener.
See Also:
removePropertyChangeListener(java.beans.PropertyChangeListener)

addVetoableChangeListener

public void addVetoableChangeListener(java.beans.VetoableChangeListener listener)
Adds a VetoableChangeListener. The specified VetoableChangeListener's vetoableChange() method will be called each time the value of any constrained property is changed.

Parameters:
listener - The listener.
See Also:
removeVetoableChangeListener(java.beans.VetoableChangeListener)

close

public void close()
           throws AS400Exception,
                  AS400SecurityException,
                  ErrorCompletingRequestException,
                  java.lang.InterruptedException,
                  java.io.IOException,
                  ObjectDoesNotExistException
Closes the user list on the system. This releases any system resources previously in use by this user list.

Throws:
AS400Exception - If the system returns an error message.
AS400SecurityException - If a security or authority error occurs.
ErrorCompletingRequestException - If an error occurs before the request is completed.
java.lang.InterruptedException - If this thread is interrupted.
java.io.IOException - If an error occurs while communicating with the system.
ObjectDoesNotExistException - If the object does not exist on the system.
See Also:
load()

getGroupInfo

public java.lang.String getGroupInfo()
Returns the group profile whose members are to be returned.

Returns:
The group profile whose members are to be returned. Possible values are:
  • NONE - No group profile is specified.
  • NOGROUP - Users who are not a member of any group are returned.
  • The group profile name - Users who are a member of this group are returned.
See Also:
setGroupInfo(java.lang.String)

getLength

public int getLength()
Returns the number of users in the user list. This method implicitly calls load().

Returns:
The number of users, or 0 if no list was retrieved.
See Also:
load()

getSystem

public AS400 getSystem()
Returns the system.

Returns:
The system.
See Also:
setSystem(com.ibm.as400.access.AS400)

getUserInfo

public java.lang.String getUserInfo()
Returns the description of which users are returned.

Returns:
The description of which users are returned. Possible values are:
  • ALL - All user profiles and group profiles are returned.
  • USER - Only user profiles that are not group profiles are returned. These are user profiles that do not have a group identifier specified.
  • GROUP - Only user profiles that are group profiles are returned. These are user profiles that have a group identifier specified.
  • MEMBER - User profiles that are members of the group specified for the group info are returned.
See Also:
setUserInfo(java.lang.String)

getUsers

public java.util.Enumeration getUsers()
                               throws AS400Exception,
                                      AS400SecurityException,
                                      ErrorCompletingRequestException,
                                      java.lang.InterruptedException,
                                      java.io.IOException,
                                      ObjectDoesNotExistException,
                                      RequestNotSupportedException
Returns the list of users in the user list.

Returns:
An Enumeration of User objects.
Throws:
AS400Exception - If the AS/400 system returns an error message.
AS400SecurityException - If a security or authority error occurs.
ConnectionDroppedException - If the connection is dropped unexpectedly.
ErrorCompletingRequestException - If an error occurs before the request is completed.
java.lang.InterruptedException - If this thread is interrupted.
java.io.IOException - If an error occurs while communicating with the AS/400.
ObjectDoesNotExistException - If the AS/400 object does not exist.
RequestNotSupportedException - If the requested function is not supported because the AS/400 system is not at the correct level.
See Also:
close(), load()

getUsers

public User[] getUsers(int listOffset,
                       int number)
                throws AS400Exception,
                       AS400SecurityException,
                       ErrorCompletingRequestException,
                       java.lang.InterruptedException,
                       java.io.IOException,
                       ObjectDoesNotExistException
Returns a subset of the list of users. This method allows the user to retrieve the user list from the server in pieces. If a call to load() is made (either implicitly or explicitly), then the users at a given offset will change, so a subsequent call to getUsers() with the same listOffset and number will most likely not return the same Users as the previous call.

Parameters:
listOffset - The offset into the list of users. This value must be greater than 0 and less than the list length, or specify -1 to retrieve all of the users.
number - The number of users to retrieve out of the list, starting at the specified listOffset. This value must be greater than or equal to 0 and less than or equal to the list length. If the listOffset is -1, this parameter is ignored.
Returns:
The array of retrieved User objects. The length of this array may not necessarily be equal to number, depending upon the size of the list on the server, and the specified listOffset.
Throws:
AS400Exception - If the system returns an error message.
AS400SecurityException - If a security or authority error occurs.
ErrorCompletingRequestException - If an error occurs before the request is completed.
java.lang.InterruptedException - If this thread is interrupted.
java.io.IOException - If an error occurs while communicating with the system.
ObjectDoesNotExistException - If the object does not exist on the system.
See Also:
Job, close(), load()

load

public void load()
          throws AS400Exception,
                 AS400SecurityException,
                 ErrorCompletingRequestException,
                 java.lang.InterruptedException,
                 java.io.IOException,
                 ObjectDoesNotExistException
Loads the list of users on the system. This method informs the system to build a list of users. This method blocks until the system returns the total number of users it has compiled. A subsequent call to getUsers() will retrieve the actual user information and attributes for each user in the list from the system.

This method updates the list length.

Throws:
AS400Exception - If the system returns an error message.
AS400SecurityException - If a security or authority error occurs.
ConnectionDroppedException - If the connection is dropped unexpectedly.
ErrorCompletingRequestException - If an error occurs before the request is completed.
java.lang.InterruptedException - If this thread is interrupted.
java.io.IOException - If an error occurs while communicating with the system.
ObjectDoesNotExistException - If the object does not exist on the system.
ServerStartupException - If the server cannot be started.
UnknownHostException - If the system cannot be located.
See Also:
getLength(), close()

removePropertyChangeListener

public void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
Removes a PropertyChangeListener.

Parameters:
listener - The listener.
See Also:
addPropertyChangeListener(java.beans.PropertyChangeListener)

removeVetoableChangeListener

public void removeVetoableChangeListener(java.beans.VetoableChangeListener listener)
Removes a VetoableChangeListener.

Parameters:
listener - The listener.
See Also:
addVetoableChangeListener(java.beans.VetoableChangeListener)

setGroupInfo

public void setGroupInfo(java.lang.String groupInfo)
                  throws java.beans.PropertyVetoException
Sets the group profile whose members are to be returned.

This must be set to a group profile name or NOGROUP if group info is set to MEMBER. This must be set to NONE if group info is not set to MEMBER.

Parameters:
groupInfo - The group profile whose members are to be returned. Possible values are:
  • NONE - No group profile is specified.
  • NOGROUP - Users who are not a member of any group are returned.
  • The group profile name - Users who are a member of this group are returned.
Throws:
java.beans.PropertyVetoException - If the change is vetoed.
See Also:
getGroupInfo()

setSystem

public void setSystem(AS400 system)
               throws java.beans.PropertyVetoException
Sets the system. This cannot be changed if the object has established a connection to the server.

Parameters:
system - The system.
Throws:
java.beans.PropertyVetoException - If the property change is vetoed.
See Also:
getSystem()

setUserInfo

public void setUserInfo(java.lang.String userInfo)
                 throws java.beans.PropertyVetoException
Sets which users are returned. Possible values are:

Parameters:
userInfo - A description of which users are returned. Possible values are:
  • ALL - All user profiles and group profiles are returned.
  • USER - Only user profiles that are not group profiles are returned. These are user profiles that do not have a group identifier specified.
  • GROUP - Only user profiles that are group profiles are returned. These are user profiles that have a group identifier specified.
  • MEMBER - User profiles that are members of the group specified for the group info are returned.
Throws:
java.beans.PropertyVetoException - If the change is vetoed.
See Also:
getUserInfo()