You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@streampipes.apache.org by wi...@apache.org on 2020/05/25 17:42:36 UTC

[incubator-streampipes] 02/03: [STREAMPIPES-142] Handle non-primitive and primitive event data returned from Siddhi

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

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

commit 1545c25f471a1e0328ae3fb2806e97d3781a994b
Author: Patrick Wiener <wi...@fzi.de>
AuthorDate: Mon May 25 19:42:05 2020 +0200

    [STREAMPIPES-142] Handle non-primitive and primitive event data returned from Siddhi
---
 .../wrapper/siddhi/engine/SiddhiEventEngine.java         | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/streampipes-wrapper-siddhi/src/main/java/org/apache/streampipes/wrapper/siddhi/engine/SiddhiEventEngine.java b/streampipes-wrapper-siddhi/src/main/java/org/apache/streampipes/wrapper/siddhi/engine/SiddhiEventEngine.java
index 4c35128..08671a5 100644
--- a/streampipes-wrapper-siddhi/src/main/java/org/apache/streampipes/wrapper/siddhi/engine/SiddhiEventEngine.java
+++ b/streampipes-wrapper-siddhi/src/main/java/org/apache/streampipes/wrapper/siddhi/engine/SiddhiEventEngine.java
@@ -34,12 +34,7 @@ import io.siddhi.core.event.Event;
 import io.siddhi.core.stream.input.InputHandler;
 import io.siddhi.core.stream.output.StreamCallback;
 
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.StringJoiner;
+import java.util.*;
 
 public abstract class SiddhiEventEngine<B extends EventProcessorBindingParams> implements
         EventProcessor<B> {
@@ -138,8 +133,15 @@ public abstract class SiddhiEventEngine<B extends EventProcessorBindingParams> i
           schemaInfo, SourceInfo sourceInfo) {
     Map<String, Object> outMap = new HashMap<>();
     for (int i = 0; i < sortedEventKeys.size(); i++) {
+
+      if (event.getData(i) instanceof LinkedList) {
         List<Object> tmp = (List<Object>) event.getData(i);
-      outMap.put(sortedEventKeys.get(i), tmp.get(0));
+        outMap.put(sortedEventKeys.get(i), tmp.get(0));
+      }
+      else {
+        outMap.put(sortedEventKeys.get(i), event.getData(i));
+      }
+
     }
     return EventFactory.fromMap(outMap, sourceInfo, schemaInfo);
   }