An LdapContext is used when LDAPv3 extended operations and/or
controls are required.
Extended operations are dealt with by the extendedOperation
method. All other methods relate to the use of controls. Controls are extra
information provided to or from an LDAP v3 server. Controls are either of the
type Request or Response . There is a special
type of request controls known as connection controls.
Connection controls are used by a service provider when connecting or
reconnecting to an LDAP server. These are associated with connections and are
inherited by derived Context . It should be noted however that
subsequent changes to a derived Context 's own connection
controls has no impact on the Context from which it inherited.
There are a number of environment properties which relate specifically to
LDAP service providers. The one which is important here is:
java.naming.ldap.control.connect which holds the array of
connection controls for a Context . Service providers rely on
this to pass on the connection controls to derived Context .
Request controls are used by a service provider when performing operations
other than connecting or reconnecting. These are referred to as Context
Request Controls as they relate to the specific Context
instance. It must be noted that, unlike connection controls, they are not
inherited. Connection and request controls being split like this allows
service provider implementations to pool connections.
Response controls are generated by an LDAPv3 server.
See Also: DirContext |