com.resilientedge.util.naming
Class AbstractFederatedCtx

java.lang.Object
  |
  +--com.resilientedge.util.naming.AbstractCtx
        |
        +--com.resilientedge.util.naming.AbstractFederatedCtx
All Implemented Interfaces:
javax.naming.Context, ContextAncestors, javax.naming.event.EventContext
Direct Known Subclasses:
FederatedFlatCtx, FederatedHierCtx

public abstract class AbstractFederatedCtx
extends AbstractCtx

Abstract implementation of a federated Context. Federation issues are handled here so that all the derived classes have to do is implement binding and next naming service logic. See the methods

protected abstract Object lookup_internal( Name name )
protected abstract Object lookup_nns( Name name )

TODO: Full testing. Member documentation.

Author:
jgardner

Fields inherited from interface javax.naming.event.EventContext
OBJECT_SCOPE, ONELEVEL_SCOPE, SUBTREE_SCOPE
 
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
protected AbstractFederatedCtx()
           
protected AbstractFederatedCtx(javax.naming.Context parent, java.util.Hashtable env)
           
protected AbstractFederatedCtx(java.util.Hashtable env)
           
 
Method Summary
protected abstract  void bind_internal(javax.naming.Name name, java.lang.Object obj)
           
protected abstract  void bind_nns(javax.naming.Name name, java.lang.Object obj)
           
 void bind(javax.naming.Name name, java.lang.Object bindObj)
           
protected abstract  javax.naming.Context cloneCtx()
           
 javax.naming.Name composeName(javax.naming.Name name, javax.naming.Name prefix)
           
protected abstract  javax.naming.Context createCtx(javax.naming.Context parent, java.lang.String name, java.util.Hashtable env)
           
protected  javax.naming.CannotProceedException fillInCPE(java.lang.Object resolvedObj, javax.naming.Name altName, javax.naming.Name remainingName)
           
protected abstract  javax.naming.NameParser getNameParser_internal(javax.naming.Name name)
           
protected abstract  javax.naming.NameParser getNameParser_nns(javax.naming.Name name)
           
 javax.naming.NameParser getNameParser(javax.naming.Name name)
           
protected static boolean isAllEmpty(javax.naming.Name n)
           
protected abstract  javax.naming.NamingEnumeration list_internal(javax.naming.Name name)
           
protected abstract  javax.naming.NamingEnumeration list_nns(javax.naming.Name name)
           
 javax.naming.NamingEnumeration list(javax.naming.Name name)
           
protected abstract  javax.naming.NamingEnumeration listBindings_internal(javax.naming.Name name)
           
protected abstract  javax.naming.NamingEnumeration listBindings_nns(javax.naming.Name name)
           
 javax.naming.NamingEnumeration listBindings(javax.naming.Name name)
           
protected abstract  java.lang.Object lookup_internal(javax.naming.Name name)
           
protected abstract  java.lang.Object lookup_nns(javax.naming.Name name)
           
 java.lang.Object lookup(javax.naming.Name name)
           
 java.lang.Object lookupLink(javax.naming.Name name)
           
protected  javax.naming.Name[] parseFederatedNameComponents(javax.naming.Name name)
           
protected  void processJunction_nns(javax.naming.Name name)
           
protected abstract  void rebind_internal(javax.naming.Name name, java.lang.Object obj)
           
protected abstract  void rebind_nns(javax.naming.Name name, java.lang.Object obj)
           
 void rebind(javax.naming.Name name, java.lang.Object bindObj)
           
protected abstract  void rename_internal(javax.naming.Name oldname, javax.naming.Name newname)
           
protected abstract  void rename_nns(javax.naming.Name oldname, javax.naming.Name newname)
           
 void rename(javax.naming.Name oldname, javax.naming.Name newname)
           
protected  java.lang.Object resolveIntermediate_nns(javax.naming.Name name, javax.naming.Name rest)
           
protected  java.lang.Object resolveIntermediate_nns(javax.naming.Name name, javax.naming.Name rest, javax.naming.Name newName)
           
protected abstract  void unbind_internal(javax.naming.Name name)
           
protected abstract  void unbind_nns(javax.naming.Name name)
           
 void unbind(javax.naming.Name name)
           
 
Methods inherited from class com.resilientedge.util.naming.AbstractCtx
addNamingListener, addNamingListener, addToEnvironment, bind, close, composeName, createSubcontext, createSubcontext, destroySubcontext, destroySubcontext, fireObjectChangeEvent, getEnvironment, getNameInNamespace, getNameParser, getNameParser, getParentContext, getRootContext, list, listBindings, lookup, lookupLink, rebind, removeFromEnvironment, removeNamingListener, rename, setParentContext, targetMustExist, unbind
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractFederatedCtx

protected AbstractFederatedCtx()

AbstractFederatedCtx

protected AbstractFederatedCtx(java.util.Hashtable env)
Parameters:
env - Parameter Description

AbstractFederatedCtx

protected AbstractFederatedCtx(javax.naming.Context parent,
                               java.util.Hashtable env)
Parameters:
parent - Parameter Description
env - Parameter Description
Method Detail

getNameParser

public javax.naming.NameParser getNameParser(javax.naming.Name name)
                                      throws javax.naming.NamingException
Overrides:
getNameParser in class AbstractCtx
Parameters:
name - Parameter Description
Returns:
The NameParser value
Throws:
javax.naming.NamingException - Exception Description

lookup

public java.lang.Object lookup(javax.naming.Name name)
                        throws javax.naming.NamingException
Parameters:
name - Parameter Description
Returns:
Returned Value Description
Throws:
javax.naming.NamingException - Exception Description

bind

public void bind(javax.naming.Name name,
                 java.lang.Object bindObj)
          throws javax.naming.NamingException
Parameters:
name - Parameter Description
bindObj - Parameter Description
Throws:
javax.naming.NamingException - Exception Description

rebind

public void rebind(javax.naming.Name name,
                   java.lang.Object bindObj)
            throws javax.naming.NamingException
Parameters:
name - Parameter Description
bindObj - Parameter Description
Throws:
javax.naming.NamingException - Exception Description

unbind

public void unbind(javax.naming.Name name)
            throws javax.naming.NamingException
Parameters:
name - Parameter Description
Throws:
javax.naming.NamingException - Exception Description

rename

public void rename(javax.naming.Name oldname,
                   javax.naming.Name newname)
            throws javax.naming.NamingException
Parameters:
oldname - Parameter Description
newname - Parameter Description
Throws:
javax.naming.NamingException - Exception Description

list

public javax.naming.NamingEnumeration list(javax.naming.Name name)
                                    throws javax.naming.NamingException
Parameters:
name - Parameter Description
Returns:
Returned Value Description
Throws:
javax.naming.NamingException - Exception Description

listBindings

public javax.naming.NamingEnumeration listBindings(javax.naming.Name name)
                                            throws javax.naming.NamingException
Parameters:
name - Parameter Description
Returns:
Returned Value Description
Throws:
javax.naming.NamingException - Exception Description

lookupLink

public java.lang.Object lookupLink(javax.naming.Name name)
                            throws javax.naming.NamingException
Parameters:
name - Parameter Description
Returns:
Returned Value Description
Throws:
javax.naming.NamingException - Exception Description

composeName

public javax.naming.Name composeName(javax.naming.Name name,
                                     javax.naming.Name prefix)
                              throws javax.naming.NamingException
Overrides:
composeName in class AbstractCtx
Parameters:
name - Parameter Description
prefix - Parameter Description
Returns:
Returned Value Description
Throws:
javax.naming.NamingException - Exception Description

getNameParser_internal

protected abstract javax.naming.NameParser getNameParser_internal(javax.naming.Name name)
                                                           throws javax.naming.NamingException
Parameters:
name - Parameter Description
Returns:
The NameParser_internal value
Throws:
javax.naming.NamingException - Exception Description

getNameParser_nns

protected abstract javax.naming.NameParser getNameParser_nns(javax.naming.Name name)
                                                      throws javax.naming.NamingException
Parameters:
name - Parameter Description
Returns:
The NameParser_nns value
Throws:
javax.naming.NamingException - Exception Description

lookup_internal

protected abstract java.lang.Object lookup_internal(javax.naming.Name name)
                                             throws javax.naming.NamingException
Parameters:
name - Parameter Description
Returns:
Returned Value Description
Throws:
javax.naming.NamingException - Exception Description

lookup_nns

protected abstract java.lang.Object lookup_nns(javax.naming.Name name)
                                        throws javax.naming.NamingException
Parameters:
name - Parameter Description
Returns:
Returned Value Description
Throws:
javax.naming.NamingException - Exception Description

bind_internal

protected abstract void bind_internal(javax.naming.Name name,
                                      java.lang.Object obj)
                               throws javax.naming.NamingException
Parameters:
name - Parameter Description
obj - Parameter Description
Throws:
javax.naming.NamingException - Exception Description

bind_nns

protected abstract void bind_nns(javax.naming.Name name,
                                 java.lang.Object obj)
                          throws javax.naming.NamingException
Parameters:
name - Parameter Description
obj - Parameter Description
Throws:
javax.naming.NamingException - Exception Description

rebind_internal

protected abstract void rebind_internal(javax.naming.Name name,
                                        java.lang.Object obj)
                                 throws javax.naming.NamingException
Parameters:
name - Parameter Description
obj - Parameter Description
Throws:
javax.naming.NamingException - Exception Description

rebind_nns

protected abstract void rebind_nns(javax.naming.Name name,
                                   java.lang.Object obj)
                            throws javax.naming.NamingException
Parameters:
name - Parameter Description
obj - Parameter Description
Throws:
javax.naming.NamingException - Exception Description

unbind_internal

protected abstract void unbind_internal(javax.naming.Name name)
                                 throws javax.naming.NamingException
Parameters:
name - Parameter Description
Throws:
javax.naming.NamingException - Exception Description

unbind_nns

protected abstract void unbind_nns(javax.naming.Name name)
                            throws javax.naming.NamingException
Parameters:
name - Parameter Description
Throws:
javax.naming.NamingException - Exception Description

rename_internal

protected abstract void rename_internal(javax.naming.Name oldname,
                                        javax.naming.Name newname)
                                 throws javax.naming.NamingException
Parameters:
oldname - Parameter Description
newname - Parameter Description
Throws:
javax.naming.NamingException - Exception Description

rename_nns

protected abstract void rename_nns(javax.naming.Name oldname,
                                   javax.naming.Name newname)
                            throws javax.naming.NamingException
Parameters:
oldname - Parameter Description
newname - Parameter Description
Throws:
javax.naming.NamingException - Exception Description

list_internal

protected abstract javax.naming.NamingEnumeration list_internal(javax.naming.Name name)
                                                         throws javax.naming.NamingException
Parameters:
name - Parameter Description
Returns:
Returned Value Description
Throws:
javax.naming.NamingException - Exception Description

list_nns

protected abstract javax.naming.NamingEnumeration list_nns(javax.naming.Name name)
                                                    throws javax.naming.NamingException
Parameters:
name - Parameter Description
Returns:
Returned Value Description
Throws:
javax.naming.NamingException - Exception Description

listBindings_internal

protected abstract javax.naming.NamingEnumeration listBindings_internal(javax.naming.Name name)
                                                                 throws javax.naming.NamingException
Parameters:
name - Parameter Description
Returns:
Returned Value Description
Throws:
javax.naming.NamingException - Exception Description

listBindings_nns

protected abstract javax.naming.NamingEnumeration listBindings_nns(javax.naming.Name name)
                                                            throws javax.naming.NamingException
Parameters:
name - Parameter Description
Returns:
Returned Value Description
Throws:
javax.naming.NamingException - Exception Description

resolveIntermediate_nns

protected java.lang.Object resolveIntermediate_nns(javax.naming.Name name,
                                                   javax.naming.Name rest)
                                            throws javax.naming.NamingException
Parameters:
name - Parameter Description
rest - Parameter Description
Returns:
Returned Value Description
Throws:
javax.naming.NamingException - Exception Description

resolveIntermediate_nns

protected java.lang.Object resolveIntermediate_nns(javax.naming.Name name,
                                                   javax.naming.Name rest,
                                                   javax.naming.Name newName)
                                            throws javax.naming.NamingException
Parameters:
name - Parameter Description
rest - Parameter Description
newName - Parameter Description
Returns:
Returned Value Description
Throws:
javax.naming.NamingException - Exception Description

processJunction_nns

protected void processJunction_nns(javax.naming.Name name)
                            throws javax.naming.NamingException
Parameters:
name - Parameter Description
Throws:
javax.naming.NamingException - Exception Description

fillInCPE

protected javax.naming.CannotProceedException fillInCPE(java.lang.Object resolvedObj,
                                                        javax.naming.Name altName,
                                                        javax.naming.Name remainingName)
                                                 throws javax.naming.NamingException
Parameters:
resolvedObj - Parameter Description
altName - Parameter Description
remainingName - Parameter Description
Returns:
Returned Value Description
Throws:
javax.naming.NamingException - Exception Description

createCtx

protected abstract javax.naming.Context createCtx(javax.naming.Context parent,
                                                  java.lang.String name,
                                                  java.util.Hashtable env)
                                           throws javax.naming.NamingException
Parameters:
parent - Parameter Description
name - Parameter Description
env - Parameter Description
Returns:
Returned Value Description
Throws:
javax.naming.NamingException - Exception Description

cloneCtx

protected abstract javax.naming.Context cloneCtx()
                                          throws javax.naming.NamingException
Returns:
Returned Value Description
Throws:
javax.naming.NamingException - Exception Description

parseFederatedNameComponents

protected javax.naming.Name[] parseFederatedNameComponents(javax.naming.Name name)
                                                    throws javax.naming.NamingException
Parameters:
name - Parameter Description
Returns:
Returned Value Description
Throws:
javax.naming.NamingException - Exception Description

isAllEmpty

protected static boolean isAllEmpty(javax.naming.Name n)
Parameters:
n - Parameter Description
Returns:
The AllEmpty value


Copyright © 2001 Resilient Edge, Inc. All Rights Reserved.