Допустим у меня есть линк:
/api/v1/m/projects/{p_id}/sprints/{s_id}/tasks/{t_id}
Поддерживаются все CRUD операции.
Но как правильно обработать отсутствие родительских ресурсов? И правильно ли будет слать в ответ сообщение с ошибкой если не будет найден родительский ресурс.
Например:
- Не найден проект - ошибка, проект не найден.
- Проект найден, не найден спринт - ошибка, спринт не найден.
У меня пока решение одно - в сервисе искать по очереди ресурсы:
- Найти проект по id.
- Найти спринт по id и проекту.
- Найти задание по id, проекту и спринту. (Ну или будет достаточно спринта и id).
UPDATE
Я имел в виду поиск задачи. Мне нужно пройтись по родительским ресурсам и проверить есть ли они.
Например:
Метод "Создать задание" делает по очереди:
- Проверка на наличие проекта по id. Если нету - исключение.
- Проверка на наличие спринта по id и проекту. Если нету - исключение.
- Создание задания с заданным спринтом.