20080913, rgf

org.apache.bsf.engines.jacl
Class JaclEngine

java.lang.Object
  extended byorg.apache.bsf.util.BSFEngineImpl
      extended byorg.apache.bsf.engines.jacl.JaclEngine
All Implemented Interfaces:
BSFEngine, java.util.EventListener, java.beans.PropertyChangeListener

public class JaclEngine
extends BSFEngineImpl

This is the interface to Scriptics's Jacl (Tcl) from the Bean Scripting Framework.

Author:
Sanjiva Weerawarana

Field Summary
 
Fields inherited from class org.apache.bsf.util.BSFEngineImpl
classLoader, classPath, declaredBeans, lang, mgr, tempDir
 
Constructor Summary
JaclEngine()
           
 
Method Summary
 java.lang.Object call(java.lang.Object obj, java.lang.String method, java.lang.Object[] args)
          This is used by an application to call into the scripting engine to make a function/method call.
 void declareBean(BSFDeclaredBean bean)
          Declare a bean
 java.lang.Object eval(java.lang.String source, int lineNo, int columnNo, java.lang.Object oscript)
          This is used by an application to evaluate a string containing some expression.
 void initialize(BSFManager mgr, java.lang.String lang, java.util.Vector declaredBeans)
          Initialize the engine.
 void undeclareBean(BSFDeclaredBean bean)
          Undeclare a previously declared bean.
 
Methods inherited from class org.apache.bsf.util.BSFEngineImpl
apply, compileApply, compileExpr, compileScript, exec, iexec, propertyChange, terminate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JaclEngine

public JaclEngine()
Method Detail

call

public java.lang.Object call(java.lang.Object obj,
                             java.lang.String method,
                             java.lang.Object[] args)
                      throws BSFException
Description copied from interface: BSFEngine
This is used by an application to call into the scripting engine to make a function/method call. The "object" argument is the object whose method is to be called, if that applies. For non-OO languages, this is typically ignored and should be given as null. For pretend-OO languages such as VB, this would be the (String) name of the object. The arguments are given in the args array.

Parameters:
method - The name of the method to call.
args - an array of arguments to be passed to the extension, which may be either Vectors of Nodes, or Strings.
obj - object on which to make the call
Throws:
BSFException - if anything goes wrong while eval'ing a BSFException is thrown. The reason indicates the problem.

declareBean

public void declareBean(BSFDeclaredBean bean)
                 throws BSFException
Declare a bean

Specified by:
declareBean in interface BSFEngine
Overrides:
declareBean in class BSFEngineImpl
Throws:
BSFException

eval

public java.lang.Object eval(java.lang.String source,
                             int lineNo,
                             int columnNo,
                             java.lang.Object oscript)
                      throws BSFException
This is used by an application to evaluate a string containing some expression.

Parameters:
source - (context info) the source of this expression (e.g., filename)
lineNo - (context info) the line number in source for expr
columnNo - (context info) the column number in source for expr
oscript - the expression to evaluate
Throws:
BSFException - if anything goes wrong while eval'ing a BSFException is thrown. The reason indicates the problem.

initialize

public void initialize(BSFManager mgr,
                       java.lang.String lang,
                       java.util.Vector declaredBeans)
                throws BSFException
Initialize the engine.

Specified by:
initialize in interface BSFEngine
Overrides:
initialize in class BSFEngineImpl
Throws:
BSFException

undeclareBean

public void undeclareBean(BSFDeclaredBean bean)
                   throws BSFException
Undeclare a previously declared bean.

Specified by:
undeclareBean in interface BSFEngine
Overrides:
undeclareBean in class BSFEngineImpl
Throws:
BSFException

20080913, rgf