2

我很难在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...
}

两个孩子都将继承statusanddate而不在每个对象上指定它。我的问题是AutoValue不支持这个。没有在每个对象上声明所有通用字段的解决方法是什么?

4

0 回答 0