Exception: RestClient::Exception

Inherits:
RuntimeError
  • Object
show all
Defined in:
lib/restclient/exceptions.rb

Overview

This is the base RestClient exception class. Rescue it if you want to catch any exception that your request might raise You can get the status code by e.http_code, or see anything about the response via e.response. For example, the entire result body (which is probably an HTML error page) is e.response.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(response = nil, initial_response_code = nil) ⇒ Exception

Returns a new instance of Exception.



86
87
88
89
90
91
92
# File 'lib/restclient/exceptions.rb', line 86

def initialize response = nil, initial_response_code = nil
  @response = response
  @initial_response_code = initial_response_code

  # compatibility: this make the exception behave like a Net::HTTPResponse
  response.extend ResponseForException if response
end

Instance Attribute Details

#messageObject



115
116
117
# File 'lib/restclient/exceptions.rb', line 115

def message
  @message || self.class.name
end

#responseObject

Returns the value of attribute response.



83
84
85
# File 'lib/restclient/exceptions.rb', line 83

def response
  @response
end

Instance Method Details

#http_bodyObject



103
104
105
# File 'lib/restclient/exceptions.rb', line 103

def http_body
  @response.body if @response
end

#http_codeObject



94
95
96
97
98
99
100
101
# File 'lib/restclient/exceptions.rb', line 94

def http_code
  # return integer for compatibility
  if @response
    @response.code.to_i
  else
    @initial_response_code
  end
end

#inspectObject



107
108
109
# File 'lib/restclient/exceptions.rb', line 107

def inspect
  "#{message}: #{http_body}"
end

#to_sObject



111
112
113
# File 'lib/restclient/exceptions.rb', line 111

def to_s
  inspect
end