From c20e23fb2f97a77153aa82d6f3711429f5f08335 Mon Sep 17 00:00:00 2001 From: Francisco Javier Tirado Sarti Date: Mon, 23 Sep 2024 11:25:48 +0200 Subject: [PATCH] Use OneOfValueProvider for serialization Signed-off-by: Francisco Javier Tirado Sarti --- .../serialization/SerializeHelper.java | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/api/src/main/java/io/serverlessworkflow/serialization/SerializeHelper.java b/api/src/main/java/io/serverlessworkflow/serialization/SerializeHelper.java index 5aaf2d6b..e074a656 100644 --- a/api/src/main/java/io/serverlessworkflow/serialization/SerializeHelper.java +++ b/api/src/main/java/io/serverlessworkflow/serialization/SerializeHelper.java @@ -16,21 +16,12 @@ package io.serverlessworkflow.serialization; import com.fasterxml.jackson.core.JsonGenerator; +import io.serverlessworkflow.api.OneOfValueProvider; import java.io.IOException; -import java.lang.reflect.Method; public class SerializeHelper { - public static void serializeOneOf(JsonGenerator jgen, Object item) throws IOException { - try { - for (Method m : item.getClass().getDeclaredMethods()) { - Object value = m.invoke(item); - if (value != null) { - jgen.writeObject(value); - break; - } - } - } catch (ReflectiveOperationException ex) { - throw new IOException(ex); - } + public static void serializeOneOf(JsonGenerator jgen, OneOfValueProvider item) + throws IOException { + jgen.writeObject(item.get()); } }