class SmartError::BaseError
The Base Class of Errors
Public Class Methods
new(error, options = {})
click to toggle source
# File lib/smart_error/base_error.rb, line 6 def initialize(error, options = {}) @error = error @options = options&.symbolize_keys! || {} end
Public Instance Methods
as_json()
click to toggle source
# File lib/smart_error/base_error.rb, line 56 def as_json to_h.as_json end
details()
click to toggle source
:nocov:
# File lib/smart_error/base_error.rb, line 20 def details {} end
error_url()
click to toggle source
# File lib/smart_error/base_error.rb, line 24 def error_url SmartError.base_url.to_s + (error_code || 1000).to_s end
extra_message()
click to toggle source
# File lib/smart_error/base_error.rb, line 35 def extra_message if @options[:extra].is_a?(Array) @options[:extra].map(&:to_s).to_sentence elsif @options[:extra].is_a?(String) @options[:extra] end end
full_message()
click to toggle source
# File lib/smart_error/base_error.rb, line 28 def full_message [ @options[:message].present? ? @options[:message] : message, extra_message ].compact.join(': ') end
not_implemented()
click to toggle source
:nocov:
# File lib/smart_error/base_error.rb, line 12 def not_implemented raise NotImplementedError end
Also aliased as: message, error_code
to_h()
click to toggle source
# File lib/smart_error/base_error.rb, line 43 def to_h { message: full_message, details: details, error_url: error_url, error_code: error_code } end
to_json()
click to toggle source
# File lib/smart_error/base_error.rb, line 52 def to_json to_h.to_json end