Class Dn

java.lang.Object
org.ldaptive.dn.Dn

public class Dn extends Object
Distinguished name containing zero or more relative distinguished names. RDNs are ordered from left to right such that the left-most RDN is considered the first. For the DN 'cn=Jane Doe,ou=People,dc=ldaptive,dc=org', the first RDN is 'cn=Jane Doe'. See RFC 4514 for more details on the string representations of DNs.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
     
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private static final int
    hash code seed.
    private final List<RDn>
    RDN components.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Dn()
    Default constructor.
    Dn(String dn)
    Creates a new DN with the supplied string.
    Dn(String dn, DnParser parser)
    Creates a new DN with the supplied string.
    Dn(List<RDn> rdns)
    Creates a new DN with the supplied RDNs.
    Dn(RDn... rdn)
    Creates a new DN with the supplied RDNs.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    add(int index, RDn rdn)
    Adds the supplied RDN at the supplied index.
    void
    add(Dn dn)
    Adds all the RDNs in the supplied DN to the end of this DN.
    void
    add(RDn rdn)
    Adds the supplied RDN to the end of this DN.
    static Dn.Builder
    Creates a builder for this class.
    boolean
     
    Produces a string representation of this DN.
    format(RDnNormalizer normalizer)
    Produces a string representation of this DN.
    Returns the first RDN in this DN.
    Returns the RDNs in this DN.
    Returns the first RDN value with the supplied name.
    Returns the RDN values with the supplied name.
    int
     
    int
    Returns the number of RDNs in this DN.
    subDn(int index)
    Returns a new DN containing all the RDN components from the supplied index.
    subDn(int beginIndex, int endIndex)
    Returns a new DN containing all the RDN components between the supplied indexes.
     

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • HASH_CODE_SEED

      private static final int HASH_CODE_SEED
      hash code seed.
      See Also:
    • rdnComponents

      private final List<RDn> rdnComponents
      RDN components.
  • Constructor Details

    • Dn

      public Dn()
      Default constructor.
    • Dn

      public Dn(String dn)
      Creates a new DN with the supplied string.
      Parameters:
      dn - to parse
    • Dn

      public Dn(String dn, DnParser parser)
      Creates a new DN with the supplied string.
      Parameters:
      dn - to parse
      parser - to parse dn
    • Dn

      public Dn(RDn... rdn)
      Creates a new DN with the supplied RDNs.
      Parameters:
      rdn - to add
    • Dn

      public Dn(List<RDn> rdns)
      Creates a new DN with the supplied RDNs.
      Parameters:
      rdns - to add
  • Method Details

    • getRDn

      public RDn getRDn()
      Returns the first RDN in this DN.
      Returns:
      first RDN
    • getRDns

      public List<RDn> getRDns()
      Returns the RDNs in this DN.
      Returns:
      RDNs
    • add

      public void add(Dn dn)
      Adds all the RDNs in the supplied DN to the end of this DN.
      Parameters:
      dn - to add to this DN
    • add

      public void add(RDn rdn)
      Adds the supplied RDN to the end of this DN.
      Parameters:
      rdn - to add to this DN
    • add

      public void add(int index, RDn rdn)
      Adds the supplied RDN at the supplied index.
      Parameters:
      index - to add the RDN at
      rdn - to add to this DN
    • subDn

      public Dn subDn(int index)
      Returns a new DN containing all the RDN components from the supplied index.
      Parameters:
      index - of RDNs to include
      Returns:
      DN with sub-components of this DN
    • subDn

      public Dn subDn(int beginIndex, int endIndex)
      Returns a new DN containing all the RDN components between the supplied indexes.
      Parameters:
      beginIndex - first RDN to include (inclusive)
      endIndex - last RDN to include (exclusive)
      Returns:
      DN with sub-components of this DN
    • getValues

      public Collection<String> getValues(String name)
      Returns the RDN values with the supplied name. If the RDN is multi-value the first value is used.
      Parameters:
      name - of the RDN
      Returns:
      RDN value
    • getValue

      public String getValue(String name)
      Returns the first RDN value with the supplied name. If the RDN is multi-value the first value is used.
      Parameters:
      name - of the RDN
      Returns:
      RDN value
    • size

      public int size()
      Returns the number of RDNs in this DN.
      Returns:
      number of RDNs
    • format

      public String format()
      Produces a string representation of this DN.
      Returns:
      DN string
    • format

      public String format(RDnNormalizer normalizer)
      Produces a string representation of this DN.
      Parameters:
      normalizer - to apply to the RDN components or null for no formatting
      Returns:
      DN string
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • builder

      public static Dn.Builder builder()
      Creates a builder for this class.
      Returns:
      new builder