Sha256: 230ce2841d893be9a27753576d903210a1f6d63dc9c8d54473aaac5d4e6f7fca

Contents?: true

Size: 979 Bytes

Versions: 1

Compression:

Stored size: 979 Bytes

Contents

require 'mechanize/chain/handler'
require 'mechanize/chain/uri_resolver'
require 'mechanize/chain/parameter_resolver'
require 'mechanize/chain/request_resolver'
require 'mechanize/chain/custom_headers'
require 'mechanize/chain/connection_resolver'
require 'mechanize/chain/ssl_resolver'
require 'mechanize/chain/pre_connect_hook'
require 'mechanize/chain/auth_headers'
require 'mechanize/chain/header_resolver'
require 'mechanize/chain/response_body_parser'
require 'mechanize/chain/response_header_handler'
require 'mechanize/chain/response_reader'
require 'mechanize/chain/body_decoding_handler'
require 'mechanize/chain/post_page_hook'

class Mechanize
  class Chain
    def initialize(list)
      @list = list
      @list.each { |l| l.chain = self }
    end

    def handle(request)
      @list.first.handle(self, request)
    end

    def pass(obj, request)
      next_link = @list[@list.index(obj) + 1]
      next_link.handle(self, request) if next_link
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
kitamomonga-mechanize-0.9.3.20090724215219 lib/mechanize/chain.rb