Имеются несколько видов json объектов которые должны приходить на 1 контроллер
@PostMapping("/")
public void execute(@Valid @RequestBody ExecuteRequest request) {
}
public class ExecuteRequest {
@NotBlank
private String method;
@NotBlank
private Object payload;
}
в method всегда будет приходить метод необходимый, а вот в payload в зависимости от метода должны приходить разные данные, как такое необходимо описать? Можно просто примерно, т.к. даже не знаю как записать запрос в google.
примеры json
{"method": "cd", "payload": {"method": "create", "name": "testCd"}}
{"method": "file", "payload": {"method": "create", "name": "testCd", "path": "D:/"}}
{"method": "cloud", "payload": {"name": "test name", "url": "cloudUrl"}}
т.е. поля могут как присутствовать, так и отсутствовать, при этом необходимо payload валидировать для каждого метода п о своему