LDAPJDK 4.1

netscape.ldap
Class LDAPAttribute

java.lang.Object
  |
  +--netscape.ldap.LDAPAttribute

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

Represents the name and values of an attribute in an entry.

See Also:
LDAPAttributeSet, Serialized Form

Constructor Summary
LDAPAttribute(BERElement element)
          Constructs an attribute from a BER (Basic Encoding Rules) element.
LDAPAttribute(LDAPAttribute attr)
          Constructs an attribute from another existing attribute.
LDAPAttribute(java.lang.String attrName)
          Constructs an attribute with no values.
LDAPAttribute(java.lang.String attrName, byte[] attrValue)
          Constructs an attribute with a byte-formatted value.
LDAPAttribute(java.lang.String attrName, java.lang.String attrValue)
          Constructs an attribute that has a single string value.
LDAPAttribute(java.lang.String attrName, java.lang.String[] attrValues)
          Constructs an attribute that has an array of string values.
 
Method Summary
 void addValue(byte[] attrValue)
          Adds a byte[]-formatted value to the attribute.
 void addValue(java.lang.String attrValue)
          Adds a string value to the attribute.
 java.lang.String getBaseName()
          Extracts the base name from the attribute name of the current LDAPAttribute object.
static java.lang.String getBaseName(java.lang.String attrName)
          Extracts the base name from the specified attribute name.
 BERElement getBERElement()
          Retrieves the BER (Basic Encoding Rules) representation of an attribute.
 byte[][] getByteValueArray()
          Returns the values of the attribute in an array of byte[] format.
 java.util.Enumeration getByteValues()
          Returns an enumerator for the values of the attribute in byte[] format.
 java.lang.String getLangSubtype()
          Extracts the language subtype from the attribute name of the LDAPAttribute object, if any.
 java.lang.String getName()
          Returns the name of the attribute.
 java.lang.String[] getStringValueArray()
          Returns the values of the attribute as an array of String objects.
 java.util.Enumeration getStringValues()
          Returns an enumerator for the string values of an attribute.
 java.lang.String[] getSubtypes()
          Extracts the subtypes from the attribute name of the current LDAPAttribute object.
static java.lang.String[] getSubtypes(java.lang.String attrName)
          Extracts the subtypes from the specified attribute name.
 boolean hasSubtype(java.lang.String subtype)
          Reports whether the attribute name contains the specified subtype.
 boolean hasSubtypes(java.lang.String[] subtypes)
          Reports if the attribute name contains all specified subtypes For example, if you check for the subtypes lang-en and phonetic and the attribute name is cn;lang-en;phonetic, this method returns true.
 void removeValue(byte[] attrValue)
          Removes a byte[]-formatted value from the attribute.
 void removeValue(java.lang.String attrValue)
          Removes a string value from the attribute.
protected  void setValues(java.lang.Object[] attrValues)
          Sets the byte[] values as the attribute's values.
protected  void setValues(java.lang.String[] attrValues)
          Sets the string values as the attribute's values.
 int size()
          Returns the number of values of the attribute.
 java.lang.String toString()
          Retrieves the string representation of an attribute in an LDAP entry.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

LDAPAttribute

public LDAPAttribute(LDAPAttribute attr)
Constructs an attribute from another existing attribute. Effectively, this makes a copy of the existing attribute.
Parameters:
attr - the attribute to copy

LDAPAttribute

public LDAPAttribute(java.lang.String attrName)
Constructs an attribute with no values.
Parameters:
attrName - name of the attribute

LDAPAttribute

public LDAPAttribute(java.lang.String attrName,
                     byte[] attrValue)
Constructs an attribute with a byte-formatted value.
Parameters:
attrName - name of the attribute
attrValue - value of the attribute in byte format

LDAPAttribute

public LDAPAttribute(java.lang.String attrName,
                     java.lang.String attrValue)
Constructs an attribute that has a single string value.
Parameters:
attrName - name of the attribute
attrValue - value of the attribute in String format

LDAPAttribute

public LDAPAttribute(java.lang.String attrName,
                     java.lang.String[] attrValues)
Constructs an attribute that has an array of string values.
Parameters:
attrName - name of the attribute
attrValues - the list of string values for this attribute

LDAPAttribute

public LDAPAttribute(BERElement element)
              throws java.io.IOException
Constructs an attribute from a BER (Basic Encoding Rules) element. (The protocol elements of LDAP are encoded for exchange using the Basic Encoding Rules.)
Parameters:
element - element that you want translated into an attribute
Throws:
java.io.IOException - The attribute could not be created from the specified element.
Method Detail

size

public int size()
Returns the number of values of the attribute.
Returns:
number of values for this attribute.

getStringValues

public java.util.Enumeration getStringValues()
Returns an enumerator for the string values of an attribute.
Returns:
enumerator for the string values.

getStringValueArray

public java.lang.String[] getStringValueArray()
Returns the values of the attribute as an array of String objects.
Returns:
array of attribute values. Each element in the array is a String object.

getByteValues

public java.util.Enumeration getByteValues()
Returns an enumerator for the values of the attribute in byte[] format.
Returns:
a set of attribute values. Each element in the enumeration is of type byte[].

getByteValueArray

public byte[][] getByteValueArray()
Returns the values of the attribute in an array of byte[] format.
Returns:
array of attribute values. Each element in the array will be of type byte[].

getName

public java.lang.String getName()
Returns the name of the attribute.
Returns:
name of the attribute.

getSubtypes

public static java.lang.String[] getSubtypes(java.lang.String attrName)
Extracts the subtypes from the specified attribute name. For example, if the attribute name is cn;lang-ja;phonetic, this method returns an array containing lang-ja and phonetic.

Parameters:
attrName - name of the attribute from which to extract the subtypes
Returns:
array of subtypes, or null (if the name has no subtypes).
See Also:
getBaseName(java.lang.String)

getSubtypes

public java.lang.String[] getSubtypes()
Extracts the subtypes from the attribute name of the current LDAPAttribute object. For example, if the attribute name is cn;lang-ja;phonetic, this method returns an array containing lang-ja and phonetic.

Returns:
array of subtypes, or null (if the name has no subtypes).

getLangSubtype

public java.lang.String getLangSubtype()
Extracts the language subtype from the attribute name of the LDAPAttribute object, if any. For example, if the attribute name is cn;lang-ja;phonetic, this method returns the String lang-ja.

Returns:
the language subtype, or null (if the name has no language subtype).

getBaseName

public static java.lang.String getBaseName(java.lang.String attrName)
Extracts the base name from the specified attribute name. For example, if the attribute name is cn;lang-ja;phonetic, this method returns cn.

Parameters:
attrName - name of the attribute from which to extract the base name
Returns:
base name (the attribute name without any subtypes).
See Also:
getSubtypes(java.lang.String)

getBaseName

public java.lang.String getBaseName()
Extracts the base name from the attribute name of the current LDAPAttribute object. For example, if the attribute name is cn;lang-ja;phonetic, this method returns cn.

Returns:
base name (the attribute name without any subtypes).
See Also:
getSubtypes(java.lang.String)

hasSubtype

public boolean hasSubtype(java.lang.String subtype)
Reports whether the attribute name contains the specified subtype. For example, if you check for the subtype lang-en and the attribute name is cn;lang-en, this method returns true.

Parameters:
subtype - the single subtype for which you want to check
Returns:
true if the attribute name contains the specified subtype.
See Also:
getSubtypes(java.lang.String)

hasSubtypes

public boolean hasSubtypes(java.lang.String[] subtypes)
Reports if the attribute name contains all specified subtypes For example, if you check for the subtypes lang-en and phonetic and the attribute name is cn;lang-en;phonetic, this method returns true. If the attribute name is cn;phonetic or cn;lang-en, this method returns false.

Parameters:
subtypes - an array of subtypes to check
Returns:
true if the attribute name contains all subtypes
See Also:
getSubtypes(java.lang.String)

addValue

public void addValue(java.lang.String attrValue)
Adds a string value to the attribute.
Parameters:
attrValue - the string value to add to the attribute

setValues

protected void setValues(java.lang.String[] attrValues)
Sets the string values as the attribute's values.
Parameters:
attrValues - the string values to use in the attribute

addValue

public void addValue(byte[] attrValue)
Adds a byte[]-formatted value to the attribute.
Parameters:
attrValue - the byte[]-formatted value to add to the attribute

setValues

protected void setValues(java.lang.Object[] attrValues)
Sets the byte[] values as the attribute's values.
Parameters:
attrValues - the values to use in the attribute

removeValue

public void removeValue(java.lang.String attrValue)
Removes a string value from the attribute.
Parameters:
attrValue - the string value to remove

removeValue

public void removeValue(byte[] attrValue)
Removes a byte[]-formatted value from the attribute.
Parameters:
attrValue - byte[]-formatted value to remove

getBERElement

public BERElement getBERElement()
Retrieves the BER (Basic Encoding Rules) representation of an attribute. (The protocol elements of LDAP are encoded for exchange using the Basic Encoding Rules.)
Returns:
the BER representation of the attribute.

toString

public java.lang.String toString()
Retrieves the string representation of an attribute in an LDAP entry. For example:
LDAPAttribute {type='cn', values='Barbara Jensen,Babs Jensen'}
Overrides:
toString in class java.lang.Object
Returns:
string representation of the attribute.

LDAPJDK 4.1