Создание и редактирование графов репликации#

Пререквизиты#

Пользователь авторизовался под ролью APPADMIN.

Процесс#

  1. Пользователь инициирует создание нового графа в UI консоли.

  2. Браузер направляет POST-запрос на сервис консоли /graph с параметрами графа.

  3. Консоль подключается к служебной базе данных, куда записывает информацию о графе.

  4. Консоль возвращает ответ с кодом 201 и JSON с описанием графа.

  5. Граф отображается в UI в зависимости от параметров из JSON-ответа.

  6. Пользователь инициирует редактирование графа в UI консоли.

  7. Браузер направляет PUT-запрос на сервис консоли `/graph/bulk с параметрами графа.

  8. Консоль записывает информацию о графе в базу данных.

  9. Консоль возвращает ответ с кодом 200 и JSON с описанием графа.

  10. Граф отображается в UI в зависимости от параметров из JSON-ответа.

  11. Пользователь инициирует удаление графа в UI консоли.

  12. Браузер направляет DELETE-запрос на сервис консоли /graph/{graphID} с идентификатором графа.

  13. Консоль удаляет информацию о графе из базы данных.

  14. Консоль возвращает код 204.

  15. Удаление графа визуально отображается в UI.

Альтернативные сценарии#

Если в БД направлено некорректное тело запроса о создании или редактировании графа, возвращается ответ с кодом 400. Граф на стенде не создается и не редактируется, отображается сообщение об ошибке.

Если в запросе о создании графа нарушен первичный ключ, возвращается ответ с кодом 422. Новый граф на стенде не создается, отображается сообщение об ошибке.

Если служебная БД недоступна, возвращается ответ с кодом 503. Граф на стенде не создается, не редактируется, не удаляется, отображается сообщение об ошибке.

Если граф не найден в БД, возвращается ответ с кодом 404. Граф на стенде не редактируется, не удаляется, отображается сообщение об ошибке.