Exception: HumanError::Errors::ParameterMissingError

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

Instance Attribute Summary collapse

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 HumanError::Error

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

Instance Attribute Details

#parameterObject

Returns the value of attribute parameter.



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

def parameter
  @parameter
end

Class Method Details

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



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

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



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

def detail
  "#{parameter} is a required parameter, but you did not supply it."
end

#http_statusObject



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

def http_status
  400
end

#sourceObject



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

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

#titleObject



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

def title
  'Missing Parameter'
end