|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.bsf.util.BSFEngineImpl
org.rexxla.bsf.engines.rexx.RexxEngine
This class manages the calls from Java via JNI to Rexx or Object Rexx using the RexxSAA interface.
RexxEngine.java - this class makes (Object) Rexx available to IBM's BeanScriptingFramework (BSF) Copyright (C) 2001-2005 Rony G. Flatscher This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA The following URL may be available for further information: http://www.gnu.org/copyleft/lesser.html
Field Summary |
Fields inherited from class org.apache.bsf.util.BSFEngineImpl |
classLoader, classPath, declaredBeans, lang, mgr, tempDir |
Constructor Summary | |
RexxEngine()
|
Method Summary | |
java.lang.Object |
apply(java.lang.String source,
int lineNo,
int columnNo,
java.lang.Object oscript,
java.util.Vector vArgNames,
java.util.Vector vArgs)
Applies (evaluates) a piece of Rexx code (can be a whole program as well) with Java-supplied arguments and returns the result. |
java.lang.Object |
call(java.lang.Object object,
java.lang.String name,
java.lang.Object[] args)
Deprecated. " This call(...) method may be enhanced in the future, once an openly
defined and available interface to the OO-part of Object Rexx is made
available by IBM. Then the argument "object " would denote
an Object Rexx object, the argument "name " the name of one of its methods
and the argument "args " the arguments for the method.
If possible at all, use method apply(...)
instead. |
void |
declareBean(org.apache.bsf.BSFDeclaredBean bean)
Method implemented in order to avoid an exeption to be thrown by the default implementation. |
java.lang.Object |
eval(java.lang.String source,
int lineNo,
int columnNo,
java.lang.Object oscript)
Evaluates (executes) a piece of Rexx code (can be a whole program as well) without any Java-supplied arguments and returns the result. |
protected RexxAndJava |
getRexxInterface()
|
void |
initialize(org.apache.bsf.BSFManager mgr,
java.lang.String lang,
java.util.Vector declaredBeans)
Initializes the Rexx engine and causes the external functions 'BSF' and 'BSFPollEvents' to be registered with the Rexx interpreter. |
void |
undeclareBean(org.apache.bsf.BSFDeclaredBean bean)
Method implemented in order to avoid an exeption to be thrown by the default implementation. |
Methods inherited from class org.apache.bsf.util.BSFEngineImpl |
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 |
public RexxEngine()
Method Detail |
protected RexxAndJava getRexxInterface()
public void initialize(org.apache.bsf.BSFManager mgr, java.lang.String lang, java.util.Vector declaredBeans) throws org.apache.bsf.BSFException
org.apache.bsf.BSFException
public java.lang.Object eval(java.lang.String source, int lineNo, int columnNo, java.lang.Object oscript) throws org.apache.bsf.BSFException
source
- if set to RexxAndJava.EVENT_TEXT
,
then oscript
is put into the event queue
to be polled by Rexx. If this text starts with the
string "/*2*/"
it is
put into the alarm (highest dispatch) level vector, if it starts with the
string "/*0*/"
it is
put into the batch (lowest dispatch) level vector,
else it is put into the normal level vector.lineNo
- not used.columnNo
- not used.oscript
- the String version of this object [using toString()]
represents the Rexx code to be executed.
Its statements are delimited with a ';' or a
CR (carriage-return) and/or LF (line-feed).
null
.
org.apache.bsf.BSFException
public java.lang.Object call(java.lang.Object object, java.lang.String name, java.lang.Object[] args) throws org.apache.bsf.BSFException
call(...)
method may be enhanced in the future, once an openly
defined and available interface to the OO-part of Object Rexx is made
available by IBM. Then the argument "object
" would denote
an Object Rexx object, the argument "name
" the name of one of its methods
and the argument "args
" the arguments for the method.
apply(...)
instead.
[Hint: This follows after learning how Xalan is employing BSF: it first calls "exec()" and then "call()", hence "call()" does not receive the source to be executed.]
object
- not used.name
- not used.args
- arguments to be passed to Rexx.
null
.
org.apache.bsf.BSFException
public java.lang.Object apply(java.lang.String source, int lineNo, int columnNo, java.lang.Object oscript, java.util.Vector vArgNames, java.util.Vector vArgs) throws org.apache.bsf.BSFException
source
- not used.lineNo
- not used.columnNo
- not used.oscript
- the String version of this object [using toString()]
represents the Rexx code to be executed.
Its statements are delimited with a ';' or a
an LF (line-feed, "0x0a"), preceeded by an
optional CR (carriage-return, "0x0d").vArgNames
- not used.vArgs
- arguments to be passed to Rexx.
null
.
org.apache.bsf.BSFException
public void declareBean(org.apache.bsf.BSFDeclaredBean bean) throws org.apache.bsf.BSFException
bean
- the bean to be declared for the already started language.
org.apache.bsf.BSFException
public void undeclareBean(org.apache.bsf.BSFDeclaredBean bean) throws org.apache.bsf.BSFException
bean
- the bean to be declared for the already started language.
org.apache.bsf.BSFException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |