- java.lang.Object
-
- com.sun.jndi.ldap.spi.LdapDnsProvider
-
public abstract class LdapDnsProvider extends Object
Service-provider class for DNS lookups when performing LDAP operations.An LDAP DNS provider is a concrete subclass of this class that has a zero-argument constructor. LDAP DNS providers are located using the ServiceLoader facility, as specified by InitialDirectContext. The
ServiceLoaderis used to create and register implementations ofLdapDnsProvider.An LDAP DNS provider can be used in environments where the default DNS resolution mechanism is not sufficient to accurately pinpoint the correct LDAP servers needed to perform LDAP operations. For example, in an environment containing a mix of
ldapandldapsservers you may want the LdapContext to queryldapsservers only.
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedLdapDnsProvider()Creates a new instance ofLdapDnsProvider.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description abstract Optional<LdapDnsProviderResult>lookupEndpoints(String url, Map<?,?> env)Lookup the endpoints and domain name for the givenContextprovider URLand environment.
-
-
-
Constructor Detail
-
LdapDnsProvider
protected LdapDnsProvider()
Creates a new instance ofLdapDnsProvider.- Throws:
SecurityException- if a security manager is present and itscheckPermissionmethod doesn't allow theRuntimePermission("ldapDnsProvider").
-
-
Method Detail
-
lookupEndpoints
public abstract Optional<LdapDnsProviderResult> lookupEndpoints(String url, Map<?,?> env) throws NamingException
Lookup the endpoints and domain name for the givenContextprovider URLand environment. The resolved endpoints and domain name are returned as anLdapDnsProviderResult.An endpoint is a
Stringrepresentation of an LDAP URL which points to an LDAP server to be used for LDAP operations. The syntax of an LDAP URL is defined by RFC 2255: The LDAP URL Format.- Parameters:
url- TheContextprovider URLenv- TheContextenvironment.- Returns:
- an
LdapDnsProviderResultor emptyOptionalif the lookup fails. - Throws:
NamingException- if theurlis not valid or an error occurred while performing the lookup.NullPointerException- if eitherurlorenvarenull.
-
-