class Faraday::Response
Attributes
env[R]
Public Class Methods
new(env = nil)
click to toggle source
# File lib/faraday/response.rb, line 27 def initialize(env = nil) @env = Env.from(env) if env @on_complete_callbacks = [] end
Public Instance Methods
apply_request(request_env)
click to toggle source
Expand the env with more properties, without overriding existing ones. Useful for applying request params after restoring a marshalled Response.
# File lib/faraday/response.rb, line 91 def apply_request(request_env) raise "response didn't finish yet" unless finished? @env = Env.from(request_env).update(@env) return self end
body()
click to toggle source
# File lib/faraday/response.rb, line 49 def body finished? ? env.body : nil end
finish(env)
click to toggle source
# File lib/faraday/response.rb, line 66 def finish(env) raise "response already finished" if finished? @env = env.is_a?(Env) ? env : Env.from(env) @on_complete_callbacks.each { |callback| callback.call(@env) } return self end
finished?()
click to toggle source
# File lib/faraday/response.rb, line 53 def finished? !!env end
headers()
click to toggle source
# File lib/faraday/response.rb, line 44 def headers finished? ? env.response_headers : {} end
marshal_dump()
click to toggle source
because @on_complete_callbacks cannot be marshalled
# File lib/faraday/response.rb, line 78 def marshal_dump !finished? ? nil : { :status => @env.status, :body => @env.body, :response_headers => @env.response_headers } end
marshal_load(env)
click to toggle source
# File lib/faraday/response.rb, line 85 def marshal_load(env) @env = Env.from(env) end
on_complete() { |env| ... }
click to toggle source
# File lib/faraday/response.rb, line 57 def on_complete(&block) if !finished? @on_complete_callbacks << block else yield(env) end return self end
reason_phrase()
click to toggle source
# File lib/faraday/response.rb, line 40 def reason_phrase finished? ? env.reason_phrase : nil end
status()
click to toggle source
# File lib/faraday/response.rb, line 36 def status finished? ? env.status : nil end
success?()
click to toggle source
# File lib/faraday/response.rb, line 73 def success? finished? && env.success? end