diff --git a/pom.xml b/pom.xml index 794a1e3..d74d11d 100644 --- a/pom.xml +++ b/pom.xml @@ -86,6 +86,11 @@ moshi 1.12.0 + + dev.zacsweers.moshix + moshi-records-reflect + 0.11.0 + diff --git a/src/main/java/org/warp/commonutils/moshi/MoshiPolymorphic.java b/src/main/java/org/warp/commonutils/moshi/MoshiPolymorphic.java index 2bfe16b..fcfe58f 100644 --- a/src/main/java/org/warp/commonutils/moshi/MoshiPolymorphic.java +++ b/src/main/java/org/warp/commonutils/moshi/MoshiPolymorphic.java @@ -6,6 +6,7 @@ import com.squareup.moshi.JsonReader; import com.squareup.moshi.JsonReader.Options; import com.squareup.moshi.JsonWriter; import com.squareup.moshi.Moshi; +import dev.zacsweers.moshix.records.RecordsJsonAdapterFactory; import java.io.IOException; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; @@ -43,7 +44,7 @@ public abstract class MoshiPolymorphic { private synchronized void initialize() { if (!this.initialized) { this.initialized = true; - var abstractMoshiBuilder = new Moshi.Builder(); + var abstractMoshiBuilder = new Moshi.Builder().add(new RecordsJsonAdapterFactory()); var abstractClasses = getAbstractClasses(); var concreteClasses = getConcreteClasses(); var extraAdapters = getExtraAdapters();