Package org.springframework.ldap.pool2
Class DelegatingContext
- java.lang.Object
-
- org.springframework.ldap.pool2.DelegatingContext
-
- All Implemented Interfaces:
javax.naming.Context
- Direct Known Subclasses:
DelegatingDirContext
public class DelegatingContext extends java.lang.Object implements javax.naming.Context
Used byPooledContextSource
to wrap aContext
, delegating most methods to the underlying context, retains a reference to the pool the context was checked out from and returns itself to the pool whenclose()
is called.- Since:
- 2.0
-
-
Constructor Summary
Constructors Constructor Description DelegatingContext(org.apache.commons.pool2.KeyedObjectPool<java.lang.Object,java.lang.Object> keyedObjectPool, javax.naming.Context delegateContext, DirContextType dirContextType)
Create a new delegating context for the specified pool, context and context type.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
addToEnvironment(java.lang.String propName, java.lang.Object propVal)
protected void
assertOpen()
void
bind(java.lang.String name, java.lang.Object obj)
void
bind(javax.naming.Name name, java.lang.Object obj)
void
close()
java.lang.String
composeName(java.lang.String name, java.lang.String prefix)
javax.naming.Name
composeName(javax.naming.Name name, javax.naming.Name prefix)
javax.naming.Context
createSubcontext(java.lang.String name)
javax.naming.Context
createSubcontext(javax.naming.Name name)
void
destroySubcontext(java.lang.String name)
void
destroySubcontext(javax.naming.Name name)
boolean
equals(java.lang.Object obj)
javax.naming.Context
getDelegateContext()
java.util.Hashtable<?,?>
getEnvironment()
javax.naming.Context
getInnermostDelegateContext()
Recursivley inspect delegates until a non-delegating context is found.java.lang.String
getNameInNamespace()
javax.naming.NameParser
getNameParser(java.lang.String name)
javax.naming.NameParser
getNameParser(javax.naming.Name name)
int
hashCode()
javax.naming.NamingEnumeration<javax.naming.NameClassPair>
list(java.lang.String name)
javax.naming.NamingEnumeration<javax.naming.NameClassPair>
list(javax.naming.Name name)
javax.naming.NamingEnumeration<javax.naming.Binding>
listBindings(java.lang.String name)
javax.naming.NamingEnumeration<javax.naming.Binding>
listBindings(javax.naming.Name name)
java.lang.Object
lookup(java.lang.String name)
java.lang.Object
lookup(javax.naming.Name name)
java.lang.Object
lookupLink(java.lang.String name)
java.lang.Object
lookupLink(javax.naming.Name name)
void
rebind(java.lang.String name, java.lang.Object obj)
void
rebind(javax.naming.Name name, java.lang.Object obj)
java.lang.Object
removeFromEnvironment(java.lang.String propName)
void
rename(java.lang.String oldName, java.lang.String newName)
void
rename(javax.naming.Name oldName, javax.naming.Name newName)
java.lang.String
toString()
void
unbind(java.lang.String name)
void
unbind(javax.naming.Name name)
-
-
-
Constructor Detail
-
DelegatingContext
public DelegatingContext(org.apache.commons.pool2.KeyedObjectPool<java.lang.Object,java.lang.Object> keyedObjectPool, javax.naming.Context delegateContext, DirContextType dirContextType)
Create a new delegating context for the specified pool, context and context type.- Parameters:
keyedObjectPool
- The pool the delegate context was checked out from.delegateContext
- The context to delegate operations to.dirContextType
- The type of context, used as a key for the pool.- Throws:
java.lang.IllegalArgumentException
- if any of the arguments are null
-
-
Method Detail
-
getDelegateContext
public javax.naming.Context getDelegateContext()
- Returns:
- The direct delegate for this context proxy
-
getInnermostDelegateContext
public javax.naming.Context getInnermostDelegateContext()
Recursivley inspect delegates until a non-delegating context is found.- Returns:
- The innermost (real) Context that is being delegated to.
-
assertOpen
protected void assertOpen() throws javax.naming.NamingException
- Throws:
javax.naming.NamingException
- If the delegate is null,close()
has been called.
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
- See Also:
Object.equals(Object)
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
- See Also:
Object.hashCode()
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
- See Also:
Object.toString()
-
addToEnvironment
public java.lang.Object addToEnvironment(java.lang.String propName, java.lang.Object propVal) throws javax.naming.NamingException
- Specified by:
addToEnvironment
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.addToEnvironment(String, Object)
-
bind
public void bind(javax.naming.Name name, java.lang.Object obj) throws javax.naming.NamingException
- Specified by:
bind
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.bind(Name, Object)
-
bind
public void bind(java.lang.String name, java.lang.Object obj) throws javax.naming.NamingException
- Specified by:
bind
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.bind(String, Object)
-
close
public void close() throws javax.naming.NamingException
- Specified by:
close
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.close()
-
composeName
public javax.naming.Name composeName(javax.naming.Name name, javax.naming.Name prefix) throws javax.naming.NamingException
- Specified by:
composeName
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.composeName(Name, Name)
-
composeName
public java.lang.String composeName(java.lang.String name, java.lang.String prefix) throws javax.naming.NamingException
- Specified by:
composeName
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.composeName(String, String)
-
createSubcontext
public javax.naming.Context createSubcontext(javax.naming.Name name) throws javax.naming.NamingException
- Specified by:
createSubcontext
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.createSubcontext(Name)
-
createSubcontext
public javax.naming.Context createSubcontext(java.lang.String name) throws javax.naming.NamingException
- Specified by:
createSubcontext
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.createSubcontext(String)
-
destroySubcontext
public void destroySubcontext(javax.naming.Name name) throws javax.naming.NamingException
- Specified by:
destroySubcontext
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.destroySubcontext(Name)
-
destroySubcontext
public void destroySubcontext(java.lang.String name) throws javax.naming.NamingException
- Specified by:
destroySubcontext
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.destroySubcontext(String)
-
getEnvironment
public java.util.Hashtable<?,?> getEnvironment() throws javax.naming.NamingException
- Specified by:
getEnvironment
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.getEnvironment()
-
getNameInNamespace
public java.lang.String getNameInNamespace() throws javax.naming.NamingException
- Specified by:
getNameInNamespace
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.getNameInNamespace()
-
getNameParser
public javax.naming.NameParser getNameParser(javax.naming.Name name) throws javax.naming.NamingException
- Specified by:
getNameParser
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.getNameParser(Name)
-
getNameParser
public javax.naming.NameParser getNameParser(java.lang.String name) throws javax.naming.NamingException
- Specified by:
getNameParser
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.getNameParser(String)
-
list
public javax.naming.NamingEnumeration<javax.naming.NameClassPair> list(javax.naming.Name name) throws javax.naming.NamingException
- Specified by:
list
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.list(Name)
-
list
public javax.naming.NamingEnumeration<javax.naming.NameClassPair> list(java.lang.String name) throws javax.naming.NamingException
- Specified by:
list
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.list(String)
-
listBindings
public javax.naming.NamingEnumeration<javax.naming.Binding> listBindings(javax.naming.Name name) throws javax.naming.NamingException
- Specified by:
listBindings
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.listBindings(Name)
-
listBindings
public javax.naming.NamingEnumeration<javax.naming.Binding> listBindings(java.lang.String name) throws javax.naming.NamingException
- Specified by:
listBindings
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.listBindings(String)
-
lookup
public java.lang.Object lookup(javax.naming.Name name) throws javax.naming.NamingException
- Specified by:
lookup
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.lookup(Name)
-
lookup
public java.lang.Object lookup(java.lang.String name) throws javax.naming.NamingException
- Specified by:
lookup
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.lookup(String)
-
lookupLink
public java.lang.Object lookupLink(javax.naming.Name name) throws javax.naming.NamingException
- Specified by:
lookupLink
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.lookupLink(Name)
-
lookupLink
public java.lang.Object lookupLink(java.lang.String name) throws javax.naming.NamingException
- Specified by:
lookupLink
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.lookupLink(String)
-
rebind
public void rebind(javax.naming.Name name, java.lang.Object obj) throws javax.naming.NamingException
- Specified by:
rebind
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.rebind(Name, Object)
-
rebind
public void rebind(java.lang.String name, java.lang.Object obj) throws javax.naming.NamingException
- Specified by:
rebind
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.rebind(String, Object)
-
removeFromEnvironment
public java.lang.Object removeFromEnvironment(java.lang.String propName) throws javax.naming.NamingException
- Specified by:
removeFromEnvironment
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.removeFromEnvironment(String)
-
rename
public void rename(javax.naming.Name oldName, javax.naming.Name newName) throws javax.naming.NamingException
- Specified by:
rename
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.rename(Name, Name)
-
rename
public void rename(java.lang.String oldName, java.lang.String newName) throws javax.naming.NamingException
- Specified by:
rename
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.rename(String, String)
-
unbind
public void unbind(javax.naming.Name name) throws javax.naming.NamingException
- Specified by:
unbind
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.unbind(Name)
-
unbind
public void unbind(java.lang.String name) throws javax.naming.NamingException
- Specified by:
unbind
in interfacejavax.naming.Context
- Throws:
javax.naming.NamingException
- See Also:
Context.unbind(String)
-
-