Package org.codehaus.groovy.bsf
Class GroovyEngine
- java.lang.Object
-
- org.apache.bsf.util.BSFEngineImpl
-
- org.codehaus.groovy.bsf.GroovyEngine
-
- All Implemented Interfaces:
PropertyChangeListener
,EventListener
,org.apache.bsf.BSFEngine
- Direct Known Subclasses:
CachingGroovyEngine
public class GroovyEngine extends org.apache.bsf.util.BSFEngineImpl
A BSF Engine for the Groovy scripting language.It's inspired from the Jython engine
-
-
Field Summary
Fields Modifier and Type Field Description protected GroovyShell
shell
-
Constructor Summary
Constructors Constructor Description GroovyEngine()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Object
apply(String source, int lineNo, int columnNo, Object funcBody, Vector paramNames, Vector arguments)
Allow an anonymous function to be declared and invokedObject
call(Object object, String method, Object[] args)
Call the named method of the given object.void
declareBean(org.apache.bsf.BSFDeclaredBean bean)
Declare a beanObject
eval(String source, int lineNo, int columnNo, Object script)
Evaluate an expression.void
exec(String source, int lineNo, int columnNo, Object script)
Execute a script.protected GroovyShell
getEvalShell()
void
initialize(org.apache.bsf.BSFManager mgr, String lang, Vector declaredBeans)
Initialize the engine.void
undeclareBean(org.apache.bsf.BSFDeclaredBean bean)
Undeclare a previously declared bean.
-
-
-
Field Detail
-
shell
protected GroovyShell shell
-
-
Method Detail
-
apply
public Object apply(String source, int lineNo, int columnNo, Object funcBody, Vector paramNames, Vector arguments) throws org.apache.bsf.BSFException
Allow an anonymous function to be declared and invoked- Specified by:
apply
in interfaceorg.apache.bsf.BSFEngine
- Overrides:
apply
in classorg.apache.bsf.util.BSFEngineImpl
- Throws:
org.apache.bsf.BSFException
-
call
public Object call(Object object, String method, Object[] args) throws org.apache.bsf.BSFException
Call the named method of the given object.- Throws:
org.apache.bsf.BSFException
-
eval
public Object eval(String source, int lineNo, int columnNo, Object script) throws org.apache.bsf.BSFException
Evaluate an expression.- Throws:
org.apache.bsf.BSFException
-
exec
public void exec(String source, int lineNo, int columnNo, Object script) throws org.apache.bsf.BSFException
Execute a script.- Specified by:
exec
in interfaceorg.apache.bsf.BSFEngine
- Overrides:
exec
in classorg.apache.bsf.util.BSFEngineImpl
- Throws:
org.apache.bsf.BSFException
-
initialize
public void initialize(org.apache.bsf.BSFManager mgr, String lang, Vector declaredBeans) throws org.apache.bsf.BSFException
Initialize the engine.- Specified by:
initialize
in interfaceorg.apache.bsf.BSFEngine
- Overrides:
initialize
in classorg.apache.bsf.util.BSFEngineImpl
- Throws:
org.apache.bsf.BSFException
-
declareBean
public void declareBean(org.apache.bsf.BSFDeclaredBean bean) throws org.apache.bsf.BSFException
Declare a bean- Specified by:
declareBean
in interfaceorg.apache.bsf.BSFEngine
- Overrides:
declareBean
in classorg.apache.bsf.util.BSFEngineImpl
- Throws:
org.apache.bsf.BSFException
-
undeclareBean
public void undeclareBean(org.apache.bsf.BSFDeclaredBean bean) throws org.apache.bsf.BSFException
Undeclare a previously declared bean.- Specified by:
undeclareBean
in interfaceorg.apache.bsf.BSFEngine
- Overrides:
undeclareBean
in classorg.apache.bsf.util.BSFEngineImpl
- Throws:
org.apache.bsf.BSFException
-
getEvalShell
protected GroovyShell getEvalShell()
- Returns:
- a newly created GroovyShell using the same variable scope but a new class loader
-
-