org.apache.camel.util.jndi
Class JndiContext

java.lang.Object
  extended by org.apache.camel.util.jndi.JndiContext
All Implemented Interfaces:
Serializable, Context

public class JndiContext
extends Object
implements Context, Serializable

A default JNDI context

Version:
See Also:
Serialized Form

Field Summary
protected static Injector INJETOR
           
protected static NameParser NAME_PARSER
           
static String SEPARATOR
           
 
Fields inherited from interface javax.naming.Context
APPLET, 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_PREFIXES
 
Constructor Summary
  JndiContext()
           
  JndiContext(Hashtable<String,Object> env)
           
  JndiContext(Hashtable<String,Object> environment, Map<String,Object> bindings)
           
  JndiContext(Hashtable<String,Object> environment, Map<String,Object> bindings, String nameInNamespace)
           
protected JndiContext(JndiContext clone, Hashtable<String,Object> env)
           
protected JndiContext(JndiContext clone, Hashtable<String,Object> env, String nameInNamespace)
           
 
Method Summary
 Object addToEnvironment(String propName, Object propVal)
           
 void bind(Name name, Object value)
           
 void bind(String name, Object value)
           
 void close()
           
 Name composeName(Name name, Name prefix)
           
 String composeName(String name, String prefix)
           
protected static Object createBean(Class<?> type, Map<String,Object> properties, String prefix)
           
static Map<String,Object> createBindingsMapFromEnvironment(Hashtable<String,Object> env)
          A helper method to create the JNDI bindings from the input environment properties using $foo.class to point to a class name with $foo.* being properties set on the injected bean
 Context createSubcontext(Name name)
           
 Context createSubcontext(String name)
           
 void destroySubcontext(Name name)
           
 void destroySubcontext(String name)
           
 void freeze()
           
 Hashtable<String,Object> getEnvironment()
           
 String getNameInNamespace()
           
 NameParser getNameParser(Name name)
           
 NameParser getNameParser(String name)
           
protected  Map<String,Object> internalBind(String name, Object value)
          internalBind is intended for use only during setup or possibly by suitably synchronized superclasses.
 NamingEnumeration<NameClassPair> list(Name name)
           
 NamingEnumeration<NameClassPair> list(String name)
           
 NamingEnumeration<Binding> listBindings(Name name)
           
 NamingEnumeration<Binding> listBindings(String name)
           
 Object lookup(Name name)
           
 Object lookup(String name)
           
 Object lookupLink(Name name)
           
 Object lookupLink(String name)
           
protected  JndiContext newContext()
           
 void rebind(Name name, Object value)
           
 void rebind(String name, Object value)
           
 Object removeFromEnvironment(String propName)
           
 void rename(Name oldName, Name newName)
           
 void rename(String oldName, String newName)
           
 void unbind(Name name)
           
 void unbind(String name)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SEPARATOR

public static final String SEPARATOR
See Also:
Constant Field Values

NAME_PARSER

protected static final NameParser NAME_PARSER

INJETOR

protected static final Injector INJETOR
Constructor Detail

JndiContext

public JndiContext()
            throws Exception
Throws:
Exception

JndiContext

public JndiContext(Hashtable<String,Object> env)
            throws Exception
Throws:
Exception

JndiContext

public JndiContext(Hashtable<String,Object> environment,
                   Map<String,Object> bindings)

JndiContext

public JndiContext(Hashtable<String,Object> environment,
                   Map<String,Object> bindings,
                   String nameInNamespace)

JndiContext

protected JndiContext(JndiContext clone,
                      Hashtable<String,Object> env)

JndiContext

protected JndiContext(JndiContext clone,
                      Hashtable<String,Object> env,
                      String nameInNamespace)
Method Detail

createBindingsMapFromEnvironment

public static Map<String,Object> createBindingsMapFromEnvironment(Hashtable<String,Object> env)
                                                           throws Exception
A helper method to create the JNDI bindings from the input environment properties using $foo.class to point to a class name with $foo.* being properties set on the injected bean

Throws:
Exception

freeze

public void freeze()

internalBind

protected Map<String,Object> internalBind(String name,
                                          Object value)
                                   throws NamingException
internalBind is intended for use only during setup or possibly by suitably synchronized superclasses. It binds every possible lookup into a map in each context. To do this, each context strips off one name segment and if necessary creates a new context for it. Then it asks that context to bind the remaining name. It returns a map containing all the bindings from the next context, plus the context it just created (if it in fact created it). (the names are suitably extended by the segment originally lopped off).

Throws:
NamingException

newContext

protected JndiContext newContext()

addToEnvironment

public Object addToEnvironment(String propName,
                               Object propVal)
                        throws NamingException
Specified by:
addToEnvironment in interface Context
Throws:
NamingException

getEnvironment

public Hashtable<String,Object> getEnvironment()
                                        throws NamingException
Specified by:
getEnvironment in interface Context
Throws:
NamingException

removeFromEnvironment

public Object removeFromEnvironment(String propName)
                             throws NamingException
Specified by:
removeFromEnvironment in interface Context
Throws:
NamingException

lookup

public Object lookup(String name)
              throws NamingException
Specified by:
lookup in interface Context
Throws:
NamingException

lookup

public Object lookup(Name name)
              throws NamingException
Specified by:
lookup in interface Context
Throws:
NamingException

lookupLink

public Object lookupLink(String name)
                  throws NamingException
Specified by:
lookupLink in interface Context
Throws:
NamingException

composeName

public Name composeName(Name name,
                        Name prefix)
                 throws NamingException
Specified by:
composeName in interface Context
Throws:
NamingException

composeName

public String composeName(String name,
                          String prefix)
                   throws NamingException
Specified by:
composeName in interface Context
Throws:
NamingException

list

public NamingEnumeration<NameClassPair> list(String name)
                                      throws NamingException
Specified by:
list in interface Context
Throws:
NamingException

listBindings

public NamingEnumeration<Binding> listBindings(String name)
                                        throws NamingException
Specified by:
listBindings in interface Context
Throws:
NamingException

lookupLink

public Object lookupLink(Name name)
                  throws NamingException
Specified by:
lookupLink in interface Context
Throws:
NamingException

list

public NamingEnumeration<NameClassPair> list(Name name)
                                      throws NamingException
Specified by:
list in interface Context
Throws:
NamingException

listBindings

public NamingEnumeration<Binding> listBindings(Name name)
                                        throws NamingException
Specified by:
listBindings in interface Context
Throws:
NamingException

bind

public void bind(Name name,
                 Object value)
          throws NamingException
Specified by:
bind in interface Context
Throws:
NamingException

bind

public void bind(String name,
                 Object value)
          throws NamingException
Specified by:
bind in interface Context
Throws:
NamingException

close

public void close()
           throws NamingException
Specified by:
close in interface Context
Throws:
NamingException

createSubcontext

public Context createSubcontext(Name name)
                         throws NamingException
Specified by:
createSubcontext in interface Context
Throws:
NamingException

createSubcontext

public Context createSubcontext(String name)
                         throws NamingException
Specified by:
createSubcontext in interface Context
Throws:
NamingException

destroySubcontext

public void destroySubcontext(Name name)
                       throws NamingException
Specified by:
destroySubcontext in interface Context
Throws:
NamingException

destroySubcontext

public void destroySubcontext(String name)
                       throws NamingException
Specified by:
destroySubcontext in interface Context
Throws:
NamingException

getNameInNamespace

public String getNameInNamespace()
                          throws NamingException
Specified by:
getNameInNamespace in interface Context
Throws:
NamingException

getNameParser

public NameParser getNameParser(Name name)
                         throws NamingException
Specified by:
getNameParser in interface Context
Throws:
NamingException

getNameParser

public NameParser getNameParser(String name)
                         throws NamingException
Specified by:
getNameParser in interface Context
Throws:
NamingException

rebind

public void rebind(Name name,
                   Object value)
            throws NamingException
Specified by:
rebind in interface Context
Throws:
NamingException

rebind

public void rebind(String name,
                   Object value)
            throws NamingException
Specified by:
rebind in interface Context
Throws:
NamingException

rename

public void rename(Name oldName,
                   Name newName)
            throws NamingException
Specified by:
rename in interface Context
Throws:
NamingException

rename

public void rename(String oldName,
                   String newName)
            throws NamingException
Specified by:
rename in interface Context
Throws:
NamingException

unbind

public void unbind(Name name)
            throws NamingException
Specified by:
unbind in interface Context
Throws:
NamingException

unbind

public void unbind(String name)
            throws NamingException
Specified by:
unbind in interface Context
Throws:
NamingException

createBean

protected static Object createBean(Class<?> type,
                                   Map<String,Object> properties,
                                   String prefix)
                            throws Exception
Throws:
Exception


Apache CAMEL