Details
-
Improvement
-
Resolution: Unresolved
-
Major - P3
-
None
-
4.3.4
Description
The Pojo codec is limited in handling multiple level generic types that are passed through the class heirarchy.
Take the following classes:
abstract class GenericBaseModel<A, B, C> {
|
|
|
private A alpha;
|
private B bravo;
|
private C charlie;
|
|
// ... getters & setters
|
}
|
|
|
public abstract class GenericPassThroughModel<A, B, C> extends GenericBaseModel<C, B, A> {
|
|
|
}
|
|
|
public final class GenericPassThroughModelImpl extends GenericPassThroughModel<List<String>, Integer, String> {
|
|
|
}
|
The concrete types of GenericPassThroughModelImpl are lost due to the PojoCodecs type detection.
See first comment for the previous description.