com.tivoli.pd.rgy
Interface RgyAttributes


public interface RgyAttributes

Class to manage a set of attributes to be passed to the RgyRegistry.createUser, RgyRegistry.createGroup, RgyUser.importNativeUser and RgyGroup.importNativeGroup methods.

Attribute names are case-insensitive, attribute values are case-sensitive. Even though the the attribute names are case-insensitive, their case is preserved as provided and where appropriate passed on to the underlying JNDI with that case. Thus may affect the case of the attributes names as stored in LDAP, however, that is likely only a cosmetic feature.

Multiple threads should not access the same instance of this interface at the same time.


Field Summary
static java.lang.String ACCOUNT_EXPIRY_DATE_NAME
          The LDAP Generalized time (GMT) at which the account will expire.
static java.lang.String ADAM_UNLIMITED_DATE
          A date in the far future used to indicate a time that will never be reached.
static java.lang.String BOOL_FALSE_VALUE
           
static java.lang.String BOOL_TRUE_VALUE
           
static java.lang.String COMMON_NAME_NAME
          The LDAP Common Name attribute name.
static java.lang.String DESCRIPTION_NAME
          The LDAP description attribute name.
static java.lang.String DISABLE_TIME_INTERVAL_NAME
          The time, in seconds, that the account will be locked out after MAX_LOGIN_FAILURES_NAME login failures have occurred.
static java.lang.String IS_GSO_USER_NAME
          Set to TRUE if the account is a Global Sign On (Web SSO) enabled account.
static java.lang.String IS_SEC_ENTITY_NAME
          Set to TRUE if the account is a Security Access Manager enabled account.
static java.lang.String MAX_ACCOUNT_AGE_NAME
          This value is not currently used and should not be set.
static java.lang.String MAX_CONCURRENT_WEB_SESSIONS_NAME
          The maximum number of concurrent web logins for the user.
static java.lang.String MAX_INACTIVITY_TIME_NAME
          This value is not currently used and should not be set.
static java.lang.String MAX_LOGIN_FAILURES_NAME
          This is the number of login failures that can occur before the account is either temporarily locked out for a period of time, or disabled, depending on DISABLE_TIME_INTERVAL_NAME.
static java.lang.String MAX_PASSWORD_AGE_NAME
          The number of seconds after the last password change time that the password is valid for.
static java.lang.String MAX_PASSWORD_REPEATED_CHARS_NAME
          The maximum number of times a character can be repeated consecutively in the password.
static java.lang.String MIN_PASSWORD_AGE_NAME
          This value is not currently used and should not be set.
static java.lang.String MIN_PASSWORD_ALPHAS_NAME
          The minimum number of alphabetic characters that must be present in the password.
static java.lang.String MIN_PASSWORD_DIFFERENT_CHARS_NAME
          This value is not currently used and should not be set.
static java.lang.String MIN_PASSWORD_LENGTH_NAME
          Minimum length of a password.
static java.lang.String MIN_PASSWORD_NON_ALPHAS_NAME
          The minimum number of non-alphabetic characters that must be present in the password.
static java.lang.String MIN_PASSWORD_REUSE_TIME_NAME
          This value is not currently used and should not be set.
static java.lang.String NUMBER_WARN_DAYS_NAME
          This value is not currently used and should not be set.
static java.lang.String OBJECT_CLASS_NAME
          The LDAP object class attribute name.
static java.lang.String PASSWORD_REUSE_NUM_NAME
          This value is not currently used and should not be set.
static java.lang.String PASSWORD_SPACES_NAME
          Whether space characters are permitted in a password.
static java.lang.String PRINCIPAL_NAME_NAME
          The Security Access Manager user name.
static java.lang.String RESOURCE_CREDENTIALS_NAME
          Multi-value String attribute that contains the Global Sign On (Web SSO) Resource Credentials.
static java.lang.String RESOURCE_TYPE_GROUP_VALUE
          Value returned for Resource Group credential type
static java.lang.String RESOURCE_TYPE_WEB_VALUE
          Value returned for Web Resource credential type
static java.lang.String SEC_ACCT_VALID_NAME
          Account valid setting.
static java.lang.String SEC_AUTHORITY_NAME
          The Security Access Manager domain the entry is a part of.
static java.lang.String SEC_CERT_DN_NAME
          Internal use only.
static java.lang.String SEC_CERT_SERIAL_NUMBER_NAME
          Internal use only.
static java.lang.String SEC_DN_NAME
          The LDAP Distinguished Name of the underlying LDAP registry entry for the user.
static java.lang.String SEC_DOMAIN_ID_NAME
          This value is set when the user is created and is an optimization to aid in quickly locating the account.
static java.lang.String SEC_HAS_POLICY_NAME
          Indicates whether the user has a user specific policy entry associated with their account.
static java.lang.String SEC_HOME_GROUP_NAME
          This value is currently not used.
static java.lang.String SEC_LOGIN_TYPE_NAME
          Internal use only.
static java.lang.String SEC_OTHER_ALIAS_NAME
          This value is currently not used.
static java.lang.String SEC_PARTNER_ALIAS_NAME
          This value is currently not used.
static java.lang.String SEC_PWD_FAIL_COUNT_TIME_NAME
          This value is currently not used.
static java.lang.String SEC_PWD_FAILURES_NAME
          Used to keep a count of the number of consecutive failures to authenticate with the correct password.
static java.lang.String SEC_PWD_LAST_CHANGED_NAME
          Set with the time the password was last changed.
static java.lang.String SEC_PWD_LAST_FAILED_NAME
          Used to record the time of the last failure to authenticate with the correct password.
static java.lang.String SEC_PWD_LAST_USED_NAME
          This value is currently not used.
static java.lang.String SEC_PWD_UNLOCK_TIME_NAME
          Used to record the amount of time until the account is unlocked.
static java.lang.String SEC_PWD_VALID_NAME
          Password valid setting.
static java.lang.String SEC_SELF_ALIAS_NAME
          This value is currently not used.
static java.lang.String SEC_UUID_NAME
          Universally Unique ID.
static java.lang.String SURNAME_NAME
          The LDAP Surname attribute name.
static java.lang.String TOD_ACCESS_NAME
          This policy can be used to limit when authentications can occur to particular days of the week and a specific range of time during the day.
static java.lang.String UID_NAME
          The LDAP Unique ID attribute name.
static java.lang.String UNLIMITED_DATE
          A date in the far future used to indicate a time that will never be reached.
static java.lang.String UNLIMITED_VIRTUAL_VALUE
          When passed as a value for ACCOUNT_EXPIRY_DATE_NAME the API will correctly choose one of UNLIMITED_DATE or ADAM_UNLIMITED_DATE to suite the underlying registry.
static java.lang.String USER_PASSWORD_NAME
          The LDAP password attribute name.
 
Method Summary
 void addAttribute(java.lang.String name, java.lang.Object value)
          Adds the attribute value to any existing values for the attribute, or create a new attribute if not already present.
 void addAttribute(java.lang.String name, java.lang.Object[] values)
          Adds the values to any existing values for the attribute, or create a new attribute if not already present.
 java.lang.Object[] getAttributeValues(java.lang.String name)
          Returns all of the attribute's values.
 java.lang.Object getOneAttributeValue(java.lang.String name)
          Returns one of the attribute's values.
 java.util.Iterator<java.lang.String> nameIterator()
          Returns an Iterator over the list of attribute names stored in this object.
 void putAttribute(java.lang.String name, java.lang.Object value)
          Replaces any existing values for the attribute, or create a new attribute if not already present.
 void putAttribute(java.lang.String name, java.lang.Object[] values)
          Replaces any existing values for the attribute, or create a new attribute if not already present.
 void putAttributesInto(RgyAttributes attributes)
          Puts copies of all the attributes in this object into the RgyAttributes object provided.
 void removeAttribute(java.lang.String name)
          Removes the attribute and all it's values.
 void removeAttribute(java.lang.String name, java.lang.Object value)
          Removes the specified attribute value leaving the remaining values.
 void removeAttribute(java.lang.String name, java.lang.Object[] values)
          Removes the specified attribute values leaving the remaining values.
 

Field Detail

MIN_PASSWORD_LENGTH_NAME

static final java.lang.String MIN_PASSWORD_LENGTH_NAME
Minimum length of a password. Multi-byte characters will be treated as one character. The value must only be an decimal integer.

See Also:
Constant Field Values

PASSWORD_SPACES_NAME

static final java.lang.String PASSWORD_SPACES_NAME
Whether space characters are permitted in a password. Space and tab are considered. The value must be one of the strings: "TRUE" or "FALSE". When set to false, Space and tab characters will not be permitted.

See Also:
Constant Field Values

MAX_PASSWORD_REPEATED_CHARS_NAME

static final java.lang.String MAX_PASSWORD_REPEATED_CHARS_NAME
The maximum number of times a character can be repeated consecutively in the password. The value must only be an decimal integer. A value of -1 indicates there is not maximum.

See Also:
Constant Field Values

MIN_PASSWORD_ALPHAS_NAME

static final java.lang.String MIN_PASSWORD_ALPHAS_NAME
The minimum number of alphabetic characters that must be present in the password. This set consists of characters from is:
The value must only be an decimal integer.

See Also:
Constant Field Values

MIN_PASSWORD_NON_ALPHAS_NAME

static final java.lang.String MIN_PASSWORD_NON_ALPHAS_NAME
The minimum number of non-alphabetic characters that must be present in the password. This is the complement set to MIN_PASSWORD_ALPHAS_NAME. The value must only be an decimal integer.

See Also:
Constant Field Values

MAX_PASSWORD_AGE_NAME

static final java.lang.String MAX_PASSWORD_AGE_NAME
The number of seconds after the last password change time that the password is valid for. A value of zero (0) means the password has no limit on it's age.

See Also:
Constant Field Values

ACCOUNT_EXPIRY_DATE_NAME

static final java.lang.String ACCOUNT_EXPIRY_DATE_NAME
The LDAP Generalized time (GMT) at which the account will expire. The format is YYYYMMDDhhmmss.tZ where:
YYYY = year (for example 2009)
MM = month (where January == 01)
DD = day of the month (beginning with 01)
hh = hour (00 -> 23)
mm = minute (00 -> 59)
ss = second (00 -> 59)
. = this is the period character.
t = tenth's of the second (0 -> 9. Note this is ignored and set to 0)
Z = this is the 'Z' character. It indicates the time zone is GMT.

Even though there are other forms for Generalized time, this is the only form the API recognizes.

A special value of UNLIMITED_VIRTUAL_VALUE is accepted and will be converted into a value suitable for storage in the underlying registry. Note: Upon reading back this value, it will not be converted into UNLIMITED_VIRTUAL_VALUE, instead it will be either UNLIMITED_DATE or ADAM_UNLIMITED_DATE.

See Also:
Constant Field Values

DISABLE_TIME_INTERVAL_NAME

static final java.lang.String DISABLE_TIME_INTERVAL_NAME
The time, in seconds, that the account will be locked out after MAX_LOGIN_FAILURES_NAME login failures have occurred. A value of zero will cause the account to be disabled instead. The value must be an decimal integer >= zero.

See Also:
Constant Field Values

MAX_ACCOUNT_AGE_NAME

static final java.lang.String MAX_ACCOUNT_AGE_NAME
This value is not currently used and should not be set.

See Also:
Constant Field Values

MAX_INACTIVITY_TIME_NAME

static final java.lang.String MAX_INACTIVITY_TIME_NAME
This value is not currently used and should not be set.

See Also:
Constant Field Values

MAX_LOGIN_FAILURES_NAME

static final java.lang.String MAX_LOGIN_FAILURES_NAME
This is the number of login failures that can occur before the account is either temporarily locked out for a period of time, or disabled, depending on DISABLE_TIME_INTERVAL_NAME. The value must be an decimal integer >= zero. Also see configuration options: ldap.login-failures-persistent and ldap.late-lockout-notification

See Also:
Constant Field Values

MIN_PASSWORD_AGE_NAME

static final java.lang.String MIN_PASSWORD_AGE_NAME
This value is not currently used and should not be set.

See Also:
Constant Field Values

MIN_PASSWORD_DIFFERENT_CHARS_NAME

static final java.lang.String MIN_PASSWORD_DIFFERENT_CHARS_NAME
This value is not currently used and should not be set.

See Also:
Constant Field Values

MIN_PASSWORD_REUSE_TIME_NAME

static final java.lang.String MIN_PASSWORD_REUSE_TIME_NAME
This value is not currently used and should not be set.

See Also:
Constant Field Values

NUMBER_WARN_DAYS_NAME

static final java.lang.String NUMBER_WARN_DAYS_NAME
This value is not currently used and should not be set.

See Also:
Constant Field Values

PASSWORD_REUSE_NUM_NAME

static final java.lang.String PASSWORD_REUSE_NUM_NAME
This value is not currently used and should not be set.

See Also:
Constant Field Values

TOD_ACCESS_NAME

static final java.lang.String TOD_ACCESS_NAME
This policy can be used to limit when authentications can occur to particular days of the week and a specific range of time during the day. The format of the policy is days:start:end:zone where:
days - is a decimal integer representing a bit mask of days of the week. SUNDAY=1, MONDAY=2, TUESDAY=4, WEDNESDAY=8, THURSDAY=16, FRIDAY=32, SATURDAY=64.
start - is a decimal integer representing the start minute of the day * of allowed access.
end - is a decimal integer representing the end minute of the day of allowed access.
zone - is a decimal integer that when set to 1 indicates that GMT should be used when determining the current time of day and day of week to evaluate this policy against. Other values will cause the local default time zone to be be used.

See Also:
Constant Field Values

MAX_CONCURRENT_WEB_SESSIONS_NAME

static final java.lang.String MAX_CONCURRENT_WEB_SESSIONS_NAME
The maximum number of concurrent web logins for the user. This value is not directly used by this API, but other applications may use it. The value must be a valid decimal integer. Some negative integer values have special meaning.
-3 When set a new login will displace (logout) other logins of the same user.
-4 When set, the number of concurrent logins is not limited.

See Also:
Constant Field Values

BOOL_TRUE_VALUE

static final java.lang.String BOOL_TRUE_VALUE
See Also:
Constant Field Values

BOOL_FALSE_VALUE

static final java.lang.String BOOL_FALSE_VALUE
See Also:
Constant Field Values

UNLIMITED_VIRTUAL_VALUE

static final java.lang.String UNLIMITED_VIRTUAL_VALUE
When passed as a value for ACCOUNT_EXPIRY_DATE_NAME the API will correctly choose one of UNLIMITED_DATE or ADAM_UNLIMITED_DATE to suite the underlying registry. This value will not be read back, rather the chosen value will be returned instead.

See Also:
Constant Field Values

UNLIMITED_DATE

static final java.lang.String UNLIMITED_DATE
A date in the far future used to indicate a time that will never be reached. This is suitable for most LDAP servers.

See Also:
Constant Field Values

ADAM_UNLIMITED_DATE

static final java.lang.String ADAM_UNLIMITED_DATE
A date in the far future used to indicate a time that will never be reached. The value below was chosen because ADAM has a limitation which disallows any value further into the future than this.

See Also:
Constant Field Values

SEC_ACCT_VALID_NAME

static final java.lang.String SEC_ACCT_VALID_NAME
Account valid setting. This can only be set to one of BOOL_TRUE_VALUE or BOOL_FALSE_VALUE. When set to FALSE the account can not be logged into.

See Also:
Constant Field Values

SEC_PWD_VALID_NAME

static final java.lang.String SEC_PWD_VALID_NAME
Password valid setting. This can only be set to one of BOOL_TRUE_VALUE or BOOL_FALSE_VALUE. When set to FALSE the user will be required to change there password next login.

See Also:
Constant Field Values

SEC_DN_NAME

static final java.lang.String SEC_DN_NAME
The LDAP Distinguished Name of the underlying LDAP registry entry for the user. This may not be present in older versions of the Security Access Manager registry schema. This value can not be modified.

See Also:
Constant Field Values

SEC_UUID_NAME

static final java.lang.String SEC_UUID_NAME
Universally Unique ID. This is normally generated by the API for the user and is leveraged by the Authorization API when checking ACLs. This value can be supplied when the user is created or imported but can not be modified once set.

See Also:
Constant Field Values

SEC_LOGIN_TYPE_NAME

static final java.lang.String SEC_LOGIN_TYPE_NAME
Internal use only. This value can not be set or modified

See Also:
Constant Field Values

SEC_CERT_DN_NAME

static final java.lang.String SEC_CERT_DN_NAME
Internal use only. This value can not be set or modified

See Also:
Constant Field Values

SEC_CERT_SERIAL_NUMBER_NAME

static final java.lang.String SEC_CERT_SERIAL_NUMBER_NAME
Internal use only. This value can not be set or modified

See Also:
Constant Field Values

SEC_HAS_POLICY_NAME

static final java.lang.String SEC_HAS_POLICY_NAME
Indicates whether the user has a user specific policy entry associated with their account. This may not be present in some older migrated Security Access Manager registries. Internal use only. This value can not be set or modified

See Also:
Constant Field Values

SEC_AUTHORITY_NAME

static final java.lang.String SEC_AUTHORITY_NAME
The Security Access Manager domain the entry is a part of. Internal use only. This value can not be set or modified.

See Also:
Constant Field Values

PRINCIPAL_NAME_NAME

static final java.lang.String PRINCIPAL_NAME_NAME
The Security Access Manager user name. Internal use only. This value can not be set or modified.

See Also:
Constant Field Values

SEC_PWD_FAILURES_NAME

static final java.lang.String SEC_PWD_FAILURES_NAME
Used to keep a count of the number of consecutive failures to authenticate with the correct password. This value is a part of the mechanism to enforce MAX_LOGIN_FAILURES_NAME policy, but only if the option ldap.login-failures-persistent is enabled. Internal use only. This value can not be set or modified.

See Also:
Constant Field Values

SEC_PWD_LAST_CHANGED_NAME

static final java.lang.String SEC_PWD_LAST_CHANGED_NAME
Set with the time the password was last changed. This value is a part of the mechanism to enforce MAX_PASSWORD_AGE_NAME policy. The value is also updated to the current date when SEC_PWD_VALID_NAME is set to "TRUE". Internal use only. This value can not be set or modified.

See Also:
Constant Field Values

SEC_PWD_LAST_USED_NAME

static final java.lang.String SEC_PWD_LAST_USED_NAME
This value is currently not used. Internal use only. This value can not be set or modified.

See Also:
Constant Field Values

SEC_HOME_GROUP_NAME

static final java.lang.String SEC_HOME_GROUP_NAME
This value is currently not used. Internal use only. This value can not be set or modified.

See Also:
Constant Field Values

SEC_DOMAIN_ID_NAME

static final java.lang.String SEC_DOMAIN_ID_NAME
This value is set when the user is created and is an optimization to aid in quickly locating the account. Internal use only. This value can not be set or modified.

See Also:
Constant Field Values

SEC_PWD_LAST_FAILED_NAME

static final java.lang.String SEC_PWD_LAST_FAILED_NAME
Used to record the time of the last failure to authenticate with the correct password. This value is a part of the mechanism to enforce DISABLE_TIME_INTERVAL_NAME policy. Internal use only. This value can not be set or modified.

See Also:
Constant Field Values

SEC_PWD_FAIL_COUNT_TIME_NAME

static final java.lang.String SEC_PWD_FAIL_COUNT_TIME_NAME
This value is currently not used. Internal use only. This value can not be set or modified.

See Also:
Constant Field Values

SEC_PWD_UNLOCK_TIME_NAME

static final java.lang.String SEC_PWD_UNLOCK_TIME_NAME
Used to record the amount of time until the account is unlocked. It's presence indicates the account is locked. This value is a part of the mechanism to enforce DISABLE_TIME_INTERVAL_NAME policy. Internal use only. This value can not be set or modified.

See Also:
Constant Field Values

SEC_SELF_ALIAS_NAME

static final java.lang.String SEC_SELF_ALIAS_NAME
This value is currently not used. Internal use only. This value can not be set or modified.

See Also:
Constant Field Values

SEC_PARTNER_ALIAS_NAME

static final java.lang.String SEC_PARTNER_ALIAS_NAME
This value is currently not used. Internal use only. This value can not be set or modified.

See Also:
Constant Field Values

SEC_OTHER_ALIAS_NAME

static final java.lang.String SEC_OTHER_ALIAS_NAME
This value is currently not used. Internal use only. This value can not be set or modified.

See Also:
Constant Field Values

COMMON_NAME_NAME

static final java.lang.String COMMON_NAME_NAME
The LDAP Common Name attribute name. This is a required attribute when creating a new RgyUser or RgyGroup in the registry.

See Also:
Constant Field Values

SURNAME_NAME

static final java.lang.String SURNAME_NAME
The LDAP Surname attribute name. This is a required attribute when creating a new RgyUser in the registry.

See Also:
Constant Field Values

UID_NAME

static final java.lang.String UID_NAME
The LDAP Unique ID attribute name. This is an option attribute when create a new RgyUser, and if not provided then it will be set to either the userId supplied, or the uid value, if present, in the userNativeId supplied.

See Also:
Constant Field Values

USER_PASSWORD_NAME

static final java.lang.String USER_PASSWORD_NAME
The LDAP password attribute name. This value can not be supplied to, and, is not returned via this API.

See Also:
Constant Field Values

OBJECT_CLASS_NAME

static final java.lang.String OBJECT_CLASS_NAME
The LDAP object class attribute name. This contains the Native LDAP objectClass values for the Native entry. This value can not be set or modified.

See Also:
Constant Field Values

DESCRIPTION_NAME

static final java.lang.String DESCRIPTION_NAME
The LDAP description attribute name. This is an option attribute when creating a new RgyUser or RgyGroup. If not supplied no value will be set on the entry.

See Also:
Constant Field Values

IS_SEC_ENTITY_NAME

static final java.lang.String IS_SEC_ENTITY_NAME
Set to TRUE if the account is a Security Access Manager enabled account. This is a virtual attribute, that is not stored in the LDAP registry, rather dynamically determined. This value can not be set or modified.

See Also:
Constant Field Values

IS_GSO_USER_NAME

static final java.lang.String IS_GSO_USER_NAME
Set to TRUE if the account is a Global Sign On (Web SSO) enabled account. This is a virtual attribute, that is not stored in the LDAP registry, rather dynamically determined. This value can not be set or modified.

See Also:
Constant Field Values

RESOURCE_CREDENTIALS_NAME

static final java.lang.String RESOURCE_CREDENTIALS_NAME
Multi-value String attribute that contains the Global Sign On (Web SSO) Resource Credentials. Each value of the attribute is in a condensed form and can be expanded into it's component parts for easy access using RgyRegistry.expandResourceCredential().

See Also:
Constant Field Values

RESOURCE_TYPE_WEB_VALUE

static final java.lang.String RESOURCE_TYPE_WEB_VALUE
Value returned for Web Resource credential type

See Also:
Constant Field Values

RESOURCE_TYPE_GROUP_VALUE

static final java.lang.String RESOURCE_TYPE_GROUP_VALUE
Value returned for Resource Group credential type

See Also:
Constant Field Values
Method Detail

putAttribute

void putAttribute(java.lang.String name,
                  java.lang.Object[] values)
Replaces any existing values for the attribute, or create a new attribute if not already present.

Parameters:
name - Name of the attribute to create/replace.
values - An array of either Strings or byte[]s values to assign to the attribute. The caller must know whether the attribute accepts binary (byte[]) or string (String) values, and they can not be intermixed. All Security Access Manger attributes only accept String values, some Native entry attributes may accept binary values. Duplicate values will be reduced to a single instance.

putAttribute

void putAttribute(java.lang.String name,
                  java.lang.Object value)
Replaces any existing values for the attribute, or create a new attribute if not already present.

Parameters:
name - Name of the attribute to create/replace.
value - Either a String or byte[] value to assign to the attribute. The caller must know whether the attribute accepts binary (byte[]) or string (String) values, and they can not be intermixed. All Security Access Manger attributes only accept String values, some Native entry attributes may accept binary values.

addAttribute

void addAttribute(java.lang.String name,
                  java.lang.Object value)
Adds the attribute value to any existing values for the attribute, or create a new attribute if not already present.

Parameters:
name - Name of the attribute to add the value to.
value - Either a String or byte[] value to add to the attribute. The caller must know whether the attribute accepts binary (byte[]) or string (String) values, and they can not be intermixed. All Security Access Manger attributes only accept String values, some Native entry attributes may accept binary values. Duplicate values will be reduced to a single instance.

addAttribute

void addAttribute(java.lang.String name,
                  java.lang.Object[] values)
Adds the values to any existing values for the attribute, or create a new attribute if not already present.

Parameters:
name - Name of the attribute to add the value to.
values - An Object array of either String or byte[] values to add to the attribute. The caller must know whether the attribute accepts binary (byte[]) or string (String) values, and they can not be intermixed. All Security Access Manger attributes only accept String values, some Native entry attributes may accept binary values. Duplicate values will be reduced to a single instance.

getOneAttributeValue

java.lang.Object getOneAttributeValue(java.lang.String name)
Returns one of the attribute's values. There is no guarantee which one is returned if there is more than one available.

Parameters:
name - The name of the attribute to fetch the value from.
Returns:
String or byte[] depending on the type of attribute. LDAP binary attributes are returned as byte[]. Returns null if the attribute does not exist.

getAttributeValues

java.lang.Object[] getAttributeValues(java.lang.String name)
Returns all of the attribute's values.

Parameters:
name - The name of the attribute to fetch the values from.
Returns:
An array of String or byte[] depending on the attribute type. Returns null if the attribute does not exist.

removeAttribute

void removeAttribute(java.lang.String name)
Removes the attribute and all it's values. This must only be used in preparing an RgyAttributes for a create or import method.

Parameters:
name - The name of the attribute to remove.

removeAttribute

void removeAttribute(java.lang.String name,
                     java.lang.Object value)
Removes the specified attribute value leaving the remaining values. If there are no remaining values the attribute is removed.

Parameters:
name - The name of the attribute to remove the value from.
value - The value to remove.

removeAttribute

void removeAttribute(java.lang.String name,
                     java.lang.Object[] values)
Removes the specified attribute values leaving the remaining values. If there are no remaining values the attribute is removed.

Parameters:
name - The name of the attribute to remove the values from.
values - The values to remove.

putAttributesInto

void putAttributesInto(RgyAttributes attributes)
Puts copies of all the attributes in this object into the RgyAttributes object provided.

Parameters:
attributes - Where to put the attributes.

nameIterator

java.util.Iterator<java.lang.String> nameIterator()
Returns an Iterator over the list of attribute names stored in this object.

Returns:
Iterator that returns every attribute's named.