/** * Binds a new name to the object bound to an old name, and unbinds the old name. Both names are * relative to this context. Any attributes associated with the old name become associated with * the new name. Intermediate contexts of the old name are not changed. * * @param oldName the name of the existing binding; may not be empty * @param newName the name of the new binding; may not be empty * @exception NameAlreadyBoundException if newName is already bound * @exception NamingException if a naming exception is encountered */ @Override public void rename(Name oldName, Name newName) throws NamingException { Object value = lookup(oldName); bind(newName, value); unbind(oldName); }
/** * Unbinds the named object. * * @param name the name to bind; may not be empty * @exception NameNotFoundException if an intermediate context does not exist * @exception NamingException if a naming exception is encountered */ @Override public void unbind(String name) throws NamingException { unbind(new CompositeName(name)); }