Exception: Moromi::Error::Default

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

Constant Summary collapse

DEFAULT_CODE =
0
DEFAULT_TITLE =
'moromi-error.an_error_has_occurred'
DEFAULT_ERRORS =
['moromi-error.an_error_has_occurred']

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(code: nil, error_title: nil, errors: self.class::DEFAULT_ERRORS, message: nil, debug_message: nil, detail_url: nil, skip_logging: false, log_severity: Logger::Severity::ERROR) ⇒ Default

Returns a new instance of Default.

Parameters:

  • code (Integer) (defaults to: nil)
  • error_title (String) (defaults to: nil)
  • errors (Array<String>) (defaults to: self.class::DEFAULT_ERRORS)
  • message (String) (defaults to: nil)
  • debug_message (String) (defaults to: nil)
  • detail_url (String) (defaults to: nil)
  • skip_logging (Boolean) (defaults to: false)
  • log_severity (Integer) (defaults to: Logger::Severity::ERROR)


22
23
24
25
26
27
28
29
30
31
# File 'lib/moromi/error/errors.rb', line 22

def initialize(code: nil, error_title: nil, errors: self.class::DEFAULT_ERRORS, message: nil, debug_message: nil, detail_url: nil, skip_logging: false, log_severity: Logger::Severity::ERROR)
  super(message)
  @code = code
  @error_title = error_title
  @errors = errors
  @debug_message = debug_message if Moromi::Error.config.debug
  @detail_url = detail_url
  @skip_logging = skip_logging
  @log_severity = log_severity
end

Instance Attribute Details

#debug_messageString (readonly)

Returns:

  • (String)


56
57
58
# File 'lib/moromi/error/errors.rb', line 56

def debug_message
  @debug_message
end

#detail_urlObject

Returns the value of attribute detail_url.



12
13
14
# File 'lib/moromi/error/errors.rb', line 12

def detail_url
  @detail_url
end

#errorsObject (readonly)

Returns the value of attribute errors.



8
9
10
# File 'lib/moromi/error/errors.rb', line 8

def errors
  @errors
end

#log_severityObject (readonly)

Returns the value of attribute log_severity.



10
11
12
# File 'lib/moromi/error/errors.rb', line 10

def log_severity
  @log_severity
end

#original_exceptionObject

Returns the value of attribute original_exception.



11
12
13
# File 'lib/moromi/error/errors.rb', line 11

def original_exception
  @original_exception
end

Class Method Details

.make(exception) ⇒ Moromi::Error::Default

Parameters:

  • exception (Exception)

Returns:



35
36
37
38
39
40
41
# File 'lib/moromi/error/errors.rb', line 35

def self.make(exception)
  return exception if exception.is_a? ::Moromi::Error::Default

  new(debug_message: exception.try(:message) || '').tap do |e|
    e.original_exception = exception
  end
end

Instance Method Details

#cleaned_backtraceObject



66
67
68
# File 'lib/moromi/error/errors.rb', line 66

def cleaned_backtrace
  ::Rails.backtrace_cleaner.clean(backtrace || [])
end

#codeObject



43
44
45
# File 'lib/moromi/error/errors.rb', line 43

def code
  @code || self.class::DEFAULT_CODE
end

#error_titleObject



51
52
53
# File 'lib/moromi/error/errors.rb', line 51

def error_title
  translate(@error_title || self.class::DEFAULT_TITLE)
end

#skip_logging?Boolean

Returns:

  • (Boolean)


62
63
64
# File 'lib/moromi/error/errors.rb', line 62

def skip_logging?
  @skip_logging
end