Exception: Chip::ServiceException

Inherits:
Common::Exceptions::BackendServiceException show all
Includes:
SentryLogging
Defined in:
lib/chip/service_exception.rb

Constant Summary collapse

UNMAPPED_KEY =
'unmapped_service_exception'

Instance Attribute Summary

Attributes inherited from Common::Exceptions::BackendServiceException

#key, #original_body, #original_status, #response_values

Instance Method Summary collapse

Methods included from SentryLogging

#log_exception_to_sentry, #log_message_to_sentry, #non_nil_hash?, #normalize_level, #rails_logger, #set_sentry_metadata

Methods inherited from Common::Exceptions::BackendServiceException

#detail, #errors, #message, #render_overides, #source, #status, #va900?, #va900_hint, #va900_warning, #validate_arguments!

Methods inherited from Common::Exceptions::BaseError

#errors, #i18n_data, #i18n_field, #i18n_interpolated, #log_to_sentry?, #message, #sentry_type, #status_code

Constructor Details

#initialize(key, response_values = {}, original_status = nil, original_body = nil) ⇒ ServiceException

Returns a new instance of ServiceException.



11
12
13
# File 'lib/chip/service_exception.rb', line 11

def initialize(key, response_values = {}, original_status = nil, original_body = nil)
  super(key, response_values, original_status, original_body)
end

Instance Method Details

#codeObject (private)



17
18
19
20
21
22
23
# File 'lib/chip/service_exception.rb', line 17

def code
  if key.present? && I18n.exists?("chip.exceptions.#{key}")
    key
  else
    UNMAPPED_KEY
  end
end

#i18n_keyObject (private)



25
26
27
# File 'lib/chip/service_exception.rb', line 25

def i18n_key
  "chip.exceptions.#{code}"
end