class DeltaCloud::HTTPError::ExceptionHandler

Attributes

http_status_code[R]
message[R]
trace[R]

Public Class Methods

new(status_code, message=nil, opts={}, backtrace=nil, &block) click to toggle source
# File lib/errors.rb, line 67
def initialize(status_code, message=nil, opts={}, backtrace=nil, &block)
  @http_status_code = status_code.to_i
  @trace = backtrace
  @message = message || client_error_messages[status_code] || 'No error message received'
  @options = opts
  instance_eval(&block) if block_given?
end

Public Instance Methods

on(code, exception_class) click to toggle source
# File lib/errors.rb, line 75
def on(code, exception_class)
  if code == @http_status_code
    raise exception_class.new(code, @message, @options, @trace)
  end
end