org.concord.util.script
Class Script

java.lang.Object
  |
  +--org.concord.util.script.ScriptObject
        |
        +--org.concord.util.script.Script
All Implemented Interfaces:
java.beans.BeanInfo, org.mozilla.javascript.debug.Debugger

public class Script
extends ScriptObject
implements org.mozilla.javascript.debug.Debugger


Inner Class Summary
 class Script.ScriptSecuritySupport
           
 
Field Summary
protected  java.lang.Object baseObject
           
protected  java.util.Hashtable baseTable
           
protected  org.mozilla.javascript.Context context
           
protected  org.mozilla.javascript.Script ecmaScript
           
protected  java.lang.String ecmaText
           
protected  java.util.Vector eventQueue
           
protected  ScriptThread eventThread
           
 NameStack globals
           
protected  NameStack imports
           
 ScriptClassLoader loader
           
protected  NameStack members
           
protected  NameStack methods
           
protected  boolean processEventHalted
           
protected  Script rootScript
           
protected  ScriptRuntime runtime
           
protected  org.mozilla.javascript.Scriptable scope
           
protected static java.util.Hashtable scriptContexts
           
protected static org.mozilla.javascript.Scriptable sharedScope
           
protected  java.util.Stack statements
           
protected static boolean suspendingCallers
           
protected  java.util.Stack variables
           
protected  java.lang.Thread waitingThread
           
 
Fields inherited from class org.concord.util.script.ScriptObject
beginColumn, beginLine, debug, deleted, doConversion, endColumn, endLine, name, nil, runtimeTable, script
 
Fields inherited from interface java.beans.BeanInfo
ICON_COLOR_16x16, ICON_COLOR_32x32, ICON_MONO_16x16, ICON_MONO_32x32
 
Constructor Summary
Script()
           
Script(java.lang.String name, NameStack globals, ScriptRuntime runtime)
           
Script(java.lang.String scriptName, java.lang.String scriptText, ScriptRuntime runtime)
           
 
Method Summary
 void addHandler(HandlerDeclaration handler)
           
 void addImport(Statement statement)
           
 void addMethod(MethodDeclaration method)
           
 void addStatement(Statement statement)
           
 void addVariable(java.lang.String varName)
           
 java.lang.Object callDeclaredMethod(MethodDeclaration method, java.lang.Object[] args)
           
 java.lang.Object callMethod(java.lang.String methodName, java.lang.Object[] args)
           
 java.lang.Object callMethod(java.lang.String methodName, java.lang.Object[] args, boolean doThrow)
           
 void delete()
           
 java.lang.Class findClass(java.lang.String className)
           
 java.lang.Class findClass(java.lang.String className, boolean doThrow)
           
 MethodDeclaration findMethod(java.lang.String methodName)
           
 java.lang.reflect.Method getBaseMethod(java.lang.String methodName, java.lang.Object[] args)
           
 java.lang.Object getBaseObject()
           
static Script getCurrentScript()
           
 java.util.Vector getEventQueue()
           
 ScriptThread getEventThread()
           
 NameStack getGlobals()
           
 java.lang.String getLineText(java.lang.String text, int line)
           
 java.lang.Object getMemberValue(java.lang.String varName)
           
 java.lang.String getPackage(java.lang.String className)
           
 Script getRootScript()
           
 ScriptRuntime getRuntime()
           
 java.lang.reflect.Method getRuntimeMethod(java.lang.String name, java.lang.Object[] args)
           
 org.mozilla.javascript.Scriptable getScope()
           
 java.lang.Thread getWaitingThread()
           
 void handleBreakpointHit(org.mozilla.javascript.Context cx)
           
 void handleCompilationDone(org.mozilla.javascript.Context cx, org.mozilla.javascript.debug.DebuggableScript fnOrScript, java.lang.StringBuffer source)
           
 void handleExceptionThrown(org.mozilla.javascript.Context cx, java.lang.Object exception)
           
 void interpret()
          This does nothing.
static boolean isSuspendingCallers()
           
 void notifyWaitingThread()
           
 void processEvent()
           
 boolean removeMethod(MethodDeclaration method)
           
 boolean removeStatement(Statement statement)
           
 boolean removeVariable(java.lang.String varName)
           
 void setBaseObject(java.lang.Object object)
           
 void setGlobals(NameStack globals)
           
 void setImportThrowUp(boolean val)
           
 void setMemberValue(java.lang.String varName, java.lang.Object value)
           
 void setMethodThrowUp(boolean val)
           
 void setRootScript(Script script)
           
 void setRuntime(ScriptRuntime runtime)
           
 void setScriptParent(Script scriptParent)
           
static void setSuspendingCallers(boolean suspend)
           
 void setWaitingThread(java.lang.Thread thread)
           
 void startProcessEvent()
           
 void stopProcessEvent()
           
 
Methods inherited from class org.concord.util.script.ScriptObject
findConstructor, findMethod, getAdditionalBeanInfo, getArrayValue, getAtom, getBeanDescriptor, getCurrentFrame, getDefaultEventIndex, getDefaultPropertyIndex, getEventSetDescriptors, getField, getFieldValue, getIcon, getMethodDescriptors, getName, getPropertyDescriptors, getScript, popFrame, pushFrame, setArrayValue, setCurrentFrame, setFieldValue, setName, setScript, setSourceBounds
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

suspendingCallers

protected static boolean suspendingCallers

loader

public ScriptClassLoader loader

globals

public NameStack globals

rootScript

protected Script rootScript

variables

protected java.util.Stack variables

imports

protected NameStack imports

methods

protected NameStack methods

members

protected NameStack members

statements

protected java.util.Stack statements

runtime

protected ScriptRuntime runtime

baseObject

protected java.lang.Object baseObject

baseTable

protected java.util.Hashtable baseTable

eventQueue

protected java.util.Vector eventQueue

processEventHalted

protected boolean processEventHalted

eventThread

protected ScriptThread eventThread

waitingThread

protected java.lang.Thread waitingThread

ecmaScript

protected org.mozilla.javascript.Script ecmaScript

ecmaText

protected java.lang.String ecmaText

context

protected org.mozilla.javascript.Context context

scope

protected org.mozilla.javascript.Scriptable scope

sharedScope

protected static org.mozilla.javascript.Scriptable sharedScope

scriptContexts

protected static java.util.Hashtable scriptContexts
Constructor Detail

Script

public Script()

Script

public Script(java.lang.String name,
              NameStack globals,
              ScriptRuntime runtime)

Script

public Script(java.lang.String scriptName,
              java.lang.String scriptText,
              ScriptRuntime runtime)
Method Detail

delete

public void delete()
Overrides:
delete in class ScriptObject

isSuspendingCallers

public static boolean isSuspendingCallers()

setSuspendingCallers

public static void setSuspendingCallers(boolean suspend)

getEventThread

public ScriptThread getEventThread()

getCurrentScript

public static Script getCurrentScript()

setScriptParent

public void setScriptParent(Script scriptParent)

getScope

public org.mozilla.javascript.Scriptable getScope()

getGlobals

public NameStack getGlobals()

setGlobals

public void setGlobals(NameStack globals)

getRuntime

public ScriptRuntime getRuntime()

setRuntime

public void setRuntime(ScriptRuntime runtime)

getBaseObject

public java.lang.Object getBaseObject()

setBaseObject

public void setBaseObject(java.lang.Object object)

getRootScript

public Script getRootScript()

setRootScript

public void setRootScript(Script script)

getBaseMethod

public java.lang.reflect.Method getBaseMethod(java.lang.String methodName,
                                              java.lang.Object[] args)

getMemberValue

public java.lang.Object getMemberValue(java.lang.String varName)

setMemberValue

public void setMemberValue(java.lang.String varName,
                           java.lang.Object value)

findMethod

public MethodDeclaration findMethod(java.lang.String methodName)

setMethodThrowUp

public void setMethodThrowUp(boolean val)

setImportThrowUp

public void setImportThrowUp(boolean val)

findClass

public java.lang.Class findClass(java.lang.String className)

findClass

public java.lang.Class findClass(java.lang.String className,
                                 boolean doThrow)

getLineText

public java.lang.String getLineText(java.lang.String text,
                                    int line)

handleCompilationDone

public void handleCompilationDone(org.mozilla.javascript.Context cx,
                                  org.mozilla.javascript.debug.DebuggableScript fnOrScript,
                                  java.lang.StringBuffer source)
Specified by:
handleCompilationDone in interface org.mozilla.javascript.debug.Debugger

handleBreakpointHit

public void handleBreakpointHit(org.mozilla.javascript.Context cx)
Specified by:
handleBreakpointHit in interface org.mozilla.javascript.debug.Debugger

handleExceptionThrown

public void handleExceptionThrown(org.mozilla.javascript.Context cx,
                                  java.lang.Object exception)
Specified by:
handleExceptionThrown in interface org.mozilla.javascript.debug.Debugger

interpret

public void interpret()
Description copied from class: ScriptObject
This does nothing. Maybe should be abstract?
Overrides:
interpret in class ScriptObject

addVariable

public void addVariable(java.lang.String varName)

addMethod

public void addMethod(MethodDeclaration method)

addHandler

public void addHandler(HandlerDeclaration handler)

addStatement

public void addStatement(Statement statement)

addImport

public void addImport(Statement statement)

getPackage

public java.lang.String getPackage(java.lang.String className)

removeVariable

public boolean removeVariable(java.lang.String varName)

removeMethod

public boolean removeMethod(MethodDeclaration method)

removeStatement

public boolean removeStatement(Statement statement)

getRuntimeMethod

public java.lang.reflect.Method getRuntimeMethod(java.lang.String name,
                                                 java.lang.Object[] args)

getEventQueue

public java.util.Vector getEventQueue()

startProcessEvent

public void startProcessEvent()

notifyWaitingThread

public void notifyWaitingThread()

processEvent

public void processEvent()

stopProcessEvent

public void stopProcessEvent()

setWaitingThread

public void setWaitingThread(java.lang.Thread thread)

getWaitingThread

public java.lang.Thread getWaitingThread()

callDeclaredMethod

public java.lang.Object callDeclaredMethod(MethodDeclaration method,
                                           java.lang.Object[] args)

callMethod

public java.lang.Object callMethod(java.lang.String methodName,
                                   java.lang.Object[] args)

callMethod

public java.lang.Object callMethod(java.lang.String methodName,
                                   java.lang.Object[] args,
                                   boolean doThrow)