Let's say I have a generic interface
Inter<T>, configured via
@JsonDeserialize(as = Impl.class) to always deserialize as Impl.Can I somehow ask Jackson to fully refine the a type into its deserializable version, so that for e.g. Inter<Inter<Number>> I get Impl<Impl<Number>>?
I'm aware of the following methods that get me halfway there:
DeserializerFactory#mapAbstractType(...)AnnotationIntrospector#refineDeserializationType(...)
But with both of these I get Impl<Inter<Number>> and not Impl<Impl<Number>>, i.e. only one level got refined.
If there a method to get recursively refined type? Also, is any of the 2 methods I listed the correct way to refine one level?
Is this usage even supported or am I hacking at internal stuff here?