Правила для Джерси для анализа десериализации подтипа JSON / Jackson
Я получаю JSON так:
@POST
@Path("log")
public Map<String, List<OperationResult>> log(Stats stats) {
..
}
Примеры JSON:
{
"eventType": 1
"params": {
"field1" : 10
}
}
{
"eventType": 2
"params": {
"field2" : "ten"
}
}
У меня есть структура классов (они генерируются jsonschema2pojo, предположим, это не имеет значения):
interface Params;
class Params1 implements Params{ public int field1; }
class Params2 implements Params{ public String field2; }
class Stats {
public int eventType;
public Params params;
}
Как я могу заставить Джерси анализировать JSON так, чтобы, если eventType = 1, тогда stats.params становился экземпляром Params1, а другой - Params2?