Я пытаюсь разобрать структуру json https://developers.nest.com/documentation/api-reference
Где устройство может быть разных типов, я хочу, чтобы Джексон создавал соответствующие объекты. Термостат / SmokeAlarm, Камера и т. Д.
@Data
@ToString
public class Nest {
@JsonProperty("metadata")
private Metadata metadata;
@JsonProperty("structures")
private HashMap<String, Structure> structures;
@JsonProperty("devices")
private HashMap<String, HashMap<String, Device>> devices;
}
Как бы яиспользуйте @ JsonTypeinfo, чтобы решить, какой тип инстантировать, основываясь на значениях в ключах.
Другой вопрос - как я избавлюсь от всех этих многоуровневых вложений, и что cal получит что-то вроде
@JsonProperty("devices")
private List<Device> devices;
parsedпо ключам / подтипам