我很难在AutoValue
. 我有一个提供交易细节的 API。某些字段存在于所有类型的交易中,但细节不存在。每种交易类型的详细信息都是特定的。
交易类型 1 json 响应:
{
"status": "Processing",
"date": "2018-24-1",
"specific_1": "abc",
"specific_2": "xyz"
}
交易类型 2 json 响应:
{
"status": "Cancelled",
"date": "2018-23-1",
"specific_3": "def",
"specific_4": "ghi"
}
如果没有AutoValue
,我只需要创建一个Parent Class
具有status
并将date
其扩展到具有特定details
字段的特定对象。
家长班:
public class Parent {
@SerializedName("status")
private String status;
@SerializedName("date")
private String date;
//getter setters...
}
第一儿童班:
public class FirstChild extends Parent {
@SerializedName("specific_1")
private String specific1;
@SerializedName("specific_2")
private String specific2;
//getter setters...
}
二孩班:
public class SecondChild extends Parent {
@SerializedName("specific_3")
private String specific3;
@SerializedName("specific_4")
private String specific4;
//getter setters...
}
两个孩子都将继承status
anddate
而不在每个对象上指定它。我的问题是AutoValue
不支持这个。没有在每个对象上声明所有通用字段的解决方法是什么?