org.objectweb.carol.jndi.spi
Class IRMIContext

java.lang.Object
  extended byorg.objectweb.carol.jndi.spi.AbsContext
      extended byorg.objectweb.carol.jndi.spi.IRMIContext
All Implemented Interfaces:
javax.naming.Context

public class IRMIContext
extends AbsContext
implements javax.naming.Context

Author:
Rafael H. Schloming <rhs@mit.edu>

Nested Class Summary
 
Nested classes inherited from class org.objectweb.carol.jndi.spi.AbsContext
AbsContext.WrappedEnumeration
 
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
IRMIContext(javax.naming.Context context)
          Constructs a IRMI Wrapper context
 
Method Summary
protected  int getObjectPort()
          Get the object port to use (0 by default, declare this method in a subclass if you want to change value)
protected  java.lang.Object unwrapObject(java.lang.Object o, javax.naming.Name name)
          If this object is a reference wrapper return the reference If this object is a resource wrapper return the resource
protected  java.lang.Object wrapObject(java.lang.Object o, javax.naming.Name name, boolean replace)
          Wrap an Object : If the object is a reference wrap it into a Reference Wrapper Object here the good way is to contact the carol configuration to get the portable remote object
 
Methods inherited from class org.objectweb.carol.jndi.spi.AbsContext
addToEnvironment, addToExported, bind, bind, close, composeName, composeName, createSubcontext, createSubcontext, decode, defaultUnwrapObject, destroySubcontext, destroySubcontext, encode, getEnvironment, getNameInNamespace, getNameParser, getNameParser, getWrappedContext, list, list, listBindings, listBindings, lookup, lookup, lookupLink, lookupLink, rebind, rebind, removeFromEnvironment, rename, rename, unbind, unbind
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface javax.naming.Context
addToEnvironment, bind, bind, close, composeName, composeName, createSubcontext, createSubcontext, destroySubcontext, destroySubcontext, getEnvironment, getNameInNamespace, getNameParser, getNameParser, list, list, listBindings, listBindings, lookup, lookup, lookupLink, lookupLink, rebind, rebind, removeFromEnvironment, rename, rename, unbind, unbind
 

Constructor Detail

IRMIContext

public IRMIContext(javax.naming.Context context)
Constructs a IRMI Wrapper context

Parameters:
context - the inital context
Method Detail

getObjectPort

protected int getObjectPort()
Description copied from class: AbsContext
Get the object port to use (0 by default, declare this method in a subclass if you want to change value)

Overrides:
getObjectPort in class AbsContext
Returns:
the object port used for exporting object

unwrapObject

protected java.lang.Object unwrapObject(java.lang.Object o,
                                        javax.naming.Name name)
                                 throws javax.naming.NamingException
If this object is a reference wrapper return the reference If this object is a resource wrapper return the resource

Specified by:
unwrapObject in class AbsContext
Parameters:
o - the object to resolve
name - name of the object to unwrap
Returns:
the unwrapped object
Throws:
javax.naming.NamingException - if the object cannot be unwraped

wrapObject

protected java.lang.Object wrapObject(java.lang.Object o,
                                      javax.naming.Name name,
                                      boolean replace)
                               throws javax.naming.NamingException
Wrap an Object : If the object is a reference wrap it into a Reference Wrapper Object here the good way is to contact the carol configuration to get the portable remote object

Specified by:
wrapObject in class AbsContext
Parameters:
o - the object to encode
name - of the object
replace - if the object need to be replaced
Returns:
a Remote JNDIRemoteReference Object if o is a resource o if else
Throws:
javax.naming.NamingException - if object cannot be wrapped