Class DelegatingLdapContext
java.lang.Object
org.springframework.ldap.pool2.DelegatingContext
org.springframework.ldap.pool2.DelegatingDirContext
org.springframework.ldap.pool2.DelegatingLdapContext
- All Implemented Interfaces:
Context, DirContext, LdapContext, DirContextProxy
- Direct Known Subclasses:
MutableDelegatingLdapContext
Used by
PooledContextSource to wrap a LdapContext, delegating most
methods to the underlying context. This class extends DelegatingDirContext
which handles returning the context to the pool on a call to close()- Since:
- 2.0
-
Field Summary
Fields inherited from interface Context
AUTHORITATIVE, BATCHSIZE, DNS_URL, INITIAL_CONTEXT_FACTORY, LANGUAGE, OBJECT_FACTORIES, PROVIDER_URL, REFERRAL, SECURITY_AUTHENTICATION, SECURITY_CREDENTIALS, SECURITY_PRINCIPAL, SECURITY_PROTOCOL, STATE_FACTORIES, URL_PKG_PREFIXESFields inherited from interface DirContext
ADD_ATTRIBUTE, REMOVE_ATTRIBUTE, REPLACE_ATTRIBUTEFields inherited from interface LdapContext
CONTROL_FACTORIES -
Constructor Summary
ConstructorsConstructorDescriptionDelegatingLdapContext(org.apache.commons.pool2.KeyedObjectPool<Object, Object> keyedObjectPool, LdapContext delegateLdapContext, DirContextType dirContextType) Create a new delegating ldap context for the specified pool, context and context type. -
Method Summary
Modifier and TypeMethodDescriptionprotected voidAssert that the delegate context is still open.voidclose()booleanextendedOperation(ExtendedRequest request) Control[]@Nullable DirContextGet the direct delegate for this dir context proxy.@Nullable LdapContextGet the direct delegate for this ldap context proxy.@Nullable LdapContextRecursivley inspect delegates until a non-delegating ldap context is found.Control[]Control[]inthashCode()newInstance(Control[] requestControls) voidvoidsetRequestControls(Control[] requestControls) toString()Methods inherited from class DelegatingDirContext
bind, bind, createSubcontext, createSubcontext, getAttributes, getAttributes, getAttributes, getAttributes, getDelegateContext, getInnermostDelegateDirContext, getSchema, getSchema, getSchemaClassDefinition, getSchemaClassDefinition, getTargetContext, modifyAttributes, modifyAttributes, modifyAttributes, modifyAttributes, rebind, rebind, search, search, search, search, search, search, search, searchMethods inherited from class DelegatingContext
addToEnvironment, bind, bind, composeName, composeName, createSubcontext, createSubcontext, destroySubcontext, destroySubcontext, getEnvironment, getInnermostDelegateContext, getNameInNamespace, getNameParser, getNameParser, list, list, listBindings, listBindings, lookup, lookup, lookupLink, lookupLink, rebind, rebind, removeFromEnvironment, rename, rename, unbind, unbindMethods inherited from interface Context
addToEnvironment, bind, bind, composeName, composeName, createSubcontext, createSubcontext, destroySubcontext, destroySubcontext, getEnvironment, getNameInNamespace, getNameParser, getNameParser, list, list, listBindings, listBindings, lookup, lookup, lookupLink, lookupLink, rebind, rebind, removeFromEnvironment, rename, rename, unbind, unbindMethods inherited from interface DirContext
bind, bind, createSubcontext, createSubcontext, getAttributes, getAttributes, getAttributes, getAttributes, getSchema, getSchema, getSchemaClassDefinition, getSchemaClassDefinition, modifyAttributes, modifyAttributes, modifyAttributes, modifyAttributes, rebind, rebind, search, search, search, search, search, search, search, search
-
Constructor Details
-
DelegatingLdapContext
public DelegatingLdapContext(org.apache.commons.pool2.KeyedObjectPool<Object, Object> keyedObjectPool, LdapContext delegateLdapContext, DirContextType dirContextType) Create a new delegating ldap context for the specified pool, context and context type.- Parameters:
keyedObjectPool- The pool the delegate context was checked out from.delegateLdapContext- The ldap context to delegate operations to.dirContextType- The type of context, used as a key for the pool.- Throws:
IllegalArgumentException- if any of the arguments are null
-
-
Method Details
-
getDelegateLdapContext
Get the direct delegate for this ldap context proxy.- Returns:
- The direct delegate for this ldap context proxy
-
getDelegateDirContext
Description copied from class:DelegatingDirContextGet the direct delegate for this dir context proxy.- Overrides:
getDelegateDirContextin classDelegatingDirContext- Returns:
- The direct delegate for this dir context proxy
-
getInnermostDelegateLdapContext
Recursivley inspect delegates until a non-delegating ldap context is found.- Returns:
- The innermost (real) DirContext that is being delegated to.
-
assertOpen
Description copied from class:DelegatingContextAssert that the delegate context is still open.- Overrides:
assertOpenin classDelegatingDirContext- Throws:
NamingException- If the delegate is null,DelegatingContext.close()has been called.
-
equals
- Overrides:
equalsin classDelegatingDirContext
-
hashCode
public int hashCode()- Overrides:
hashCodein classDelegatingDirContext
-
toString
- Overrides:
toStringin classDelegatingDirContext
-
extendedOperation
- Specified by:
extendedOperationin interfaceLdapContext- Throws:
NamingException
-
getConnectControls
- Specified by:
getConnectControlsin interfaceLdapContext- Throws:
NamingException
-
getRequestControls
- Specified by:
getRequestControlsin interfaceLdapContext- Throws:
NamingException
-
getResponseControls
- Specified by:
getResponseControlsin interfaceLdapContext- Throws:
NamingException
-
newInstance
- Specified by:
newInstancein interfaceLdapContext- Throws:
NamingException
-
reconnect
- Specified by:
reconnectin interfaceLdapContext- Throws:
NamingException
-
setRequestControls
- Specified by:
setRequestControlsin interfaceLdapContext- Throws:
NamingException
-
close
- Specified by:
closein interfaceContext- Overrides:
closein classDelegatingDirContext- Throws:
NamingException
-