This is an automated email from the ASF dual-hosted git repository.

SvenO3 pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/streampipes.git


The following commit(s) were added to refs/heads/dev by this push:
     new badc36f2d0 fix(#4651): Adding nested objects in the adapter script 
transformation causes an error (#4753)
badc36f2d0 is described below

commit badc36f2d0a134a811b2340ad1c52002ccb5bf8a
Author: Sven Oehler <[email protected]>
AuthorDate: Tue Jul 21 17:52:47 2026 +0200

    fix(#4651): Adding nested objects in the adapter script transformation 
causes an error (#4753)
---
 .../connect/transformer/js/GraalJsScriptEngine.java  |  2 +-
 .../transformer/js/GraalJsScriptEngineTest.java      | 20 ++++++++++++++++++++
 2 files changed, 21 insertions(+), 1 deletion(-)

diff --git 
a/streampipes-connect-transformer-js/src/main/java/org/apache/streampipes/connect/transformer/js/GraalJsScriptEngine.java
 
b/streampipes-connect-transformer-js/src/main/java/org/apache/streampipes/connect/transformer/js/GraalJsScriptEngine.java
index 3ec77d0e3d..64adf4eb52 100644
--- 
a/streampipes-connect-transformer-js/src/main/java/org/apache/streampipes/connect/transformer/js/GraalJsScriptEngine.java
+++ 
b/streampipes-connect-transformer-js/src/main/java/org/apache/streampipes/connect/transformer/js/GraalJsScriptEngine.java
@@ -117,7 +117,7 @@ public class GraalJsScriptEngine implements 
TransformationEngine {
       throws ScriptExecutionException {
     try {
       transformFunction.execute(
-          input,
+          ScriptHostObjectAdapter.wrap(input),
           ScriptOutputCollector.wrap(out),
           ctx
       );
diff --git 
a/streampipes-connect-transformer-js/src/test/java/org/apache/streampipes/connect/transformer/js/GraalJsScriptEngineTest.java
 
b/streampipes-connect-transformer-js/src/test/java/org/apache/streampipes/connect/transformer/js/GraalJsScriptEngineTest.java
index 721fdd4324..63616b4830 100644
--- 
a/streampipes-connect-transformer-js/src/test/java/org/apache/streampipes/connect/transformer/js/GraalJsScriptEngineTest.java
+++ 
b/streampipes-connect-transformer-js/src/test/java/org/apache/streampipes/connect/transformer/js/GraalJsScriptEngineTest.java
@@ -173,6 +173,26 @@ public class GraalJsScriptEngineTest {
     assertEquals(0, output.get(0).get("value"));
   }
 
+  @Test
+  void collectEventWithNestedJavaScriptObjectAddedToHostMap() throws Exception 
{
+    var transformer = engine.compile("""
+        function transform(event, out, ctx) {
+          event.test = {"test": 1};
+          out.collect(event);
+        }
+        """);
+
+    var output = new ArrayList<Map<String, Object>>();
+    transformer.transform(new LinkedHashMap<>(
+        Map.of(
+            "value", 1)), output::add, null);
+
+    assertEquals(1, output.size());
+    assertEquals(Map.of("test", 1), output.get(0).get("test"));
+    var serialized = OBJECT_MAPPER.writeValueAsString(output.get(0));
+    assertTrue(serialized.contains("\"test\":{\"test\":1}"));
+  }
+
   @Test
   void serializePrimitiveArraysNestedInHostMapOutput() throws Exception {
     var transformer = engine.compile("""

Reply via email to