public interface Invocable
Modifier and Type | Method | Description |
---|---|---|
<T> T |
getInterface |
Returns an implementation of an interface using functions compiled in the interpreter. |
<T> T |
getInterface |
Returns an implementation of an interface using member functions of a scripting object compiled in the interpreter. |
Object |
invokeFunction |
Used to call top-level procedures and functions defined in scripts. |
Object |
invokeMethod |
Calls a method on a script object compiled during a previous script execution, which is retained in the state of the ScriptEngine . |
Object invokeMethod(Object thiz, String name, Object... args) throws ScriptException, NoSuchMethodException
ScriptEngine
.thiz
- If the procedure is a member of a class defined in the script and thiz is an instance of that class returned by a previous execution or invocation, the named method is called through that instance.name
- The name of the procedure to be called.args
- Arguments to pass to the procedure. The rules for converting the arguments to scripting variables are implementation-specific.ScriptException
- if an error occurs during invocation of the method.NoSuchMethodException
- if method with given name or matching argument types cannot be found.NullPointerException
- if the method name is null.IllegalArgumentException
- if the specified thiz is null or the specified Object is does not represent a scripting object.Object invokeFunction(String name, Object... args) throws ScriptException, NoSuchMethodException
name
- of the procedure or function to callargs
- Arguments to pass to the procedure or functionScriptException
- if an error occurs during invocation of the method.NoSuchMethodException
- if method with given name or matching argument types cannot be found.NullPointerException
- if method name is null.<T> T getInterface(Class<T> clasz)
invokeFunction
method.T
- the type of the interface to returnclasz
- The Class
object of the interface to return.ScriptEngine
cannot be found matching the ones in the requested interface.IllegalArgumentException
- if the specified Class
object is null or is not an interface.<T> T getInterface(Object thiz, Class<T> clasz)
invokeMethod
method.T
- the type of the interface to returnthiz
- The scripting object whose member functions are used to implement the methods of the interface.clasz
- The Class
object of the interface to return.ScriptEngine
cannot be found matching the ones in the requested interface.IllegalArgumentException
- if the specified Class
object is null or is not an interface, or if the specified Object is null or does not represent a scripting object.
© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.scripting/javax/script/Invocable.html