Class: Faraday::Response

### Home Classes Methods

### In Files

- lib/faraday/response.rb

### Parent

Object

### Namespace

- CLASS Faraday::Response::Logger
- CLASS Faraday::Response::Middleware
- CLASS Faraday::Response::RaiseError

### Methods

- ::new
- #apply_request
- #body
- #finish
- #finished?
- #headers
- #marshal_dump
- #marshal_load
- #on_complete
- #status
- #success?

### Class/Module Index

Quicksearch

- Faraday
- Faraday::Adapter
- Faraday::Adapter::EMHttp
- Faraday::Adapter::EMHttp::Manager
- Faraday::Adapter::EMHttp::Options
- Faraday::Adapter::EMSynchrony
- Faraday::Adapter::EMSynchrony::ParallelManager
- Faraday::Adapter::Excon
- Faraday::Adapter::NetHttp
- Faraday::Adapter::NetHttpPersistent
- Faraday::Adapter::Parallelism
- Faraday::Adapter::Patron
- Faraday::Adapter::Rack
- Faraday::Adapter::Test
- Faraday::Adapter::Test::Stub
- Faraday::Adapter::Test::Stubs
- Faraday::Adapter::Test::Stubs::NotFound
- Faraday::Adapter::Typhoeus
- Faraday::AutoloadHelper
- Faraday::Builder
- Faraday::Builder::Handler
- Faraday::Builder::StackLocked
- Faraday::CompositeReadIO
- Faraday::Connection
- Faraday::Error
- Faraday::Error::ClientError
- Faraday::Error::ConnectionFailed
- Faraday::Error::MissingDependency
- Faraday::Error::ParsingError
- Faraday::Error::ResourceNotFound
- Faraday::Error::TimeoutError
- Faraday::Middleware
- Faraday::MiddlewareRegistry
- Faraday::Request
- Faraday::Request::Authorization
- Faraday::Request::BasicAuthentication
- Faraday::Request::Multipart
- Faraday::Request::Retry
- Faraday::Request::TokenAuthentication
- Faraday::Request::UrlEncoded
- Faraday::Response
- Faraday::Response::Logger
- Faraday::Response::Middleware
- Faraday::Response::RaiseError
- Faraday::Utils
- Faraday::Utils::Headers
- Faraday::Utils::ParamsHash
- Object

No matching classes.

# Faraday::Response

### Public Class Methods

new(env = nil) click to toggle source

    # File lib/faraday/response.rb, line 34
    def initialize(env = nil)
      @env = 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 93
    def apply_request(request_env)
      raise "response didn't finish yet" unless finished?
      @env = request_env.merge @env
      return self
    end

body() click to toggle source

    # File lib/faraday/response.rb, line 51
    def body
      finished? ? env[:body] : nil
    end

finish(env) click to toggle source

    # File lib/faraday/response.rb, line 68
    def finish(env)
      raise "response already finished" if finished?
      @env = env
      @on_complete_callbacks.each { |callback| callback.call(env) }
      return self
    end

finished?() click to toggle source

    # File lib/faraday/response.rb, line 55
    def finished?
      !!env
    end

headers() click to toggle source

    # File lib/faraday/response.rb, line 46
    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 80
    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 87
    def marshal_load(env)
      @env = env
    end

on_complete() click to toggle source

    # File lib/faraday/response.rb, line 59
    def on_complete
      if not finished?
        @on_complete_callbacks << Proc.new
      else
        yield env
      end
      return self
    end

status() click to toggle source

    # File lib/faraday/response.rb, line 42
    def status
      finished? ? env[:status] : nil
    end

success?() click to toggle source

    # File lib/faraday/response.rb, line 75
    def success?
      (200..299).include?(status)
    end

[Validate]

Generated with the Darkfish Rdoc Generator 2.