Module: ErrorResponse
- Defined in:
- lib/error_response.rb,
lib/error_response/helper.rb,
lib/error_response/configuration.rb,
lib/error_response/request_error.rb
Defined Under Namespace
Modules: Helper
Classes: Configuration, RequestError
Constant Summary
collapse
- RESOLVER_KEYWORD_PARAMETER_TYPES =
%i[key keyreq keyrest].freeze
Class Attribute Summary collapse
Class Method Summary
collapse
Class Attribute Details
.configuration ⇒ Object
17
18
19
|
# File 'lib/error_response.rb', line 17
def configuration
@configuration ||= Configuration.new
end
|
Class Method Details
.all ⇒ Object
25
26
27
|
# File 'lib/error_response.rb', line 25
def all
yaml_hash
end
|
21
22
23
|
# File 'lib/error_response.rb', line 21
def configure
yield(configuration)
end
|
.resolve_error_message(key:, error_message: nil, error_data: {}, context: nil) ⇒ Object
46
47
48
49
50
51
52
53
|
# File 'lib/error_response.rb', line 46
def resolve_error_message(key:, error_message: nil, error_data: {}, context: nil)
resolver = configuration.error_message_resolver
return error_message unless resolver.respond_to?(:call)
call_resolver(resolver, key, error_message, error_data, context)
rescue StandardError
error_message
end
|
.to_api(key, message = nil) ⇒ Object
35
36
37
38
39
40
41
42
43
44
|
# File 'lib/error_response.rb', line 35
def to_api(key, message = nil)
json = deep_dup(yaml_hash)
json = json[key.to_s] || { "error_code" => 500_000, "error_message" => key.to_s }
json["error_key"] = key.to_s
json["error_message"] += ": #{message}" unless message.nil?
{
status: parse_status(json["error_code"]),
json: json
}
end
|
.to_hash(key) ⇒ Object
29
30
31
32
33
|
# File 'lib/error_response.rb', line 29
def to_hash(key)
return {} unless yaml_hash.key?(key.to_s)
yaml_hash[key.to_s].merge({ "error_key" => key.to_s })
end
|