Package io.debezium.transforms.scripting
Class GraalJsEngine
- java.lang.Object
-
- io.debezium.transforms.scripting.Jsr223Engine
-
- io.debezium.transforms.scripting.GraalJsEngine
-
- All Implemented Interfaces:
Engine
public class GraalJsEngine extends Jsr223Engine
An implementation of the expression language evaluator based on GraalVM. Key and value structs are exposed asProxyObjects, allowing for simplified property references.- Author:
- Jiri Pechanec
-
-
Field Summary
-
Fields inherited from class io.debezium.transforms.scripting.Jsr223Engine
engine
-
-
Constructor Summary
Constructors Constructor Description GraalJsEngine()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private org.graalvm.polyglot.proxy.ProxyObjectasProxyObject(Map<String,?> map)Exposes the given Map as aProxyObject, allowing for simplified property reference.private org.graalvm.polyglot.proxy.ProxyObjectasProxyObject(org.apache.kafka.connect.data.Struct struct)Exposes the given struct as aProxyObject, allowing for simplified property references, also providing any write access.protected voidconfigureEngine()protected RecordHeaderheader(org.apache.kafka.connect.header.Header header)protected Objectheaders(org.apache.kafka.connect.connector.ConnectRecord<?> record)protected Objectkey(org.apache.kafka.connect.connector.ConnectRecord<?> record)protected Objectvalue(org.apache.kafka.connect.connector.ConnectRecord<?> record)-
Methods inherited from class io.debezium.transforms.scripting.Jsr223Engine
configure, doHeaders, eval, getBindings
-
-
-
-
Method Detail
-
configureEngine
protected void configureEngine()
- Overrides:
configureEnginein classJsr223Engine
-
key
protected Object key(org.apache.kafka.connect.connector.ConnectRecord<?> record)
- Overrides:
keyin classJsr223Engine
-
value
protected Object value(org.apache.kafka.connect.connector.ConnectRecord<?> record)
- Overrides:
valuein classJsr223Engine
-
headers
protected Object headers(org.apache.kafka.connect.connector.ConnectRecord<?> record)
- Overrides:
headersin classJsr223Engine
-
header
protected RecordHeader header(org.apache.kafka.connect.header.Header header)
- Overrides:
headerin classJsr223Engine
-
asProxyObject
private org.graalvm.polyglot.proxy.ProxyObject asProxyObject(org.apache.kafka.connect.data.Struct struct)
Exposes the given struct as aProxyObject, allowing for simplified property references, also providing any write access.
-
-