Exception: HumanError::Errors::ParameterMissingError

Inherits:
RuntimeError
  • Object
show all
Includes:
HumanError::Error, CrudError
Defined in:
lib/human_error/errors/request_errors/parameter_missing_error.rb

Instance Attribute Summary collapse

Attributes included from CrudError

#action, #resource_id, #resource_name

Attributes included from HumanError::Error

#code, #developer_documentation_url, #external_documentation_url, #id, #message

Class Method Summary collapse

Instance Method Summary collapse

Methods included from CrudError

#initialize

Methods included from HumanError::Error

#as_json, included, #initialize, #to_json, #to_s

Instance Attribute Details

#parameterObject

Returns the value of attribute parameter.



7
8
9
# File 'lib/human_error/errors/request_errors/parameter_missing_error.rb', line 7

def parameter
  @parameter
end

Class Method Details

.convert(original_error, overrides = {}) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/human_error/errors/request_errors/parameter_missing_error.rb', line 9

def self.convert(original_error, overrides = {})
  initialization_parameters = {}

  case original_error.class.name
  when 'ActionController::ParameterMissing'
    initialization_parameters = {
      parameter: original_error.param,
    }
  end

  new(initialization_parameters.merge(overrides))
end

Instance Method Details

#detailObject



30
31
32
33
# File 'lib/human_error/errors/request_errors/parameter_missing_error.rb', line 30

def detail
  "When attempting to #{action} a #{resource_name}, '#{parameter}' is a " \
  'required parameter.'
end

#http_statusObject



22
23
24
# File 'lib/human_error/errors/request_errors/parameter_missing_error.rb', line 22

def http_status
  400
end

#sourceObject



35
36
37
38
39
# File 'lib/human_error/errors/request_errors/parameter_missing_error.rb', line 35

def source
  {
    'required_parameter' => parameter,
  }
end

#titleObject



26
27
28
# File 'lib/human_error/errors/request_errors/parameter_missing_error.rb', line 26

def title
  'Missing Parameter'
end