module ErrorResponder::Extenders::Serialize

Public Class Methods

error(err_code, key = nil, message = nil) click to toggle source
# File lib/error_responder/extenders/serialize.rb, line 5
def error(err_code, key = nil, message = nil)
  data = {}
  data[:status] = err_code.to_s
  data[:info] = Rack::Utils::HTTP_STATUS_CODES[err_code]

  data[:errors] = {}
  data[:errors][key] = message if key.present? && message.present?

  data
end
serialize(errors, options = {}) click to toggle source
# File lib/error_responder/extenders/serialize.rb, line 16
def serialize(errors, options = {})
  return if errors.nil?

  json = {}
  json[:status] = 409
  json[:info]   = Rack::Utils::HTTP_STATUS_CODES[409]
  json[:errors] = {}

  errors.to_hash(true).each do |key, message|
    json[:errors][key] = message.join('. ') + '.'
  end

  json[options[:key]] = options[:value] if options.present?

  json
end