From 97a9b84712635a57d53cd74fae3701d6aa2c3c6f Mon Sep 17 00:00:00 2001 From: Shijie Sheng Date: Mon, 7 Jul 2025 15:01:50 -0700 Subject: [PATCH 1/3] add deprecation log for TEnumType converter --- .../cadence/converter/TBaseTypeAdapterFactory.java | 10 +++++----- .../cadence/converter/TEnumTypeAdapterFactory.java | 10 ++++++++++ 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/uber/cadence/converter/TBaseTypeAdapterFactory.java b/src/main/java/com/uber/cadence/converter/TBaseTypeAdapterFactory.java index c2f4d2b5b..79f90507b 100644 --- a/src/main/java/com/uber/cadence/converter/TBaseTypeAdapterFactory.java +++ b/src/main/java/com/uber/cadence/converter/TBaseTypeAdapterFactory.java @@ -65,8 +65,8 @@ public void write(JsonWriter jsonWriter, T value) throws IOException { newThriftSerializer().toString((TBase) value, StandardCharsets.UTF_8.name()); jsonWriter.value(result); logger.warn( - "TBase message will no longer be support in cadence-java-client V4, payload {}", - result); + "Thrift message will no longer be support in cadence-java-client V4, payload class name {}", + result.getClass().getName()); } catch (TException e) { throw new DataConverterException("Failed to serialize TBase", e); } @@ -79,13 +79,13 @@ public T read(JsonReader jsonReader) throws IOException { } String value = jsonReader.nextString(); try { - logger.warn( - "TBase message will no longer be support in cadence-java-client V4, payload {}", - value); @SuppressWarnings("unchecked") T instance = (T) typeToken.getRawType().getConstructor().newInstance(); newThriftDeserializer() .deserialize((TBase) instance, value, StandardCharsets.UTF_8.name()); + logger.warn( + "Thrift message will no longer be support in cadence-java-client V4, payload class name {}", + instance.getClass().getName()); return instance; } catch (Exception e) { throw new DataConverterException("Failed to deserialize TBase", e); diff --git a/src/main/java/com/uber/cadence/converter/TEnumTypeAdapterFactory.java b/src/main/java/com/uber/cadence/converter/TEnumTypeAdapterFactory.java index 22e9d1859..f22feb054 100644 --- a/src/main/java/com/uber/cadence/converter/TEnumTypeAdapterFactory.java +++ b/src/main/java/com/uber/cadence/converter/TEnumTypeAdapterFactory.java @@ -26,6 +26,8 @@ import java.io.IOException; import java.lang.reflect.Method; import org.apache.thrift.TEnum; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * Special handling of TEnum serialization and deserialization. This is to support for inline TEnum @@ -34,6 +36,8 @@ */ public class TEnumTypeAdapterFactory implements TypeAdapterFactory { + private static final Logger logger = LoggerFactory.getLogger(TEnumTypeAdapterFactory.class); + @Override public TypeAdapter create(Gson gson, TypeToken typeToken) { // this class only serializes 'TEnum' and its subtypes @@ -44,6 +48,9 @@ public TypeAdapter create(Gson gson, TypeToken typeToken) { new TypeAdapter() { @Override public void write(JsonWriter jsonWriter, T value) throws IOException { + logger.warn( + "Thrift message will no longer be support in cadence-java-client V4, payload class name {}", + value.getClass().getName()); jsonWriter.value(((TEnum) value).getValue()); } @@ -54,6 +61,9 @@ public T read(JsonReader jsonReader) throws IOException { Method m = (typeToken.getRawType().getDeclaredMethod("findByValue", Integer.TYPE)); @SuppressWarnings("unchecked") T instance = (T) m.invoke(null, value); + logger.warn( + "Thrift message will no longer be support in cadence-java-client V4, payload class name {}", + instance.getClass().getName()); return instance; } catch (Exception e) { throw new DataConverterException("Failed to deserilize TEnum", e); From 1fc41e0498ae62c929583815057e9b3ec41671e0 Mon Sep 17 00:00:00 2001 From: Shijie Sheng Date: Tue, 8 Jul 2025 09:22:23 -0700 Subject: [PATCH 2/3] fix typo --- .../com/uber/cadence/converter/TBaseTypeAdapterFactory.java | 4 ++-- .../com/uber/cadence/converter/TEnumTypeAdapterFactory.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/uber/cadence/converter/TBaseTypeAdapterFactory.java b/src/main/java/com/uber/cadence/converter/TBaseTypeAdapterFactory.java index 79f90507b..412bd69db 100644 --- a/src/main/java/com/uber/cadence/converter/TBaseTypeAdapterFactory.java +++ b/src/main/java/com/uber/cadence/converter/TBaseTypeAdapterFactory.java @@ -65,7 +65,7 @@ public void write(JsonWriter jsonWriter, T value) throws IOException { newThriftSerializer().toString((TBase) value, StandardCharsets.UTF_8.name()); jsonWriter.value(result); logger.warn( - "Thrift message will no longer be support in cadence-java-client V4, payload class name {}", + "Thrift message will no longer be supported for data convertion in cadence-java-client V4, payload class name {}", result.getClass().getName()); } catch (TException e) { throw new DataConverterException("Failed to serialize TBase", e); @@ -84,7 +84,7 @@ public T read(JsonReader jsonReader) throws IOException { newThriftDeserializer() .deserialize((TBase) instance, value, StandardCharsets.UTF_8.name()); logger.warn( - "Thrift message will no longer be support in cadence-java-client V4, payload class name {}", + "Thrift message will no longer be supported for data convertion in cadence-java-client V4, payload class name {}", instance.getClass().getName()); return instance; } catch (Exception e) { diff --git a/src/main/java/com/uber/cadence/converter/TEnumTypeAdapterFactory.java b/src/main/java/com/uber/cadence/converter/TEnumTypeAdapterFactory.java index f22feb054..f256c0765 100644 --- a/src/main/java/com/uber/cadence/converter/TEnumTypeAdapterFactory.java +++ b/src/main/java/com/uber/cadence/converter/TEnumTypeAdapterFactory.java @@ -49,7 +49,7 @@ public TypeAdapter create(Gson gson, TypeToken typeToken) { @Override public void write(JsonWriter jsonWriter, T value) throws IOException { logger.warn( - "Thrift message will no longer be support in cadence-java-client V4, payload class name {}", + "Thrift message will no longer be supported for data convertion in cadence-java-client V4, payload class name {}", value.getClass().getName()); jsonWriter.value(((TEnum) value).getValue()); } @@ -62,7 +62,7 @@ public T read(JsonReader jsonReader) throws IOException { @SuppressWarnings("unchecked") T instance = (T) m.invoke(null, value); logger.warn( - "Thrift message will no longer be support in cadence-java-client V4, payload class name {}", + "Thrift message will no longer be supported for data convertion in cadence-java-client V4, payload class name {}", instance.getClass().getName()); return instance; } catch (Exception e) { From 573afabce510abe809b0b4a6fd5f7a8b92d323b8 Mon Sep 17 00:00:00 2001 From: Shijie Sheng Date: Tue, 8 Jul 2025 15:17:13 -0700 Subject: [PATCH 3/3] fix typo --- .../com/uber/cadence/converter/TBaseTypeAdapterFactory.java | 4 ++-- .../com/uber/cadence/converter/TEnumTypeAdapterFactory.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/uber/cadence/converter/TBaseTypeAdapterFactory.java b/src/main/java/com/uber/cadence/converter/TBaseTypeAdapterFactory.java index 412bd69db..5fcb32cd0 100644 --- a/src/main/java/com/uber/cadence/converter/TBaseTypeAdapterFactory.java +++ b/src/main/java/com/uber/cadence/converter/TBaseTypeAdapterFactory.java @@ -65,7 +65,7 @@ public void write(JsonWriter jsonWriter, T value) throws IOException { newThriftSerializer().toString((TBase) value, StandardCharsets.UTF_8.name()); jsonWriter.value(result); logger.warn( - "Thrift message will no longer be supported for data convertion in cadence-java-client V4, payload class name {}", + "Thrift message will no longer be supported for data conversion in cadence-java-client V4, payload class name {}", result.getClass().getName()); } catch (TException e) { throw new DataConverterException("Failed to serialize TBase", e); @@ -84,7 +84,7 @@ public T read(JsonReader jsonReader) throws IOException { newThriftDeserializer() .deserialize((TBase) instance, value, StandardCharsets.UTF_8.name()); logger.warn( - "Thrift message will no longer be supported for data convertion in cadence-java-client V4, payload class name {}", + "Thrift message will no longer be supported for data conversion in cadence-java-client V4, payload class name {}", instance.getClass().getName()); return instance; } catch (Exception e) { diff --git a/src/main/java/com/uber/cadence/converter/TEnumTypeAdapterFactory.java b/src/main/java/com/uber/cadence/converter/TEnumTypeAdapterFactory.java index f256c0765..63f02ba8d 100644 --- a/src/main/java/com/uber/cadence/converter/TEnumTypeAdapterFactory.java +++ b/src/main/java/com/uber/cadence/converter/TEnumTypeAdapterFactory.java @@ -49,7 +49,7 @@ public TypeAdapter create(Gson gson, TypeToken typeToken) { @Override public void write(JsonWriter jsonWriter, T value) throws IOException { logger.warn( - "Thrift message will no longer be supported for data convertion in cadence-java-client V4, payload class name {}", + "Thrift message will no longer be supported for data conversion in cadence-java-client V4, payload class name {}", value.getClass().getName()); jsonWriter.value(((TEnum) value).getValue()); } @@ -62,7 +62,7 @@ public T read(JsonReader jsonReader) throws IOException { @SuppressWarnings("unchecked") T instance = (T) m.invoke(null, value); logger.warn( - "Thrift message will no longer be supported for data convertion in cadence-java-client V4, payload class name {}", + "Thrift message will no longer be supported for data conversion in cadence-java-client V4, payload class name {}", instance.getClass().getName()); return instance; } catch (Exception e) {