Exception: Beekeeper::Error

Inherits:
StandardError
  • Object
show all
Defined in:
lib/beekeeper/error.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(status_code, msg, options = {}) ⇒ Error

Returns a new instance of Error.



6
7
8
9
10
11
12
# File 'lib/beekeeper/error.rb', line 6

def initialize(status_code, msg, options = {})
  super(msg)
  @status_code = status_code
  @errors = get_errors(options)
  @data = options[:data] || {}
  @status = @status_code
end

Instance Attribute Details

#dataObject (readonly)

Returns the value of attribute data.



4
5
6
# File 'lib/beekeeper/error.rb', line 4

def data
  @data
end

#errorsObject (readonly)

Returns the value of attribute errors.



4
5
6
# File 'lib/beekeeper/error.rb', line 4

def errors
  @errors
end

#statusObject (readonly)

Returns the value of attribute status.



4
5
6
# File 'lib/beekeeper/error.rb', line 4

def status
  @status
end

#status_codeObject (readonly)

Returns the value of attribute status_code.



4
5
6
# File 'lib/beekeeper/error.rb', line 4

def status_code
  @status_code
end

Instance Method Details

#get_errors(options) ⇒ Object



14
15
16
17
18
19
20
21
22
# File 'lib/beekeeper/error.rb', line 14

def get_errors(options)
  return [options.delete(:error)] if options[:error].present?
  return options[:errors].errors().messages() if options[:errors].class < ActiveRecord::Base
  return options[:error_map] if options[:error_map]
  return options[:errors] || [{
    code: class_name(options),
    message: self.message
  }]
end