@@ -97,6 +97,11 @@ CodeBlock createSerializationCode(final FieldInfo field,
9797 CodeBlock createDeserializationCode (final FieldInfo field ,
9898 final SerializationContext ctx );
9999
100+ default void applySerializerTransformation (final TypeSpec .Builder builder ,
101+ final FieldInfo field ,
102+ final SerializationContext ctx ) {
103+ }
104+
100105 default MethodSpec createSerializationMethod (final FieldInfo field ,
101106 final SerializationContext ctx ) {
102107 return MethodSpec .methodBuilder (methodName (field ))
@@ -109,6 +114,11 @@ default MethodSpec createSerializationMethod(final FieldInfo field,
109114 .build ();
110115 }
111116
117+ default void applyDeserializerTransformation (final TypeSpec .Builder builder ,
118+ final FieldInfo field ,
119+ final SerializationContext ctx ) {
120+ }
121+
112122 default MethodSpec createDeserializationMethod (final FieldInfo field ,
113123 final SerializationContext ctx ) {
114124 return MethodSpec .methodBuilder (methodName (field ))
@@ -131,6 +141,12 @@ default void transformType(final TypeSpec.Builder builder,
131141 case SERIALIZE -> transformer .createSerializationMethod (child , ctx );
132142 case DESERIALIZE -> transformer .createDeserializationMethod (child , ctx );
133143 };
144+
145+ switch (methodType ) {
146+ case SERIALIZE -> transformer .applySerializerTransformation (builder , child , ctx );
147+ case DESERIALIZE -> transformer .applyDeserializerTransformation (builder , child , ctx );
148+ }
149+
134150 child .addGeneratedMethod (methodType , method );
135151 return method ;
136152 }
0 commit comments