Кажется, что все игнорируют часть вашего вопроса типа enum.
Хотя канонического источника для кодов состояния HTTP не существует, существует простой способ добавить любые недостающие константы состояния, которые вам нужны, к предоставленным javax.ws.rs.core.Response.Status
без добавления каких-либо дополнительных зависимостей в ваш проект.
javax.ws.rs.core.Response.Status
это только одна реализация javax.ws.rs.core.Response.StatusType
интерфейса. Вам просто нужно создать собственное перечисление реализации с определениями нужных вам кодов состояния.
Базовые библиотеки, такие как Javax, Jersey и т. Д., Записываются в интерфейс, а StatusType
не в реализацию Status
(или, безусловно, должны быть) Поскольку ваш новый enum Status реализует StatusType
его, его можно использовать везде, где вы используете javax.ws.rs.core.Response.Status
константу.
Просто помните, что ваш собственный код также должен быть записан в StatusType
интерфейс. Это позволит вам использовать оба ваших собственных кода состояния наряду со «стандартными».
Вот суть простой реализации с константами, определенными для кодов состояния «Informational 1xx»: https://gist.github.com/avendasora/a5ed9acf6b1ee709a14a