org.objectweb.jeremie.libs.services.registry.jndi.jrmi
Class jrmiURLContext

java.lang.Object
  extended byorg.objectweb.jeremie.libs.services.registry.jndi.jrmi.jrmiURLContext
All Implemented Interfaces:
javax.naming.Context

public class jrmiURLContext
extends java.lang.Object
implements javax.naming.Context

Provides an implementation of a JNDI URL context for the Jeremie registry.

The allowed URL syntax for accessing the Jeremie registry is: jrmi://[host][:port][/[name]] or jrmi:[/][name]


Field Summary
 
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
jrmiURLContext(java.util.Hashtable env)
          Creates a Jeremie registry URL context with the given environment.
 
Method Summary
 java.lang.Object addToEnvironment(java.lang.String propName, java.lang.Object propVal)
          Sets the value of a property in the current URL context's environment.
 void bind(javax.naming.Name name, java.lang.Object obj)
          Binds the given object under the name and in the Jeremie registry indicated by the given URL name.
 void bind(java.lang.String name, java.lang.Object obj)
          Binds the given object under the name and in the Jeremie registry indicated by the given URL string.
 void close()
          Closes this URL context.
 javax.naming.Name composeName(javax.naming.Name name, javax.naming.Name prefix)
          Composes two names, one being relative to the current context, the other being the name of the current context relative to one of its ancestors.
 java.lang.String composeName(java.lang.String name, java.lang.String prefix)
          Composes two stringified names, one being relative to the current context, the other being the stringified name of the current context relative to one of its ancestors.
 javax.naming.Context createSubcontext(javax.naming.Name name)
          Subcontexts are not supported by Jeremie registry URL contexts.
 javax.naming.Context createSubcontext(java.lang.String name)
          Subcontexts are not supported by Jeremie registry URL contexts.
 void destroySubcontext(javax.naming.Name name)
          Subcontexts are not supported by Jeremie registry URL contexts.
 void destroySubcontext(java.lang.String name)
          Subcontexts are not supported by Jeremie registry URL contexts.
 java.util.Hashtable getEnvironment()
          Returns the environment of the current URL context.
 java.lang.String getNameInNamespace()
          Retrieves the full name of the current context within its own namespace, in other words, the empty string "".
 javax.naming.NameParser getNameParser(javax.naming.Name name)
          Retrieves the name parser of the Jeremie registry context indicated by the given URL name.
 javax.naming.NameParser getNameParser(java.lang.String name)
          Retrieves the name parser of the Jeremie registry context indicated by the given URL string.
 javax.naming.NamingEnumeration list(javax.naming.Name name)
          Enumerates the names and the class names of the objects that they are bound to in the Jeremie registry indicated by the given URL name.
 javax.naming.NamingEnumeration list(java.lang.String name)
          Enumerates the names and the class names of the objects that they are bound to in the Jeremie registry indicated by the given URL string.
 javax.naming.NamingEnumeration listBindings(javax.naming.Name name)
          Enumerates the names and objects that they are bound to in the Jeremie registry indicated by the given URL name.
 javax.naming.NamingEnumeration listBindings(java.lang.String name)
          Enumerates the names and objects that they are bound to in the Jeremie registry indicated by the given URL string.
 java.lang.Object lookup(javax.naming.Name name)
          Retrieves the object bound under the name and in the Jeremie registry indicated by the given URL name.
 java.lang.Object lookup(java.lang.String name)
          Retrieves the object bound under the name and in the Jeremie registry indicated by the given URL string.
 java.lang.Object lookupLink(javax.naming.Name name)
          Links are not treated specially by Jeremie registry URL contexts.
 java.lang.Object lookupLink(java.lang.String name)
          Links are not treated specially by Jeremie registry URL contexts.
 void rebind(javax.naming.Name name, java.lang.Object obj)
          Rebinds the given object under the name and in the Jeremie registry indicated by the given URL name.
 void rebind(java.lang.String name, java.lang.Object obj)
          Rebinds the given object under the name and in the Jeremie registry indicated by the given URL string.
 java.lang.Object removeFromEnvironment(java.lang.String propName)
          Undefines the value of a property in the current URL context's environment.
 void rename(javax.naming.Name oldname, javax.naming.Name newname)
          Renames a name in a Jeremie registry as indicated by the given URL names.
 void rename(java.lang.String oldname, java.lang.String newname)
          Renames a name in a Jeremie registry as indicated by the given URL strings.
 void unbind(javax.naming.Name name)
          Unbinds a name from a Jeremie registry as indicated by the given URL name.
 void unbind(java.lang.String name)
          Unbinds a name from a Jeremie registry as indicated by the given URL string.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

jrmiURLContext

public jrmiURLContext(java.util.Hashtable env)
               throws javax.naming.NamingException
Creates a Jeremie registry URL context with the given environment.

Parameters:
env - a hashtable representing the environment.
Method Detail

lookup

public java.lang.Object lookup(javax.naming.Name name)
                        throws javax.naming.NamingException
Retrieves the object bound under the name and in the Jeremie registry indicated by the given URL name.

Specified by:
lookup in interface javax.naming.Context
Parameters:
name - the URL of the registry location and the name of the object to be retrieved.
Returns:
the object bound to the given name in the given registry.
Throws:
javax.naming.NamingException - if something goes wrong.

lookup

public java.lang.Object lookup(java.lang.String name)
                        throws javax.naming.NamingException
Retrieves the object bound under the name and in the Jeremie registry indicated by the given URL string.

Specified by:
lookup in interface javax.naming.Context
Parameters:
name - the URL of the registry location and the name of the object to be retrieved.
Returns:
the object bound to the given name in the given registry.
Throws:
javax.naming.NamingException - if something goes wrong.

bind

public void bind(javax.naming.Name name,
                 java.lang.Object obj)
          throws javax.naming.NamingException
Binds the given object under the name and in the Jeremie registry indicated by the given URL name.

Specified by:
bind in interface javax.naming.Context
Parameters:
name - the URL of the registry location and the name to be bound;
obj - the object to bind.
Throws:
javax.naming.NamingException - if something goes wrong.

bind

public void bind(java.lang.String name,
                 java.lang.Object obj)
          throws javax.naming.NamingException
Binds the given object under the name and in the Jeremie registry indicated by the given URL string.

Specified by:
bind in interface javax.naming.Context
Parameters:
name - the URL of the registry location and the name to be bound;
obj - the object to bind.
Throws:
javax.naming.NamingException - if something goes wrong.

rebind

public void rebind(javax.naming.Name name,
                   java.lang.Object obj)
            throws javax.naming.NamingException
Rebinds the given object under the name and in the Jeremie registry indicated by the given URL name.

Specified by:
rebind in interface javax.naming.Context
Parameters:
name - the URL of the registry location and the name to be rebound;
obj - the object to bind.
Throws:
javax.naming.NamingException - if something goes wrong.

rebind

public void rebind(java.lang.String name,
                   java.lang.Object obj)
            throws javax.naming.NamingException
Rebinds the given object under the name and in the Jeremie registry indicated by the given URL string.

Specified by:
rebind in interface javax.naming.Context
Parameters:
name - the URL of the registry location and the name to be rebound;
obj - the object to bind.
Throws:
javax.naming.NamingException - if something goes wrong.

unbind

public void unbind(javax.naming.Name name)
            throws javax.naming.NamingException
Unbinds a name from a Jeremie registry as indicated by the given URL name.

Specified by:
unbind in interface javax.naming.Context
Parameters:
name - the URL of the registry location and the name to be unbound.
Throws:
javax.naming.NamingException - if something goes wrong.

unbind

public void unbind(java.lang.String name)
            throws javax.naming.NamingException
Unbinds a name from a Jeremie registry as indicated by the given URL string.

Specified by:
unbind in interface javax.naming.Context
Parameters:
name - the URL of the registry location and the name to be unbound.
Throws:
javax.naming.NamingException - if something goes wrong.

rename

public void rename(javax.naming.Name oldname,
                   javax.naming.Name newname)
            throws javax.naming.NamingException
Renames a name in a Jeremie registry as indicated by the given URL names.

Specified by:
rename in interface javax.naming.Context
Throws:
javax.naming.NamingException - if something goes wrong.

rename

public void rename(java.lang.String oldname,
                   java.lang.String newname)
            throws javax.naming.NamingException
Renames a name in a Jeremie registry as indicated by the given URL strings.

Specified by:
rename in interface javax.naming.Context
Throws:
javax.naming.NamingException - if something goes wrong.

list

public javax.naming.NamingEnumeration list(javax.naming.Name name)
                                    throws javax.naming.NamingException
Enumerates the names and the class names of the objects that they are bound to in the Jeremie registry indicated by the given URL name.

Specified by:
list in interface javax.naming.Context
Parameters:
name - the URL name of the registry to list.
Returns:
an enumeration of the (name, class name) pairs in the registry.
Throws:
javax.naming.NamingException - if something goes wrong.

list

public javax.naming.NamingEnumeration list(java.lang.String name)
                                    throws javax.naming.NamingException
Enumerates the names and the class names of the objects that they are bound to in the Jeremie registry indicated by the given URL string.

Specified by:
list in interface javax.naming.Context
Parameters:
name - the URL string of the registry to list.
Returns:
an enumeration of the (name, class name) pairs in the registry.
Throws:
javax.naming.NamingException - if something goes wrong.

listBindings

public javax.naming.NamingEnumeration listBindings(javax.naming.Name name)
                                            throws javax.naming.NamingException
Enumerates the names and objects that they are bound to in the Jeremie registry indicated by the given URL name.

Specified by:
listBindings in interface javax.naming.Context
Parameters:
name - the URL name of the registry to list.
Returns:
an enumeration of the (name, object) pairs in the registry.
Throws:
javax.naming.NamingException - if something goes wrong.

listBindings

public javax.naming.NamingEnumeration listBindings(java.lang.String name)
                                            throws javax.naming.NamingException
Enumerates the names and objects that they are bound to in the Jeremie registry indicated by the given URL string.

Specified by:
listBindings in interface javax.naming.Context
Parameters:
name - the URL string of the registry to list.
Returns:
an enumeration of the (name, object) pairs in the registry.
Throws:
javax.naming.NamingException - if something goes wrong.

createSubcontext

public javax.naming.Context createSubcontext(javax.naming.Name name)
                                      throws javax.naming.NamingException
Subcontexts are not supported by Jeremie registry URL contexts.

Specified by:
createSubcontext in interface javax.naming.Context
Throws:
javax.naming.OperationNotSupportedException
javax.naming.NamingException

createSubcontext

public javax.naming.Context createSubcontext(java.lang.String name)
                                      throws javax.naming.NamingException
Subcontexts are not supported by Jeremie registry URL contexts.

Specified by:
createSubcontext in interface javax.naming.Context
Throws:
javax.naming.OperationNotSupportedException
javax.naming.NamingException

destroySubcontext

public void destroySubcontext(javax.naming.Name name)
                       throws javax.naming.NamingException
Subcontexts are not supported by Jeremie registry URL contexts.

Specified by:
destroySubcontext in interface javax.naming.Context
Throws:
javax.naming.OperationNotSupportedException
javax.naming.NamingException

destroySubcontext

public void destroySubcontext(java.lang.String name)
                       throws javax.naming.NamingException
Subcontexts are not supported by Jeremie registry URL contexts.

Specified by:
destroySubcontext in interface javax.naming.Context
Throws:
javax.naming.OperationNotSupportedException
javax.naming.NamingException

lookupLink

public java.lang.Object lookupLink(javax.naming.Name name)
                            throws javax.naming.NamingException
Links are not treated specially by Jeremie registry URL contexts. This method does the same as the lookup(Name) method.

Specified by:
lookupLink in interface javax.naming.Context
Parameters:
name - the URL of the registry location and the name of the object to be retrieved.
Returns:
the object bound to the given name in the given registry.
Throws:
javax.naming.NamingException - if something goes wrong.

lookupLink

public java.lang.Object lookupLink(java.lang.String name)
                            throws javax.naming.NamingException
Links are not treated specially by Jeremie registry URL contexts. This method does the same as the lookup(String) method.

Specified by:
lookupLink in interface javax.naming.Context
Parameters:
name - the URL of the registry location and the name of the object to be retrieved.
Returns:
the object bound to the given name in the given registry.
Throws:
javax.naming.NamingException - if something goes wrong.

getNameParser

public javax.naming.NameParser getNameParser(javax.naming.Name name)
                                      throws javax.naming.NamingException
Retrieves the name parser of the Jeremie registry context indicated by the given URL name.

Specified by:
getNameParser in interface javax.naming.Context
Parameters:
name - the URL name of the registry context from which to get the parser.
Returns:
the name parser of the current registry context.
Throws:
javax.naming.NamingException - if something goes wrong.

getNameParser

public javax.naming.NameParser getNameParser(java.lang.String name)
                                      throws javax.naming.NamingException
Retrieves the name parser of the Jeremie registry context indicated by the given URL string.

Specified by:
getNameParser in interface javax.naming.Context
Parameters:
name - the URL string of the registry context from which to get the parser.
Returns:
the name parser of the current registry context.
Throws:
javax.naming.NamingException - if something goes wrong.

composeName

public javax.naming.Name composeName(javax.naming.Name name,
                                     javax.naming.Name prefix)
                              throws javax.naming.NamingException
Composes two names, one being relative to the current context, the other being the name of the current context relative to one of its ancestors.

Specified by:
composeName in interface javax.naming.Context
Parameters:
name - a name relative to this registry context;
prefix - the name of this context relative to one of its ancestors.
Returns:
a composed name.
Throws:
javax.naming.NamingException - if something goes wrong.

composeName

public java.lang.String composeName(java.lang.String name,
                                    java.lang.String prefix)
                             throws javax.naming.NamingException
Composes two stringified names, one being relative to the current context, the other being the stringified name of the current context relative to one of its ancestors.

Specified by:
composeName in interface javax.naming.Context
Parameters:
name - a stringified name relative to this registry context;
prefix - the stringified name of this context relative to one of its ancestors.
Returns:
a composed stringified name.
Throws:
javax.naming.NamingException - if something goes wrong.

getEnvironment

public java.util.Hashtable getEnvironment()
                                   throws javax.naming.NamingException
Returns the environment of the current URL context.

Specified by:
getEnvironment in interface javax.naming.Context
Returns:
the possibly empty environment of this context.
Throws:
javax.naming.NamingException

addToEnvironment

public java.lang.Object addToEnvironment(java.lang.String propName,
                                         java.lang.Object propVal)
                                  throws javax.naming.NamingException
Sets the value of a property in the current URL context's environment. Overwrites any previous value of the property.

Specified by:
addToEnvironment in interface javax.naming.Context
Parameters:
propName - the name of the property;
propVal - the value of the property.
Returns:
the previous value of the property, possibly null.
Throws:
javax.naming.NamingException - if something goes wrong.

removeFromEnvironment

public java.lang.Object removeFromEnvironment(java.lang.String propName)
                                       throws javax.naming.NamingException
Undefines the value of a property in the current URL context's environment.

Specified by:
removeFromEnvironment in interface javax.naming.Context
Parameters:
propName - the name of the property;
Returns:
the previous value of the property, possibly null.
Throws:
javax.naming.NamingException - if something goes wrong.

getNameInNamespace

public java.lang.String getNameInNamespace()
                                    throws javax.naming.NamingException
Retrieves the full name of the current context within its own namespace, in other words, the empty string "".

Specified by:
getNameInNamespace in interface javax.naming.Context
Returns:
the full name of the current context.
Throws:
javax.naming.NamingException - if something goes wrong.

close

public void close()
           throws javax.naming.NamingException
Closes this URL context.

Specified by:
close in interface javax.naming.Context
Throws:
javax.naming.NamingException - if something goes wrong.