Module: ActAsJsonapi::StatusCodeResponse
- Defined in:
- lib/act_as_jsonapi/status_code_response.rb
Constant Summary collapse
- SYMBOL_TO_STATUS_CODE =
Rack::Utils::SYMBOL_TO_STATUS_CODE
- STATUS_CODE_TO_SYMBOL =
SYMBOL_TO_STATUS_CODE.invert
Class Method Summary collapse
- .serializable(error_status, detail, detail_meta) ⇒ Object
- .serializable_from_int(code, detail, detail_meta) ⇒ Object
- .serializable_from_sym(error_sym, detail, detail_meta) ⇒ Object
Class Method Details
.serializable(error_status, detail, detail_meta) ⇒ Object
6 7 8 9 10 11 12 |
# File 'lib/act_as_jsonapi/status_code_response.rb', line 6 def self.serializable(error_status, detail, ) if error_status.kind_of? Integer serializable_from_int(error_status, detail, ) else serializable_from_sym(error_status, detail, ) end end |
.serializable_from_int(code, detail, detail_meta) ⇒ Object
14 15 16 17 18 19 20 21 |
# File 'lib/act_as_jsonapi/status_code_response.rb', line 14 def self.serializable_from_int(code, detail, ) code_i = code.to_i error_sym = STATUS_CODE_TO_SYMBOL[code_i] return {} unless error_sym serializable error_sym, detail, end |
.serializable_from_sym(error_sym, detail, detail_meta) ⇒ Object
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/act_as_jsonapi/status_code_response.rb', line 23 def self.serializable_from_sym(error_sym, detail, ) status_code = SYMBOL_TO_STATUS_CODE[error_sym] return {} unless status_code error_name = error_sym.to_s { id: SecureRandom.uuid, title: error_name.gsub(/_/, ' '), detail: detail, code: status_code.to_s, status: status_code.to_s, meta: { error: } } end |