public interface ScriptEngine
Modifier and Type | Method and Description |
---|---|
void |
abort()
Abort currently running script.
|
void |
bind(Shell shell)
Bind input/output shell.
|
void |
deliver(Message msg)
Deliver message to user, typically by displaying it on the shell in an appropriate format.
|
boolean |
exec(java.lang.Class<?> script)
Execute a precompiled script.
|
boolean |
exec(java.lang.Class<?> script,
java.util.List<java.lang.String> args)
Execute a precomplied script.
|
boolean |
exec(java.io.File script)
Execute a script file.
|
boolean |
exec(java.io.File script,
java.util.List<java.lang.String> args)
Execute a script file.
|
boolean |
exec(java.io.Reader reader,
java.lang.String name)
Execute a script from a reader.
|
boolean |
exec(java.io.Reader reader,
java.lang.String name,
java.util.List<java.lang.String> args)
Execute a script from a reader.
|
boolean |
exec(java.lang.String cmd)
Execute a command.
|
java.lang.String |
getPrompt(boolean cont)
Get the command prompt.
|
java.lang.Object |
getVariable(java.lang.String name)
Get value of script variable.
|
void |
importClasses(java.lang.String clazz)
Make classes accessible from script without qualified names.
|
java.lang.String |
input()
Gets an input offered by
offer(String) . |
boolean |
isBusy()
Check if script is currently being executed.
|
boolean |
isComplete(java.lang.String cmd)
Checks if a string is a complete command.
|
boolean |
offer(java.lang.String s)
Offers a string input to a running script.
|
void |
setVariable(java.lang.String name,
java.lang.Object value)
Bind script variable.
|
void |
shutdown()
Terminate the scripting engine.
|
void bind(Shell shell)
shell
- shell for input/output (null to supress).java.lang.String getPrompt(boolean cont)
cont
- true if continuation line, false if first line.boolean isComplete(java.lang.String cmd)
cmd
- command to check.boolean exec(java.lang.String cmd)
cmd
- command to execute.boolean exec(java.io.File script)
script
- script file to execute.boolean exec(java.io.File script, java.util.List<java.lang.String> args)
script
- script file to execute.args
- arguments to pass to script.boolean exec(java.lang.Class<?> script)
script
- script class to execute.boolean exec(java.lang.Class<?> script, java.util.List<java.lang.String> args)
script
- script class to execute.args
- arguments to pass to script.boolean exec(java.io.Reader reader, java.lang.String name)
reader
- reader to read script from.name
- reader name for logging.boolean exec(java.io.Reader reader, java.lang.String name, java.util.List<java.lang.String> args)
reader
- reader to read script from.name
- reader name for logging.args
- arguments to pass to script.void deliver(Message msg)
msg
- message to deliver.boolean offer(java.lang.String s)
s
- string inputjava.lang.String input() throws java.lang.InterruptedException
offer(String)
. Blocks until an input is available or
an interrupt. This is used to allow interactive scripts.java.lang.InterruptedException
boolean isBusy()
void abort()
void setVariable(java.lang.String name, java.lang.Object value)
name
- name of script variable.value
- of script variable.java.lang.Object getVariable(java.lang.String name)
name
- name of script variable.void importClasses(java.lang.String clazz)
clazz
- qualified class name (with wildcards).void shutdown()