Разобрать ключ JSON, который является объектом или массивом объекта
Можно ли в Moshi создать адаптер типа, который бы анализировал как объект, так и список объектов одного типа?
Например, иногда JSON это:
{
"person": {...}
}
В других случаях это:
{
"person": [{...}, {...}]
}
В идеале я бы хотел, чтобы объект Java выглядел так:
class PersonContainer {
@PersonsList List<Person> persons; // @List(Person.class) would be even better
}
1 ответ
Я бы посоветовал вам сделать именно то, что вы сказали, адаптер.
создайте функцию (адаптер), чтобы проверить, является ли он единственным объектом или массивом, вероятно, на основе символа '[', и адаптер направит ввод в правильную функцию обработки.
Другой способ - предположить, что все входные данные являются массивами и работают оттуда.