class Podio::PodioError

Attributes

code[R]
message[R]
parameters[R]
propagate[RW]
response_body[R]
response_status[R]
sub_code[R]
url[R]

Public Class Methods

new(response_body, response_status, url) click to toggle source
Calls superclass method
# File lib/podio/error.rb, line 6
def initialize(response_body, response_status, url)
  @response_body, @response_status, @url = response_body, response_status, url

  if response_body.is_a?(Hash)
    @code       = response_body["error"]
    @sub_code   = response_body["error_detail"]
    @message    = response_body["error_description"]
    @propagate  = response_body["error_propagate"]
    @parameters = response_body["error_parameters"]
  else
    @message    = response_body.to_s
  end

  super(response_body.inspect)
end

Public Instance Methods

resolved_message(default_message=nil) click to toggle source
# File lib/podio/error.rb, line 22
def resolved_message(default_message=nil)
  if @propagate
    @message
  else
    default_message || "An unexpected error occurred"
  end
end