javax.naming
Interface Context

All Known Subinterfaces:
DirContext, EventContext, EventDirContext, LdapContext
All Known Implementing Classes:
InitialContext, InitialDirContext, InitialLdapContext

public interface Context


Field Summary
static String APPLET
          Property for the initial context constructor to use when searching for other properties.
static String AUTHORITATIVE
          Property with the authoritativeness of the service requested.
static String BATCHSIZE
          Property with the batch size to use when returning data via the service's protocol.
static String DNS_URL
          Property with the DNS host and domain names to use.
static String INITIAL_CONTEXT_FACTORY
          Property with name of the inital context factory to use
static String LANGUAGE
          Property for specifying the preferred language to use with the service.
static String OBJECT_FACTORIES
          Property with colon-separated list of object factories to use.
static String PROVIDER_URL
          Property with URL specifying configuration for the service provider to use.
static String REFERRAL
          Property defining how referrals encountered by the service provider are to be processed.
static String SECURITY_AUTHENTICATION
          Property specifying the security level to use.
static String SECURITY_CREDENTIALS
          Property specifying the credentials of the principal for authenticating the caller to the service.
static String SECURITY_PRINCIPAL
          Property for the identity of the principal for authenticating the caller to the service.
static String SECURITY_PROTOCOL
          Property specifying the security protocol to use.
static String STATE_FACTORIES
          Property with colon-separated list of state factories to use.
static String URL_PKG_PREFIXES
          Property with colon-separated list of package prefixes to use.
 
Method Summary
 Object addToEnvironment(String propName, Object propVal)
          Add new environment property to the environment of this context.
 void bind(Name name, Object obj)
          Give the specified name for the specified object.
 void bind(String name, Object obj)
          Give the specified name for the specified object.
 void close()
          Releases all resources, associated with this context.
 Name composeName(Name name, Name prefix)
          Composes the name of this context together with another name, related to this context.
 String composeName(String name, String prefix)
          Composes the name of this context together with another name, related to this context.
 Context createSubcontext(Name name)
          Creates the new naming subcontext and binds it to the current (this) context.
 Context createSubcontext(String name)
          Creates the new naming subcontext and binds it to the current (this) context.
 void destroySubcontext(Name name)
          Removes the naming subcontext from this naming context.
 void destroySubcontext(String name)
          Removes the naming subcontext from this naming context.
 Hashtable<?,?> getEnvironment()
          Returns the environment, associated with this naming context.
 String getNameInNamespace()
          Returs the full name of this naming context.
 NameParser getNameParser(Name name)
          Obtains the name parser for parsing the names of the given naming subcontext.
 NameParser getNameParser(String name)
          Obtains the name parser for parsing the names of the given naming subcontext.
 NamingEnumeration<NameClassPair> list(Name name)
          Creates and returns the enumeration over the name bindings that are present the given subcontext.
 NamingEnumeration<NameClassPair> list(String name)
          Creates and returns the enumeration over the name bindings that are present the given subcontext.
 NamingEnumeration<Binding> listBindings(Name name)
          Creates and returns the enumeration over the name - object bindings that are present the given subcontext.
 NamingEnumeration<Binding> listBindings(String name)
          Creates and returns the enumeration over the name - object bindings that are present the given subcontext.
 Object lookup(Name name)
          Gets the previously named object by name.
 Object lookup(String name)
          Gets the previously named object by name.
 Object lookupLink(Name name)
          Retrieves the named object, not following the link of the terminal atomic component of the name.
 Object lookupLink(String name)
          Retrieves the named object, not following the link of the terminal atomic component of the name.
 void rebind(Name name, Object obj)
          Give the specified name for the specified object.
 void rebind(String name, Object obj)
          Give the specified name for the specified object.
 Object removeFromEnvironment(String propName)
          Removes the property with the given name from the environment.
 void rename(Name oldName, Name newName)
          Renames the existing binding, removing the existing and giving the new name for the same object.
 void rename(String oldName, String newName)
          Renames the existing binding, removing the existing and giving the new name for the same object.
 void unbind(Name name)
          Removes the name - object mapping from the current context.
 void unbind(String name)
          Removes the name - object mapping from the current context.
 

Field Detail

INITIAL_CONTEXT_FACTORY

static final String INITIAL_CONTEXT_FACTORY
Property with name of the inital context factory to use

See Also:
Constant Field Values

OBJECT_FACTORIES

static final String OBJECT_FACTORIES
Property with colon-separated list of object factories to use.

See Also:
Constant Field Values

STATE_FACTORIES

static final String STATE_FACTORIES
Property with colon-separated list of state factories to use.

See Also:
Constant Field Values

URL_PKG_PREFIXES

static final String URL_PKG_PREFIXES
Property with colon-separated list of package prefixes to use.

See Also:
Constant Field Values

PROVIDER_URL

static final String PROVIDER_URL
Property with URL specifying configuration for the service provider to use.

See Also:
Constant Field Values

DNS_URL

static final String DNS_URL
Property with the DNS host and domain names to use.

See Also:
Constant Field Values

AUTHORITATIVE

static final String AUTHORITATIVE
Property with the authoritativeness of the service requested.

See Also:
Constant Field Values

BATCHSIZE

static final String BATCHSIZE
Property with the batch size to use when returning data via the service's protocol.

See Also:
Constant Field Values

REFERRAL

static final String REFERRAL
Property defining how referrals encountered by the service provider are to be processed.

See Also:
Constant Field Values

SECURITY_PROTOCOL

static final String SECURITY_PROTOCOL
Property specifying the security protocol to use.

See Also:
Constant Field Values

SECURITY_AUTHENTICATION

static final String SECURITY_AUTHENTICATION
Property specifying the security level to use.

See Also:
Constant Field Values

SECURITY_PRINCIPAL

static final String SECURITY_PRINCIPAL
Property for the identity of the principal for authenticating the caller to the service.

See Also:
Constant Field Values

SECURITY_CREDENTIALS

static final String SECURITY_CREDENTIALS
Property specifying the credentials of the principal for authenticating the caller to the service.

See Also:
Constant Field Values

LANGUAGE

static final String LANGUAGE
Property for specifying the preferred language to use with the service.

See Also:
Constant Field Values

APPLET

static final String APPLET
Property for the initial context constructor to use when searching for other properties.

See Also:
Constant Field Values
Method Detail

bind

void bind(Name name,
          Object obj)
          throws NamingException
Give the specified name for the specified object. The passed name must not be already bound to some other object.

Parameters:
name - the name that will be given to the object (in the scope of this context).
obj - the object being named.
Throws:
NameAlreadyBoundException - if this name is already used to name some object.
InvalidAttributesException - if the object does not supply all required attributes.
NamingException - if the naming operation has failed due other reasons.

bind

void bind(String name,
          Object obj)
          throws NamingException
Give the specified name for the specified object. The passed name must not be already bound to some other object.

Parameters:
name - the name that will be given to the object (in the scope of this context).
obj - the object being named.
Throws:
NameAlreadyBoundException - if this name is already used to name some object.
InvalidAttributesException - if the object does not supply all required attributes.
NamingException - if the naming operation has failed due other reasons.

lookup

Object lookup(Name name)
              throws NamingException
Gets the previously named object by name. If the passed name is empty, the method should return a cloned instance of this naming context.

Parameters:
name - the name of the object being searched in this context
Returns:
the named object
Throws:
NamingException - if the naming fails.

lookup

Object lookup(String name)
              throws NamingException
Gets the previously named object by name. If the passed name is empty, the method should return a cloned instance of this naming context.

Parameters:
name - the name of the object being searched in this context
Returns:
the named object
Throws:
NamingException - if the naming fails.

rebind

void rebind(Name name,
            Object obj)
            throws NamingException
Give the specified name for the specified object. Unlike bind, this method silently replaces the existing binding for this name, if one exists.

Parameters:
name - the name that will be given to the object (in the scope of this context).
obj - the object being named.
Throws:
InvalidAttributesException - if the object does not supply all required attributes.
NamingException - if the naming operation has failed due other reasons.

rebind

void rebind(String name,
            Object obj)
            throws NamingException
Give the specified name for the specified object. Unlike bind, this method silently replaces the existing binding for this name, if one exists.

Parameters:
name - the name that will be given to the object (in the scope of this context).
obj - the object being named.
Throws:
InvalidAttributesException - if the object does not supply all required attributes.
NamingException - if the naming operation has failed due other reasons.

unbind

void unbind(Name name)
            throws NamingException
Removes the name - object mapping from the current context. This method returns without action if the name is not bound to an object in the terminal context, but throws NameNotFoundException if one of the intermadiate contexts does not exist.

Parameters:
name - the name to be removed
Throws:
NameNotFoundException - if one of the intermediate naming contexts does not exist. Will not be thrown if just the terminal binding is missing.
NamingException - if the naming operation has failed due other reasons.

unbind

void unbind(String name)
            throws NamingException
Removes the name - object mapping from the current context. This method returns without action if the name is not bound to an object in the terminal context, but throws NameNotFoundException if one of the intermadiate contexts does not exist.

Parameters:
name - the name to be removed
Throws:
NameNotFoundException - if one of the intermediate naming contexts does not exist. Will not be thrown if just the terminal binding is missing.
NamingException - if the naming operation has failed due other reasons.

rename

void rename(Name oldName,
            Name newName)
            throws NamingException
Renames the existing binding, removing the existing and giving the new name for the same object.

Parameters:
oldName - the existing name of the known object
newName - the new name of the same object
Throws:
NameNotFoundException - if the oldName is unknown for this context
NamingException - if the naming operation has failed due other reasons.

rename

void rename(String oldName,
            String newName)
            throws NamingException
Renames the existing binding, removing the existing and giving the new name for the same object.

Parameters:
oldName - the existing name of the known object
newName - the new name of the same object
Throws:
NameNotFoundException - if the oldName is unknown for this context
NamingException - if the naming operation has failed due other reasons.

list

NamingEnumeration<NameClassPair> list(Name name)
                                      throws NamingException
Creates and returns the enumeration over the name bindings that are present the given subcontext. The enumeration elements have the type of NameClassPair, providing also information about the class of the bound object. The behaviour in the case if the bindings are added or removed later is not defined. The contents of the subcontexts are not included.

Parameters:
name - the name of the subcontext
Returns:
the enumeration over the names, known for the given subcontext.
Throws:
NamingException

list

NamingEnumeration<NameClassPair> list(String name)
                                      throws NamingException
Creates and returns the enumeration over the name bindings that are present the given subcontext. The enumeration elements have the type of NameClassPair, providing also information about the class of the bound object. The behaviour in the case if the bindings are added or removed later is not defined. The contents of the subcontexts are not included.

Parameters:
name - the name of the subcontext
Returns:
the enumeration over the names, known for the given subcontext.
Throws:
NamingException

listBindings

NamingEnumeration<Binding> listBindings(Name name)
                                        throws NamingException
Creates and returns the enumeration over the name - object bindings that are present the given subcontext. The enumeration elements have the type of Binding, providing also information about the class of the bound object. The behaviour in the case if the bindings are added or removed later is not defined. The contents of the subcontexts are not included.

Parameters:
name - the name of the subcontext
Returns:
the enumeration over the names, known for the given subcontext.
Throws:
NamingException

listBindings

NamingEnumeration<Binding> listBindings(String name)
                                        throws NamingException
Creates and returns the enumeration over the name - object bindings that are present the given subcontext. The enumeration elements have the type of Binding, providing also information about the class of the bound object. The behaviour in the case if the bindings are added or removed later is not defined. The contents of the subcontexts are not included.

Parameters:
name - the name of the subcontext
Returns:
the enumeration over the names, known for the given subcontext.
Throws:
NamingException

createSubcontext

Context createSubcontext(Name name)
                         throws NamingException
Creates the new naming subcontext and binds it to the current (this) context.

Parameters:
name - the name of the new context being created
Returns:
the newly created context, bound to the instance of the context on that the method has been called
Throws:
NameAlreadyBoundException - if this name is already bound
InvalidAttributesException - if the creation of the new context requires the missing mandatory attributes
NamingException

createSubcontext

Context createSubcontext(String name)
                         throws NamingException
Creates the new naming subcontext and binds it to the current (this) context.

Parameters:
name - the name of the new context being created
Returns:
the newly created context, bound to the instance of the context on that the method has been called
Throws:
NameAlreadyBoundException - if this name is already bound
InvalidAttributesException - if the creation of the new context requires the missing mandatory attributes
NamingException

destroySubcontext

void destroySubcontext(Name name)
                       throws NamingException
Removes the naming subcontext from this naming context. Returns without action if such subcontext does not exist. The context being destroyed must be empty.

Parameters:
name - the name of the subcontext beig removed.
Throws:
ContextNotEmptyException - if the named context is not empty.
NamingException

destroySubcontext

void destroySubcontext(String name)
                       throws NamingException
Removes the naming subcontext from this naming context. Returns without action if such subcontext does not exist. The context being destroyed must be empty.

Parameters:
name - the name of the subcontext beig removed.
Throws:
ContextNotEmptyException - if the named context is not empty.
NamingException

lookupLink

Object lookupLink(Name name)
                  throws NamingException
Retrieves the named object, not following the link of the terminal atomic component of the name. If the object, named by the passed name, is not a link, returns that object itself. The intermediate links, if present, are followed.

Parameters:
name - the name of the object that may be a link, leading to another object.
Returns:
the named object, not following the terminal link (if present).
Throws:
NamingException

lookupLink

Object lookupLink(String name)
                  throws NamingException
Retrieves the named object, not following the link of the terminal atomic component of the name. If the object, named by the passed name, is not a link, returns that object itself. The intermediate links, if present, are followed.

Parameters:
name - the name of the object that may be a link, leading to another object.
Returns:
the named object, not following the terminal link (if present).
Throws:
NamingException

getNameParser

NameParser getNameParser(Name name)
                         throws NamingException
Obtains the name parser for parsing the names of the given naming subcontext.

Parameters:
name - the name of the subcontext for that the parser must be obtained
Returns:
the parser to parse the names of that context
Throws:
NamingException

getNameParser

NameParser getNameParser(String name)
                         throws NamingException
Obtains the name parser for parsing the names of the given naming subcontext.

Parameters:
name - the name of the subcontext for that the parser must be obtained
Returns:
the parser to parse the names of that context
Throws:
NamingException

composeName

Name composeName(Name name,
                 Name prefix)
                 throws NamingException
Composes the name of this context together with another name, related to this context.

Parameters:
name - a name, defined in the scope of this context
prefix - a name of this context itself, defined in the scope of some ancestor
Returns:
the name of the same object as named by the first parameter, but related to the context of the specified ancestor.
Throws:
NamingException

composeName

String composeName(String name,
                   String prefix)
                   throws NamingException
Composes the name of this context together with another name, related to this context.

Parameters:
name - a name, defined in the scope of this context
prefix - a name of this context itself, defined in the scope of some ancestor
Returns:
the name of the same object as named by the first parameter, but related to the context of the specified ancestor.
Throws:
NamingException

addToEnvironment

Object addToEnvironment(String propName,
                        Object propVal)
                        throws NamingException
Add new environment property to the environment of this context. Both name and value of the new property must not be null. If the property is already defined, is current value is replaced by the propVal.

Parameters:
propName - the name of the new property
propVal - the value of the new property
Returns:
the previous value of this property or null if the property has not been previously defined
Throws:
NamingException

removeFromEnvironment

Object removeFromEnvironment(String propName)
                             throws NamingException
Removes the property with the given name from the environment. Returns without action if this property is not defined.

Parameters:
propName - the name of the property being removed.
Returns:
the value of the property that has been removed or null if the property was not defined.
Throws:
NamingException

getEnvironment

Hashtable<?,?> getEnvironment()
                              throws NamingException
Returns the environment, associated with this naming context. The returned table should never be modified by the caller. Use addToEnvironment(java.lang.String, java.lang.Object) and removeFromEnvironment(java.lang.String) to modify the environement, if needed.

Returns:
the table, representing the environment of this context
Throws:
NamingException

close

void close()
           throws NamingException
Releases all resources, associated with this context. The close() method can be called several times, but after it has been once invoked, it is not allowed to call any other method of this context,

Throws:
NamingException

getNameInNamespace

String getNameInNamespace()
                          throws NamingException
Returs the full name of this naming context. The returned string is not a JNDI composite name and should not be passed directly to the methods of the naming context.

Returns:
the full name of this naming context, in its own namespace.
Throws:
OperationNotSupportedException - if the naming system, represented by this context, does not support the notation of the full name.
NamingException