--- old/src/java.naming/share/classes/com/sun/jndi/ldap/LdapCtx.java 2017-01-25 16:14:20.830433462 +0000 +++ new/src/java.naming/share/classes/com/sun/jndi/ldap/LdapCtx.java 2017-01-25 16:14:20.690432525 +0000 @@ -200,6 +200,23 @@ private static final String REPLY_QUEUE_SIZE = "com.sun.jndi.ldap.search.replyQueueSize"; + /* + * Name of the DNS provider class used by + * {@code LdapCtxFactory.getUsingURL()} to resolve ldap server urls. + * {code DefaultLdapDnsProvider} is used by default. + * + * A DNS provider must implement the {@code BiFunction} interface. + * In addition, the provider class must be public and must have a + * public constructor that accepts no parameters. + * + * The {@code BiFunction.apply(String url, Hashtable env)} method + * takes two parameters: + * + * {@code String url}: The {@code Context.PROVIDER_URL} + * {@code Hashtable env}: The LdapCtx environment properties. + */ + static final String DNS_PROVIDER = "com.sun.jndi.ldap.dnsProvider"; + // ----------------- Fields that don't change ----------------------- private static final NameParser parser = new LdapNameParser();