public class GroovyScriptEngine extends java.lang.Object implements ScriptEngine
Constructor and Description |
---|
GroovyScriptEngine() |
GroovyScriptEngine(java.lang.ClassLoader cl) |
GroovyScriptEngine(groovy.lang.GroovyClassLoader gcl) |
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 cmd1)
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
ScriptEngine.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.
|
public GroovyScriptEngine()
public GroovyScriptEngine(groovy.lang.GroovyClassLoader gcl)
public GroovyScriptEngine(java.lang.ClassLoader cl)
public void bind(Shell shell)
ScriptEngine
bind
in interface ScriptEngine
shell
- shell for input/output (null to supress).public java.lang.String getPrompt(boolean cont)
ScriptEngine
getPrompt
in interface ScriptEngine
cont
- true if continuation line, false if first line.public boolean isComplete(java.lang.String cmd)
ScriptEngine
isComplete
in interface ScriptEngine
cmd
- command to check.public boolean exec(java.lang.String cmd1)
ScriptEngine
exec
in interface ScriptEngine
cmd1
- command to execute.public boolean exec(java.io.File script)
ScriptEngine
exec
in interface ScriptEngine
script
- script file to execute.public boolean exec(java.io.File script, java.util.List<java.lang.String> args)
ScriptEngine
exec
in interface ScriptEngine
script
- script file to execute.args
- arguments to pass to script.public boolean exec(java.lang.Class<?> script)
ScriptEngine
exec
in interface ScriptEngine
script
- script class to execute.public boolean exec(java.lang.Class<?> script, java.util.List<java.lang.String> args)
ScriptEngine
exec
in interface ScriptEngine
script
- script class to execute.args
- arguments to pass to script.public boolean exec(java.io.Reader reader, java.lang.String name)
ScriptEngine
exec
in interface ScriptEngine
reader
- reader to read script from.name
- reader name for logging.public boolean exec(java.io.Reader reader, java.lang.String name, java.util.List<java.lang.String> args)
ScriptEngine
exec
in interface ScriptEngine
reader
- reader to read script from.name
- reader name for logging.args
- arguments to pass to script.public boolean isBusy()
ScriptEngine
isBusy
in interface ScriptEngine
public void abort()
ScriptEngine
abort
in interface ScriptEngine
public void setVariable(java.lang.String name, java.lang.Object value)
ScriptEngine
setVariable
in interface ScriptEngine
name
- name of script variable.value
- of script variable.public java.lang.Object getVariable(java.lang.String name)
ScriptEngine
getVariable
in interface ScriptEngine
name
- name of script variable.public void importClasses(java.lang.String clazz)
ScriptEngine
importClasses
in interface ScriptEngine
clazz
- qualified class name (with wildcards).public void shutdown()
ScriptEngine
shutdown
in interface ScriptEngine
public void deliver(Message msg)
ScriptEngine
deliver
in interface ScriptEngine
msg
- message to deliver.public boolean offer(java.lang.String s)
ScriptEngine
offer
in interface ScriptEngine
s
- string inputpublic java.lang.String input() throws java.lang.InterruptedException
ScriptEngine
ScriptEngine.offer(String)
. Blocks until an input is available or
an interrupt. This is used to allow interactive scripts.input
in interface ScriptEngine
java.lang.InterruptedException