org.apache.bsf.debug.util
Class StubTable
java.lang.Object
org.apache.bsf.debug.util.StubTable
- Direct Known Subclasses:
- ClientStubTable, ServerStubTable
- public abstract class StubTable
- extends java.lang.Object
This class provides the resident object table for the
mirrors. A Stub represents a remote JavaScript object
or any remote concept that needs to be identified such
engines or contexts which are not JavaScript objects.
A Stub has a unique identifier allocated on the
server. This is called its oid, for object identifier.
The oid is not only carrying the identity but also the
type of the remote object. Knowing the type is essential
when a Stub has to be created. For instance, it is important
to know if a remote object is just an object or a reified
code as a script or a function.
The oid is a long, the high word is the type (tid), the low word
is the unique identifier (uid). The unique identifier is globally
unique across all types.
This class also acts as the factory for Stub objects.
When a Stub is created, it is remembered in the resident
object table for later rebinding from its uid.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
m_stubs
protected IntHashtable m_stubs
m_con
protected SocketConnection m_con
StubTable
public StubTable(SocketConnection con)
disconnectNotify
public void disconnectNotify()
factory
protected abstract Stub factory(int tid,
int uid)
swizzle
public Stub swizzle(int tid,
int uid)