Package netscape.ldap

Class LDAPAttribute

java.lang.Object
netscape.ldap.LDAPAttribute
All Implemented Interfaces:
Serializable

public class LDAPAttribute extends Object implements Serializable
Represents the name and values of an attribute in an entry.
Version:
1.0
See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs an attribute with no values.
    LDAPAttribute(String attrName, byte[] attrValue)
    Constructs an attribute with a byte-formatted value.
    LDAPAttribute(String attrName, String attrValue)
    Constructs an attribute that has a single string value.
    LDAPAttribute(String attrName, String[] attrValues)
    Constructs an attribute that has an array of string values.
    Constructs an attribute from a BER (Basic Encoding Rules) element.
    Constructs an attribute from another existing attribute.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addValue(byte[] attrValue)
    Adds a byte[]-formatted value to the attribute.
    void
    addValue(String attrValue)
    Adds a string value to the attribute.
    Extracts the base name from the attribute name of the current LDAPAttribute object.
    static String
    getBaseName(String attrName)
    Extracts the base name from the specified attribute name.
    Retrieves the BER (Basic Encoding Rules) representation of an attribute.
    byte[][]
    Returns the values of the attribute in an array of byte[] format.
    Enumeration<byte[]>
    Returns an enumerator for the values of the attribute in byte[] format.
    Extracts the language subtype from the attribute name of the LDAPAttribute object, if any.
    Returns the name of the attribute.
    Returns the values of the attribute as an array of String objects.
    Returns an enumerator for the string values of an attribute.
    Extracts the subtypes from the attribute name of the current LDAPAttribute object.
    static String[]
    getSubtypes(String attrName)
    Extracts the subtypes from the specified attribute name.
    boolean
    hasSubtype(String subtype)
    Reports whether the attribute name contains the specified subtype.
    boolean
    hasSubtypes(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(String attrValue)
    Removes a string value from the attribute.
    protected void
    setValues(Object[] attrValues)
    Sets the byte[] values as the attribute's values.
    protected void
    setValues(String[] attrValues)
    Sets the string values as the attribute's values.
    int
    Returns the number of values of the attribute.
    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 Details

    • 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(String attrName)
      Constructs an attribute with no values.
      Parameters:
      attrName - name of the attribute
    • LDAPAttribute

      public LDAPAttribute(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(String attrName, 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(String attrName, 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 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:
      IOException - The attribute could not be created from the specified element.
  • Method Details

    • size

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

      public Enumeration<String> getStringValues()
      Returns an enumerator for the string values of an attribute.
      Returns:
      enumerator for the string values.
    • getStringValueArray

      public 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 Enumeration<byte[]> 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 String getName()
      Returns the name of the attribute.
      Returns:
      name of the attribute.
    • getSubtypes

      public static String[] getSubtypes(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:
    • getSubtypes

      public 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 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 String getBaseName(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:
    • getBaseName

      public 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:
    • hasSubtype

      public boolean hasSubtype(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:
    • hasSubtypes

      public boolean hasSubtypes(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:
    • addValue

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

      protected void setValues(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(Object[] attrValues)
      Sets the byte[] values as the attribute's values.
      Parameters:
      attrValues - the values to use in the attribute
    • removeValue

      public void removeValue(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 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 Object
      Returns:
      string representation of the attribute.