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 derived from the Jython / JPython engine

Author:
James Strachan
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected GroovyShell
     

    Fields inherited from class org.apache.bsf.util.BSFEngineImpl

    classLoader, classPath, declaredBeans, lang, mgr, tempDir
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    apply(String source, int lineNo, int columnNo, Object funcBody, Vector paramNames, Vector arguments)
    Allow an anonymous function to be declared and invoked
    call(Object object, String method, Object[] args)
    Call the named method of the given object.
    void
    declareBean(org.apache.bsf.BSFDeclaredBean bean)
    Declare a bean
    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
     
    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.

    Methods inherited from class org.apache.bsf.util.BSFEngineImpl

    compileApply, compileExpr, compileScript, iexec, propertyChange, terminate

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • GroovyEngine

      public GroovyEngine()
  • Method Details

    • 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 interface org.apache.bsf.BSFEngine
      Overrides:
      apply in class org.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 interface org.apache.bsf.BSFEngine
      Overrides:
      exec in class org.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 interface org.apache.bsf.BSFEngine
      Overrides:
      initialize in class org.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 interface org.apache.bsf.BSFEngine
      Overrides:
      declareBean in class org.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 interface org.apache.bsf.BSFEngine
      Overrides:
      undeclareBean in class org.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