com.judoscript
Class Script

java.lang.Object
  extended by com.judoscript.BlockSimple
      extended by com.judoscript.Block
          extended by com.judoscript.Script
All Implemented Interfaces:
Consts, Stmt, XMLDumpable, java.io.Serializable

public class Script
extends Block

This represents a Judo script.

See Also:
Serialized Form

Field Summary
static int ADDFXN_FAIL
           
static int ADDFXN_IGNORE
           
static int ADDFXN_REPLACE
           
 java.util.ArrayList included
           
static Sys sys
           
static boolean verbose
           
 
Fields inherited from class com.judoscript.BlockSimple
EMPTY
 
Fields inherited from interface com.judoscript.Stmt
NoOp
 
Fields inherited from interface com.judoscript.Consts
ADAPTER_PREFIX, ANNOTATION_NAME, ANY_TAG_SYMBOL, ANY_TEXT_SYMBOL, ARGS_NAME, BSF_NAME, CONTEXT_NAME, DEFAULT_CONNECTION_NAME, DEFAULT_HIBERNATE_NAME, DEFAULT_NS_SYMBOL, DYNAMIC_EVAL, DYNAMIC_EVALEXTERNAL, DYNAMIC_EVALFILE, FOREVER, FS_ADD_TO_CLASSPATH, FS_COPY, FS_DO, FS_LIST, FS_LIST_BY_DATE, FS_LIST_BY_EXT, FS_LIST_BY_NAME, FS_LIST_BY_NONE, FS_LIST_BY_SIZE, FS_LIST_COMPRESSED_SIZE, FS_LIST_COUNT, FS_LIST_COUNTLINES, FS_LIST_COUNTWORDS, FS_LIST_PER_FILE, FS_LIST_PER_NONE, FS_LIST_SIZE, FS_MAKEDIR, FS_MOVE, FS_NONE, FS_REMOVE, FS_REMOVEDIR, FS_RESULT_NAME, FS_SETFILETIME, FS_SETREADONLY, FS_SETREADWRITE, HTTP_GET, HTTP_HEAD, HTTP_POST, IO_GZIPPED_INPUTFILE, IO_GZIPPED_OUTPUTFILE, IO_GZIPPED_TEXTINPUTFILE, IO_GZIPPED_TEXTOUTPUTFILE, IO_INPUTSTREAM, IO_OUTPUTSTREAM, IO_RANDOMACCESS, IO_TEXTINPUTFILE, IO_TEXTOUTPUTFILE, ISSUE_LEVEL_DEBUG, ISSUE_LEVEL_ERROR, ISSUE_LEVEL_IGNORE, ISSUE_LEVEL_INFO, ISSUE_LEVEL_WARN, JAVA_ANY, JAVA_ANY_I, JAVA_BOOLEAN, JAVA_BOOLEAN_I, JAVA_BOOLEAN_O, JAVA_BYTE, JAVA_BYTE_I, JAVA_BYTE_O, JAVA_CHAR, JAVA_CHAR_I, JAVA_CHAR_O, JAVA_CURRENCY, JAVA_CURRENCY_I, JAVA_DATE_O, JAVA_DOUBLE, JAVA_DOUBLE_I, JAVA_DOUBLE_O, JAVA_FLOAT, JAVA_FLOAT_I, JAVA_FLOAT_O, JAVA_INT, JAVA_INT_I, JAVA_INT_O, JAVA_LONG, JAVA_LONG_I, JAVA_LONG_O, JAVA_SHORT, JAVA_SHORT_I, JAVA_SHORT_O, JAVA_SQL_DATE_O, JAVA_SQL_TIME_O, JAVA_SQL_TIMESTAMP_O, JAVA_STRING, JAVA_STRING_I, LABEL_SCHEDULE, LAMBDA_PREFIX, LOCAL_NAME, LOCALTEXT_NAME, MAX_READ_FILE_LENGTH, NODE_PREFIX, OP_AND, OP_AND_ASSIGN, OP_ASSIGN, OP_COMPLEMENT, OP_CONCAT, OP_CONCAT_ASSIGN, OP_COPY, OP_DIV, OP_DIV_ASSIGN, OP_EQ, OP_GE, OP_GT, OP_LE, OP_LOGIC_AND_ASSIGN, OP_LOGIC_OR_ASSIGN, OP_LSHIFT, OP_LSHIFT_ASSIGN, OP_LT, OP_MINUS, OP_MINUS_ASSIGN, OP_MOD, OP_MOD_ASSIGN, OP_MUL, OP_MUL_ASSIGN, OP_NE, OP_NOT, OP_OR, OP_OR_ASSIGN, OP_PLUS, OP_PLUS_ASSIGN, OP_RSHIFT, OP_RSHIFT_ASSIGN, OP_RUSHIFT, OP_RUSHIFT_ASSIGN, OP_XOR, OP_XOR_ASSIGN, OPTION_JDBC_PASSWORD, OPTION_JDBC_URL, OPTION_JDBC_USERNAME, ORACLE_BFILE, ORACLE_CURSOR, ORACLE_FIXED_CHAR, ORACLE_NUMBER, ORACLE_PLSQL_INDEX_TABLE, ORACLE_RAW, ORACLE_ROWID, PARENT_NAME, PARSER_NAME, PRAGMA_ASSERTION, PRAGMA_CRYPTOCLASS, PRAGMA_GUILISTENER, PRAGMA_INCLUDEPATH, PRAGMA_JAVACOMPILER, PRAGMA_JDBCDRIVER, pragma_names, PRAGMA_UNKNOWN, PREPARED_STMT_CALL, PRINT_ERR, PRINT_LOG, PRINT_OUT, PRINT_PIPE, PRINT_USER, RTERR_ASSERTION_FAILURE, RTERR_BAD_PRINT_TARGET, RTERR_CONSTANT_NOT_DEFINED, RTERR_CONSTANT_REDEFINITION, RTERR_EMBEDDED_JAVA_COMPILE_FAILED, RTERR_ENVIRONMENT_ERROR, RTERR_EVALUATION_FAILED, RTERR_FS_COPY_MOVE_FAILED, RTERR_FS_CREATE_DIR_FAILED, RTERR_FS_REMOVE_DIR_FAILED, RTERR_FUNCTION_ALREADY_DEFINED, RTERR_ILLEGAL_ACCESS, RTERR_ILLEGAL_ARGUMENTS, RTERR_ILLEGAL_INDEXED_ACCESS, RTERR_ILLEGAL_JUMP, RTERR_ILLEGAL_STATEMENT, RTERR_ILLEGAL_VALUE_SETTING, RTERR_INTERNAL_ERROR, RTERR_INVALID_ARRAY_ACCESS, RTERR_INVALID_JAVA_VERSION, RTERR_INVALID_MEMBER_ACCESS, RTERR_INVALID_NUMBER_FORMAT, RTERR_INVALID_VARIABLE_NAME, RTERR_IO_FAILURE, RTERR_IO_FILE_OPEN_FAILURE, RTERR_JAVA_COMPILE_FAILED, RTERR_JAVA_EXCEPTION, RTERR_JAVA_METHOD_CALL, RTERR_JAVA_OBJECT_CREATION, RTERR_JDBC_DRIVER_NOT_FOUND, RTERR_JDBC_FAILURE, RTERR_JDBC_INVALID_COLUMN, RTERR_JDBC_WARNING, RTERR_MAIL_MISSING_FIELD, RTERR_MAILSERVER_NOT_CONNECTED, RTERR_METHOD_NOT_FOUND, rterr_names, RTERR_NO_SUCH_VALUE, RTERR_OBJECT_INIT, RTERR_TIMER_ALREADY_EXISTS, RTERR_UNDEFINED_GUI_EVENT, RTERR_UNDEFINED_OBJECT_TYPE, RTERR_USER_EXCEPTION, RTERR_XML_PARSING_ERROR, RULEENGINE_MAX_ITERATIONS, SYS_NAME, TEMPVAR_PREFIX, TEXT_PREFIX, THIS_NAME, THREAD_PREFIX, TIMER_NAME, TYPE_ARRAY, TYPE_CALLABLE, TYPE_COM, TYPE_COMPLEX, TYPE_CONTEXT, TYPE_DATE, TYPE_DOUBLE, TYPE_FUNCTION, TYPE_INT, TYPE_INTERNAL, TYPE_JAVA, TYPE_NAN, TYPE_NIL, TYPE_OBJECT, TYPE_QUEUE, TYPE_SET, TYPE_STACK, TYPE_STRING, TYPE_STRUCT, TYPE_UNDEFINED, TYPE_UNKNOWN, TYPE_WS, TYPE1_SYMBOL, TYPE2_SYMBOL, TYPE3_SYMBOL, XML_EVENT_PREFIX
 
Constructor Summary
Script()
           
 
Method Summary
 void _setConst(java.lang.String name, Variable val)
           
 void acceptDecls(Script scr)
           
 void addFunction(Function f)
           
 void addFunction(Function f, int mode)
           
 void addGuiNamedHandler(int lineNo, Triplet eventID, StmtListStmt sls)
           
 void addLocalDataSource(java.lang.String text)
           
 void addObjectType(UserDefined.UserType ot)
           
 void addSgmlHandler(java.lang.String name, StmtHtml stmt)
           
 void addThread(_Thread t)
           
 void attachGuiHandler(java.lang.String qName, java.lang.Object obj)
           
 void checkMinArgs(int numargs)
           
 byte[] crypt(boolean encrypt, java.lang.String password, byte[] input)
           
 void crypt(boolean encrypt, java.lang.String password, java.io.InputStream in, java.io.OutputStream out)
           
 void cryptFile(boolean encrypt, java.lang.String password, java.lang.String infile, java.lang.String outfile)
           
 void displayUsage()
           
 void dump(XMLWriter out)
           
static void dumpFunctions(XMLWriter out, java.util.HashMap fxns)
           
 boolean existsSgmlHandler(java.lang.String name)
           
 java.lang.String getCryptoClassName()
           
static int getErrorType(java.lang.String name)
           
 Function getFunction(java.lang.String name)
           
 java.lang.String[] getFunctionThreads(java.lang.String pattern, boolean forFunc)
           
 long getLastModified()
           
 java.lang.String getLocalData()
           
 java.io.BufferedReader getLocalDataSource()
           
 UserDefined.UserType getObjectType(java.lang.String name)
           
 java.lang.String getProgramName()
           
 java.lang.String getRegisteredType(java.lang.String name)
           
 java.lang.String getScriptBasePath()
           
 java.lang.String getScriptPath()
           
 StmtHtml getSgmlHandler(java.lang.String name)
           
 JavaObject getStaticJavaClass(java.lang.String name)
           
 _Thread getThread(java.lang.String name)
           
 java.util.HashMap getUsage()
           
 boolean hasConst(java.lang.String name)
           
 Variable invoke(java.lang.String fxn, Expr[] args, int[] javaTypes)
           
 void popFrame()
           
 void pushNewFrame()
           
 void registerType(java.lang.String name, java.lang.String className)
           
 Variable resolveConst(java.lang.String name)
           
 void restoreLocalDataSource()
           
 void setConst(java.lang.String name, int val)
           
 void setConst(java.lang.String name, java.lang.String val)
           
 void setConst(java.lang.String name, Variable val)
           
 void setCryptoClassName(java.lang.String cls)
           
 void setLastModified(long lastMod)
           
 void setLocalDataSource(java.lang.String text)
           
 void setProgramName(java.lang.String name)
           
 void setScriptPath(java.lang.String path)
           
 void setUsage(java.util.HashMap u)
           
 void start(RuntimeGlobalContext rtc)
           
 void start(RuntimeGlobalContext rtc, boolean doExit)
           
 void start(java.lang.String[] args)
           
 void start(java.lang.String[] args, boolean doX)
           
 java.lang.Object startAllowException(Expr[] args, RuntimeContext callerRtc)
           
 java.lang.Object startAllowException(RuntimeGlobalContext rtc)
           
 java.lang.Object startAllowException(RuntimeGlobalContext rtc, RuntimeContext callerRtc, boolean doExit, boolean popCtxt)
           
 java.lang.Object startAllowException(java.lang.String[] args)
           
 java.lang.Object startAllowException(java.lang.String[] args, RuntimeContext callerRtc)
           
 void startThread(java.lang.String name, boolean daemon, Expr[] args)
           
 void takeDecls(Script rhs)
           
 
Methods inherited from class com.judoscript.Block
handleException, handleFinally, prependStmts, setStmts
 
Methods inherited from class com.judoscript.BlockSimple
beginBlock, endBlock, exec, exec, execHere, getFileIndex, getLineNumber, getStmts, labelToIndex, optimizeStmt, setFileIndex, setLineNumber, setStmts, setStmts
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

verbose

public static final boolean verbose
See Also:
Constant Field Values

included

public java.util.ArrayList included

sys

public static Sys sys

ADDFXN_IGNORE

public static final int ADDFXN_IGNORE
See Also:
Constant Field Values

ADDFXN_FAIL

public static final int ADDFXN_FAIL
See Also:
Constant Field Values

ADDFXN_REPLACE

public static final int ADDFXN_REPLACE
See Also:
Constant Field Values
Constructor Detail

Script

public Script()
Method Detail

acceptDecls

public void acceptDecls(Script scr)

setUsage

public void setUsage(java.util.HashMap u)

getUsage

public java.util.HashMap getUsage()

getCryptoClassName

public java.lang.String getCryptoClassName()

setCryptoClassName

public void setCryptoClassName(java.lang.String cls)

setLocalDataSource

public void setLocalDataSource(java.lang.String text)

getLocalData

public java.lang.String getLocalData()

getLocalDataSource

public java.io.BufferedReader getLocalDataSource()

addLocalDataSource

public void addLocalDataSource(java.lang.String text)

restoreLocalDataSource

public void restoreLocalDataSource()

setLastModified

public void setLastModified(long lastMod)

getLastModified

public long getLastModified()

getProgramName

public java.lang.String getProgramName()

setProgramName

public void setProgramName(java.lang.String name)

setScriptPath

public void setScriptPath(java.lang.String path)

getScriptPath

public java.lang.String getScriptPath()

getScriptBasePath

public java.lang.String getScriptBasePath()

getStaticJavaClass

public JavaObject getStaticJavaClass(java.lang.String name)
                              throws java.lang.Exception
Throws:
java.lang.Exception

takeDecls

public void takeDecls(Script rhs)
               throws ExceptionRuntime
Throws:
ExceptionRuntime

registerType

public void registerType(java.lang.String name,
                         java.lang.String className)

getRegisteredType

public java.lang.String getRegisteredType(java.lang.String name)

addFunction

public void addFunction(Function f)
                 throws ExceptionRuntime
Throws:
ExceptionRuntime

addFunction

public void addFunction(Function f,
                        int mode)
                 throws ExceptionRuntime
Throws:
ExceptionRuntime

getFunction

public Function getFunction(java.lang.String name)
                     throws java.lang.Exception
Throws:
java.lang.Exception

getFunctionThreads

public java.lang.String[] getFunctionThreads(java.lang.String pattern,
                                             boolean forFunc)

addThread

public void addThread(_Thread t)

getThread

public _Thread getThread(java.lang.String name)

addObjectType

public void addObjectType(UserDefined.UserType ot)
                   throws ExceptionRuntime
Throws:
ExceptionRuntime

getObjectType

public UserDefined.UserType getObjectType(java.lang.String name)
                                   throws ExceptionRuntime
Throws:
ExceptionRuntime

setConst

public void setConst(java.lang.String name,
                     int val)
              throws ParseException
Throws:
ParseException

setConst

public void setConst(java.lang.String name,
                     java.lang.String val)
              throws ParseException
Throws:
ParseException

setConst

public void setConst(java.lang.String name,
                     Variable val)
              throws ParseException
Throws:
ParseException

_setConst

public void _setConst(java.lang.String name,
                      Variable val)

resolveConst

public Variable resolveConst(java.lang.String name)

hasConst

public boolean hasConst(java.lang.String name)

existsSgmlHandler

public boolean existsSgmlHandler(java.lang.String name)

addSgmlHandler

public void addSgmlHandler(java.lang.String name,
                           StmtHtml stmt)

getSgmlHandler

public StmtHtml getSgmlHandler(java.lang.String name)

addGuiNamedHandler

public void addGuiNamedHandler(int lineNo,
                               Triplet eventID,
                               StmtListStmt sls)
                        throws ExceptionRuntime
Throws:
ExceptionRuntime

attachGuiHandler

public void attachGuiHandler(java.lang.String qName,
                             java.lang.Object obj)
                      throws java.lang.Exception
Throws:
java.lang.Exception

start

public void start(java.lang.String[] args)

start

public void start(java.lang.String[] args,
                  boolean doX)

start

public void start(RuntimeGlobalContext rtc)

start

public void start(RuntimeGlobalContext rtc,
                  boolean doExit)

startAllowException

public java.lang.Object startAllowException(java.lang.String[] args)
                                     throws java.lang.Throwable
Throws:
java.lang.Throwable

startAllowException

public java.lang.Object startAllowException(Expr[] args,
                                            RuntimeContext callerRtc)
                                     throws java.lang.Throwable
Throws:
java.lang.Throwable

startAllowException

public java.lang.Object startAllowException(java.lang.String[] args,
                                            RuntimeContext callerRtc)
                                     throws java.lang.Throwable
Throws:
java.lang.Throwable

startAllowException

public java.lang.Object startAllowException(RuntimeGlobalContext rtc)
                                     throws java.lang.Throwable
Throws:
java.lang.Throwable

startAllowException

public java.lang.Object startAllowException(RuntimeGlobalContext rtc,
                                            RuntimeContext callerRtc,
                                            boolean doExit,
                                            boolean popCtxt)
                                     throws java.lang.Throwable
Throws:
java.lang.Throwable

pushNewFrame

public void pushNewFrame()
Specified by:
pushNewFrame in interface Stmt
Overrides:
pushNewFrame in class BlockSimple

popFrame

public void popFrame()
Specified by:
popFrame in interface Stmt
Overrides:
popFrame in class BlockSimple

startThread

public void startThread(java.lang.String name,
                        boolean daemon,
                        Expr[] args)
                 throws java.lang.Throwable
Throws:
java.lang.Throwable

invoke

public Variable invoke(java.lang.String fxn,
                       Expr[] args,
                       int[] javaTypes)
                throws java.lang.Throwable
Throws:
java.lang.Throwable

dump

public void dump(XMLWriter out)
Specified by:
dump in interface XMLDumpable
Overrides:
dump in class Block

cryptFile

public void cryptFile(boolean encrypt,
                      java.lang.String password,
                      java.lang.String infile,
                      java.lang.String outfile)
               throws java.lang.Exception
Throws:
java.lang.Exception

crypt

public byte[] crypt(boolean encrypt,
                    java.lang.String password,
                    byte[] input)
             throws java.lang.Exception
Throws:
java.lang.Exception

crypt

public void crypt(boolean encrypt,
                  java.lang.String password,
                  java.io.InputStream in,
                  java.io.OutputStream out)
           throws java.lang.Exception
Throws:
java.lang.Exception

dumpFunctions

public static void dumpFunctions(XMLWriter out,
                                 java.util.HashMap fxns)

getErrorType

public static int getErrorType(java.lang.String name)

checkMinArgs

public void checkMinArgs(int numargs)

displayUsage

public void displayUsage()