|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.mozilla.javascript.VMBridge
public abstract class VMBridge
Constructor Summary | |
---|---|
VMBridge()
|
Method Summary | |
---|---|
protected abstract Context |
getContext(Object contextHelper)
Get Context instance associated with the current thread
or null if none. |
protected abstract ClassLoader |
getCurrentThreadClassLoader()
Return the ClassLoader instance associated with the current thread. |
protected Object |
getInterfaceProxyHelper(ContextFactory cf,
Class<?>[] interfaces)
Create helper object to create later proxies implementing the specified interfaces later. |
Iterator<?> |
getJavaIterator(Context cx,
Scriptable scope,
Object obj)
If "obj" is a java.util.Iterator or a java.lang.Iterable, return a wrapping as a JavaScript Iterator. |
protected abstract Object |
getThreadContextHelper()
Return a helper object to optimize Context access. |
protected abstract boolean |
isVarArgs(Member member)
Returns whether or not a given member (method or constructor) has variable arguments. |
protected Object |
newInterfaceProxy(Object proxyHelper,
ContextFactory cf,
InterfaceAdapter adapter,
Object target,
Scriptable topScope)
Create proxy object for InterfaceAdapter . |
protected abstract void |
setContext(Object contextHelper,
Context cx)
Associate Context instance with the current thread or remove
the current association if cx is null. |
protected abstract boolean |
tryToMakeAccessible(Object accessibleObject)
In many JVMSs, public methods in private classes are not accessible by default (Sun Bug #4071593). |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public VMBridge()
Method Detail |
---|
protected abstract Object getThreadContextHelper()
Context
access.
The runtime will pass the resulting helper object to the subsequent
calls to getContext(Object contextHelper)
and
setContext(Object contextHelper, Context cx)
methods.
In this way the implementation can use the helper to cache
information about current thread to make Context
access faster.
protected abstract Context getContext(Object contextHelper)
Context
instance associated with the current thread
or null if none.
contextHelper
- The result of getThreadContextHelper()
called from the current thread.protected abstract void setContext(Object contextHelper, Context cx)
Context
instance with the current thread or remove
the current association if cx is null.
contextHelper
- The result of getThreadContextHelper()
called from the current thread.protected abstract ClassLoader getCurrentThreadClassLoader()
protected abstract boolean tryToMakeAccessible(Object accessibleObject)
protected Object getInterfaceProxyHelper(ContextFactory cf, Class<?>[] interfaces)
return java.lang.reflect.Proxy.getProxyClass(..., interfaces). getConstructor(new Class[] { java.lang.reflect.InvocationHandler.class });
interfaces
- Array with one or more interface class objects.protected Object newInterfaceProxy(Object proxyHelper, ContextFactory cf, InterfaceAdapter adapter, Object target, Scriptable topScope)
InterfaceAdapter
. The proxy should call
InterfaceAdapter.invoke(ContextFactory cf,
Object target,
Scriptable topScope,
Method method,
Object[] args)
as implementation of interface methods associated with
proxyHelper.
proxyHelper
- The result of the previous call to
getInterfaceProxyHelper(ContextFactory, Class[])
.protected abstract boolean isVarArgs(Member member)
public Iterator<?> getJavaIterator(Context cx, Scriptable scope, Object obj)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |