< prev index next >

src/java.naming/share/classes/javax/naming/ldap/LdapName.java

Print this page

        

*** 57,75 **** * and is ignored when comparing names. * <li> AttributeValue strings containing '=' or non-leading '#' * characters (unescaped) are accepted. * </ul> *<p> ! * String names passed to <code>LdapName</code> or returned by it * use the full Unicode character set. They may also contain * characters encoded into UTF-8 with each octet represented by a * three-character substring such as "\\B4". * They may not, however, contain characters encoded into UTF-8 with * each octet represented by a single character in the string: the * meaning would be ambiguous. *<p> ! * <code>LdapName</code> will properly parse all valid names, but * does not attempt to detect all possible violations when parsing * invalid names. It is "generous" in accepting invalid names. * The "validity" of a name is determined ultimately when it * is supplied to an LDAP server, which may accept or * reject the name based on factors such as its schema information --- 57,75 ---- * and is ignored when comparing names. * <li> AttributeValue strings containing '=' or non-leading '#' * characters (unescaped) are accepted. * </ul> *<p> ! * String names passed to {@code LdapName} or returned by it * use the full Unicode character set. They may also contain * characters encoded into UTF-8 with each octet represented by a * three-character substring such as "\\B4". * They may not, however, contain characters encoded into UTF-8 with * each octet represented by a single character in the string: the * meaning would be ambiguous. *<p> ! * {@code LdapName} will properly parse all valid names, but * does not attempt to detect all possible violations when parsing * invalid names. It is "generous" in accepting invalid names. * The "validity" of a name is determined ultimately when it * is supplied to an LDAP server, which may accept or * reject the name based on factors such as its schema information
*** 90,100 **** * "CN=Steve Kille, O=Isode Limited, C=GB" is numbered in the following * sequence ranging from 0 to 2: {C=GB, O=Isode Limited, CN=Steve Kille}. An * empty LDAP name is represented by an empty RDN list. *<p> * Concurrent multithreaded read-only access of an instance of ! * <tt>LdapName</tt> need not be synchronized. *<p> * Unless otherwise noted, the behavior of passing a null argument * to a constructor or method in this class will cause a * NullPointerException to be thrown. * --- 90,100 ---- * "CN=Steve Kille, O=Isode Limited, C=GB" is numbered in the following * sequence ranging from 0 to 2: {C=GB, O=Isode Limited, CN=Steve Kille}. An * empty LDAP name is represented by an empty RDN list. *<p> * Concurrent multithreaded read-only access of an instance of ! * {@code LdapName} need not be synchronized. *<p> * Unless otherwise noted, the behavior of passing a null argument * to a constructor or method in this class will cause a * NullPointerException to be thrown. *
*** 127,137 **** * Constructs an LDAP name given its parsed RDN components. * <p> * The indexing of RDNs in the list follows the numbering of * RDNs described in the class description. * ! * @param rdns The non-null list of <tt>Rdn</tt>s forming this LDAP name. */ public LdapName(List<Rdn> rdns) { // if (rdns instanceof ArrayList<Rdn>) { // this.rdns = rdns.clone(); --- 127,137 ---- * Constructs an LDAP name given its parsed RDN components. * <p> * The indexing of RDNs in the list follows the numbering of * RDNs described in the class description. * ! * @param rdns The non-null list of {@code Rdn}s forming this LDAP name. */ public LdapName(List<Rdn> rdns) { // if (rdns instanceof ArrayList<Rdn>) { // this.rdns = rdns.clone();
*** 238,248 **** * components of this LDAP name. * Subsequent changes to this name will not affect the name * that is returned and vice versa. * @param posn The 0-based index of the component at which to stop. * Must be in the range [0,size()]. ! * @return An instance of <tt>LdapName</tt> consisting of the * components at indexes in the range [0,posn). * If posn is zero, an empty LDAP name is returned. * @exception IndexOutOfBoundsException * If posn is outside the specified range. */ --- 238,248 ---- * components of this LDAP name. * Subsequent changes to this name will not affect the name * that is returned and vice versa. * @param posn The 0-based index of the component at which to stop. * Must be in the range [0,size()]. ! * @return An instance of {@code LdapName} consisting of the * components at indexes in the range [0,posn). * If posn is zero, an empty LDAP name is returned. * @exception IndexOutOfBoundsException * If posn is outside the specified range. */
*** 261,271 **** * Subsequent changes to this name do not affect the name that is * returned and vice versa. * * @param posn The 0-based index of the component at which to start. * Must be in the range [0,size()]. ! * @return An instance of <tt>LdapName</tt> consisting of the * components at indexes in the range [posn,size()). * If posn is equal to size(), an empty LDAP name is * returned. * @exception IndexOutOfBoundsException * If posn is outside the specified range. --- 261,271 ---- * Subsequent changes to this name do not affect the name that is * returned and vice versa. * * @param posn The 0-based index of the component at which to start. * Must be in the range [0,size()]. ! * @return An instance of {@code LdapName} consisting of the * components at indexes in the range [posn,size()). * If posn is equal to size(), an empty LDAP name is * returned. * @exception IndexOutOfBoundsException * If posn is outside the specified range.
*** 280,296 **** } /** * Determines whether this LDAP name starts with a specified LDAP name * prefix. ! * A name <tt>n</tt> is a prefix if it is equal to ! * <tt>getPrefix(n.size())</tt>--in other words this LDAP * name starts with 'n'. If n is null or not a RFC2253 formatted name * as described in the class description, false is returned. * * @param n The LDAP name to check. ! * @return true if <tt>n</tt> is a prefix of this LDAP name, * false otherwise. * @see #getPrefix(int posn) */ public boolean startsWith(Name n) { if (n == null) { --- 280,296 ---- } /** * Determines whether this LDAP name starts with a specified LDAP name * prefix. ! * A name {@code n} is a prefix if it is equal to ! * {@code getPrefix(n.size())}--in other words this LDAP * name starts with 'n'. If n is null or not a RFC2253 formatted name * as described in the class description, false is returned. * * @param n The LDAP name to check. ! * @return true if {@code n} is a prefix of this LDAP name, * false otherwise. * @see #getPrefix(int posn) */ public boolean startsWith(Name n) { if (n == null) {
*** 307,318 **** * LDAP name. Returns true if this LdapName is at least as long as rdns, * and for every position p in the range [0, rdns.size()) the component * getRdn(p) matches rdns.get(p). Returns false otherwise. If rdns is * null, false is returned. * ! * @param rdns The sequence of <tt>Rdn</tt>s to check. ! * @return true if <tt>rdns</tt> form a prefix of this LDAP name, * false otherwise. */ public boolean startsWith(List<Rdn> rdns) { if (rdns == null) { return false; --- 307,318 ---- * LDAP name. Returns true if this LdapName is at least as long as rdns, * and for every position p in the range [0, rdns.size()) the component * getRdn(p) matches rdns.get(p). Returns false otherwise. If rdns is * null, false is returned. * ! * @param rdns The sequence of {@code Rdn}s to check. ! * @return true if {@code rdns} form a prefix of this LDAP name, * false otherwise. */ public boolean startsWith(List<Rdn> rdns) { if (rdns == null) { return false;
*** 324,340 **** } /** * Determines whether this LDAP name ends with a specified * LDAP name suffix. ! * A name <tt>n</tt> is a suffix if it is equal to ! * <tt>getSuffix(size()-n.size())</tt>--in other words this LDAP * name ends with 'n'. If n is null or not a RFC2253 formatted name * as described in the class description, false is returned. * * @param n The LDAP name to check. ! * @return true if <tt>n</tt> is a suffix of this name, false otherwise. * @see #getSuffix(int posn) */ public boolean endsWith(Name n) { if (n == null) { return false; --- 324,340 ---- } /** * Determines whether this LDAP name ends with a specified * LDAP name suffix. ! * A name {@code n} is a suffix if it is equal to ! * {@code getSuffix(size()-n.size())}--in other words this LDAP * name ends with 'n'. If n is null or not a RFC2253 formatted name * as described in the class description, false is returned. * * @param n The LDAP name to check. ! * @return true if {@code n} is a suffix of this name, false otherwise. * @see #getSuffix(int posn) */ public boolean endsWith(Name n) { if (n == null) { return false;
*** 350,361 **** * LDAP name. Returns true if this LdapName is at least as long as rdns, * and for every position p in the range [size() - rdns.size(), size()) * the component getRdn(p) matches rdns.get(p). Returns false otherwise. * If rdns is null, false is returned. * ! * @param rdns The sequence of <tt>Rdn</tt>s to check. ! * @return true if <tt>rdns</tt> form a suffix of this LDAP name, * false otherwise. */ public boolean endsWith(List<Rdn> rdns) { if (rdns == null) { return false; --- 350,361 ---- * LDAP name. Returns true if this LdapName is at least as long as rdns, * and for every position p in the range [size() - rdns.size(), size()) * the component getRdn(p) matches rdns.get(p). Returns false otherwise. * If rdns is null, false is returned. * ! * @param rdns The sequence of {@code Rdn}s to check. ! * @return true if {@code rdns} form a suffix of this LDAP name, * false otherwise. */ public boolean endsWith(List<Rdn> rdns) { if (rdns == null) { return false;
*** 407,417 **** * Adds the components of a name -- in order -- to the end of this name. * * @param suffix The non-null components to add. * @return The updated name (not a new instance). * ! * @throws InvalidNameException if <tt>suffix</tt> is not a valid LDAP * name, or if the addition of the components would violate the * syntax rules of this LDAP name. */ public Name addAll(Name suffix) throws InvalidNameException { return addAll(size(), suffix); --- 407,417 ---- * Adds the components of a name -- in order -- to the end of this name. * * @param suffix The non-null components to add. * @return The updated name (not a new instance). * ! * @throws InvalidNameException if {@code suffix} is not a valid LDAP * name, or if the addition of the components would violate the * syntax rules of this LDAP name. */ public Name addAll(Name suffix) throws InvalidNameException { return addAll(size(), suffix);
*** 419,429 **** /** * Adds the RDNs of a name -- in order -- to the end of this name. * ! * @param suffixRdns The non-null suffix <tt>Rdn</tt>s to add. * @return The updated name (not a new instance). */ public Name addAll(List<Rdn> suffixRdns) { return addAll(size(), suffixRdns); } --- 419,429 ---- /** * Adds the RDNs of a name -- in order -- to the end of this name. * ! * @param suffixRdns The non-null suffix {@code Rdn}s to add. * @return The updated name (not a new instance). */ public Name addAll(List<Rdn> suffixRdns) { return addAll(size(), suffixRdns); }
*** 438,448 **** * @param posn The index at which to add the new component. * Must be in the range [0,size()]. * * @return The updated name (not a new instance). * ! * @throws InvalidNameException if <tt>suffix</tt> is not a valid LDAP * name, or if the addition of the components would violate the * syntax rules of this LDAP name. * @throws IndexOutOfBoundsException * If posn is outside the specified range. */ --- 438,448 ---- * @param posn The index at which to add the new component. * Must be in the range [0,size()]. * * @return The updated name (not a new instance). * ! * @throws InvalidNameException if {@code suffix} is not a valid LDAP * name, or if the addition of the components would violate the * syntax rules of this LDAP name. * @throws IndexOutOfBoundsException * If posn is outside the specified range. */
*** 467,477 **** * Adds the RDNs of a name -- in order -- at a specified position * within this name. RDNs of this LDAP name at or after the * index (if any) of the first new RDN are shifted up (away from index 0) to * accommodate the new RDNs. * ! * @param suffixRdns The non-null suffix <tt>Rdn</tt>s to add. * @param posn The index at which to add the suffix RDNs. * Must be in the range [0,size()]. * * @return The updated name (not a new instance). * @throws IndexOutOfBoundsException --- 467,477 ---- * Adds the RDNs of a name -- in order -- at a specified position * within this name. RDNs of this LDAP name at or after the * index (if any) of the first new RDN are shifted up (away from index 0) to * accommodate the new RDNs. * ! * @param suffixRdns The non-null suffix {@code Rdn}s to add. * @param posn The index at which to add the suffix RDNs. * Must be in the range [0,size()]. * * @return The updated name (not a new instance). * @throws IndexOutOfBoundsException
< prev index next >