Google Http Java客户端解析到枚举

Google Http Java客户端解析到枚举,java,json,Java,Json,因此,我知道可以使用注释将json值解析到枚举中,但是如果json中的值与使用@value注释的任何值不匹配,会发生什么行为。例如,假设一个api决定添加一个客户端不知道的新类型。它的值是否设置为null,或者是否存在异常?有没有办法将枚举值设置为默认的“全部捕获”值?根据,您将获得NullPointerException 编辑 参考内容: 我有一个名为Job的对象,其枚举字段statusCode包含 应用程序编程接口。只要 枚举处理所有可能返回的值 状态\代码字段,json解析工作正常 pub

因此,我知道可以使用注释将json值解析到枚举中,但是如果json中的值与使用
@value
注释的任何值不匹配,会发生什么行为。例如,假设一个api决定添加一个客户端不知道的新类型。它的值是否设置为null,或者是否存在异常?有没有办法将枚举值设置为默认的“全部捕获”值?

根据,您将获得
NullPointerException

编辑 参考内容:

我有一个名为Job的对象,其枚举字段statusCode包含 应用程序编程接口。只要 枚举处理所有可能返回的值 状态\代码字段,json解析工作正常

public static class Job {

    @Key("status_code")
    public JobStatus statusCode;
}

public enum JobStatus {

    @Value("starting")
    STARTING
}
但是,如果在该字段中返回未知值,则得到

NullPointerException:
java.lang.NullPointerException
  at com.google.api.client.util.Data.parsePrimitiveValue(Data.java:445)
  at com.google.api.client.json.JsonParser.parseValue(JsonParser.java:795)
  at com.google.api.client.json.JsonParser.parse(JsonParser.java:438)
  at com.google.api.client.json.JsonParser.parseValue(JsonParser.java:745)
  at com.google.api.client.json.JsonParser.parse(JsonParser.java:358)
  at com.google.api.client.json.JsonParser.parse(JsonParser.java:331)
  at com.google.api.client.json.JsonObjectParser.parseAndClose(JsonObjectParser.java:87)
  at com.google.api.client.json.JsonObjectParser.parseAndClose(JsonObjectParser.java:81)
  at com.google.api.client.http.HttpResponse.parseAs(HttpResponse.java:459)
我希望这个代码是健壮的,这样如果一个未知的值 返回时,它将被视为null,而不是抛出 异常,不返回作业对象。有什么办法吗 这个


为什么不使用类似的工具呢?一切都已经存在了。或者,如果您想保存并读回对象,您可以不用编写自己的解析器?它们的javadoc非常简单,但似乎建议使用名为
而不是
的枚举值作为总括。如果您定义了其中一个,会发生什么?请在答案中包含更多细节。如果链接页面被删除或变得不可访问,则此仅链接的答案将变得不相关。