org.gjt.sp.jedit.bsh
Class XThis

java.lang.Object
  extended by org.gjt.sp.jedit.bsh.This
      extended by org.gjt.sp.jedit.bsh.XThis
All Implemented Interfaces:
java.io.Serializable, java.lang.Runnable

public class XThis
extends This

XThis is a dynamically loaded extension which extends This.java and adds support for the generalized interface proxy mechanism introduced in JDK1.3. XThis allows bsh scripted objects to implement arbitrary interfaces (be arbitrary event listener types). Note: This module relies on new features of JDK1.3 and will not compile with JDK1.2 or lower. For those environments simply do not compile this class. Eventually XThis should become simply This, but for backward compatability we will maintain This without requiring support for the proxy mechanism. XThis stands for "eXtended This" (I had to call it something).

See Also:
JThis See also JThis with explicit JFC support for compatability., This, Serialized Form

Constructor Summary
XThis(NameSpace namespace, Interpreter declaringInterp)
           
 
Method Summary
 java.lang.Object getInterface(java.lang.Class clas)
          Get dynamic proxy for interface, caching those it creates.
 java.lang.Object getInterface(java.lang.Class[] ca)
          Get dynamic proxy for interface, caching those it creates.
 java.lang.String toString()
           
 
Methods inherited from class org.gjt.sp.jedit.bsh.This
bind, getNameSpace, invokeMethod, invokeMethod, run
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

XThis

public XThis(NameSpace namespace,
             Interpreter declaringInterp)
Method Detail

toString

public java.lang.String toString()
Overrides:
toString in class This

getInterface

public java.lang.Object getInterface(java.lang.Class clas)
Get dynamic proxy for interface, caching those it creates.

Overrides:
getInterface in class This

getInterface

public java.lang.Object getInterface(java.lang.Class[] ca)
Get dynamic proxy for interface, caching those it creates.

Overrides:
getInterface in class This