Sha256: 9ae0cde7b6509be3831889161e043c98696aac23cb4e0fe813ca86032d2f56cb

Contents?: true

Size: 1.01 KB

Versions: 15

Compression:

Stored size: 1.01 KB

Contents

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

module WWW
  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
end

Version data entries

15 entries across 15 versions & 5 rubygems

Version Path
eric-mechanize-0.9.3.20090623142847 lib/www/mechanize/chain.rb
knu-mechanize-0.9.3.20090623142847 lib/www/mechanize/chain.rb
tenderlove-mechanize-0.9.3.20090617085936 lib/www/mechanize/chain.rb
tenderlove-mechanize-0.9.3.20090623142847 lib/www/mechanize/chain.rb
mechanize-ntlm-0.9.1 lib/www/mechanize/chain.rb
mechanize-0.8.0 lib/www/mechanize/chain.rb
mechanize-0.8.2 lib/www/mechanize/chain.rb
mechanize-0.8.4 lib/www/mechanize/chain.rb
mechanize-0.8.3 lib/www/mechanize/chain.rb
mechanize-0.8.1 lib/www/mechanize/chain.rb
mechanize-0.9.2 lib/www/mechanize/chain.rb
mechanize-0.9.1 lib/www/mechanize/chain.rb
mechanize-0.9.0 lib/www/mechanize/chain.rb
mechanize-0.9.3 lib/www/mechanize/chain.rb
mechanize-0.8.5 lib/www/mechanize/chain.rb