class Commons::Errors::ErrorBase

Attributes

backtrace[R]
code[R]
detail[R]
message[R]
meta[R]
title[R]

Public Class Methods

new(message = nil, backtrace = nil, status: :internal_server_error, code: I18n.t('status_code.IER5000_internal_server_error.code'), title: I18n.t('status_code.IER5000_internal_server_error.title'), detail: I18n.t('status_code.IER5000_internal_server_error.detail'), meta: {}) click to toggle source
# File lib/commons/errors/error_base.rb, line 29
def initialize(message = nil,
               backtrace = nil,
               status: :internal_server_error,
               code: I18n.t('status_code.IER5000_internal_server_error.code'),
               title: I18n.t('status_code.IER5000_internal_server_error.title'),
               detail: I18n.t('status_code.IER5000_internal_server_error.detail'),
               meta: {})

  @message = message
  @backtrace = backtrace
  @title = title
  @detail = detail
  @code = code
  @status = status
  @meta = meta
  @meta.merge!(message: message) unless @meta.nil? || @message.nil?
  @meta = nil if @meta.blank?
end

Public Instance Methods

status() click to toggle source
# File lib/commons/errors/error_base.rb, line 59
def status
  Rack::Utils::SYMBOL_TO_STATUS_CODE[@status]
end
to_hash() click to toggle source

returns the error as its hash representation

# File lib/commons/errors/error_base.rb, line 49
def to_hash
  {
    code: code,
    title: title,
    status: status,
    detail: detail,
    meta: meta
  }
end