class MotherBrain::MBError

Constants

DEFAULT_EXIT_CODE

Public Class Methods

error_code(code = -1) click to toggle source

@param [Integer] code

@return [Integer]

# File lib/mb/errors.rb, line 43
def error_code(code = -1)
  return @error_code if @error_code
  @error_code = code
  Errors.register(self)
  @error_code
end
exit_code(code = DEFAULT_EXIT_CODE) click to toggle source

@param [Integer] code

@return [Integer]

# File lib/mb/errors.rb, line 36
def exit_code(code = DEFAULT_EXIT_CODE)
  @exit_code ||= code
end
new(message = nil) click to toggle source

@param [String] message

Calls superclass method
# File lib/mb/errors.rb, line 52
def initialize(message = nil)
  super(message)
  @message = message
end

Public Instance Methods

error_code() click to toggle source

@return [Integer]

# File lib/mb/errors.rb, line 63
def error_code
  self.class.error_code
end
exit_code() click to toggle source

@return [Integer]

# File lib/mb/errors.rb, line 58
def exit_code
  self.class.exit_code
end
message() click to toggle source

@return [String]

# File lib/mb/errors.rb, line 68
def message
  @message || self.class.to_s
end
to_hash() click to toggle source
# File lib/mb/errors.rb, line 76
def to_hash
  {
    code: error_code,
    message: message
  }
end
to_json(options = {}) click to toggle source

@param [Hash] options

a set of options to pass to MultiJson.encode

@return [String]

# File lib/mb/errors.rb, line 87
def to_json(options = {})
  MultiJson.encode(self.to_hash, options)
end
to_s() click to toggle source
# File lib/mb/errors.rb, line 72
def to_s
  "[err_code]: #{error_code} [message]: #{message}"
end