Sha256: 014664f7b2fef88843fe3a6576a5cec9180751789cd7c31ef69b1afb0f43da9c
Contents?: true
Size: 952 Bytes
Versions: 1
Compression:
Stored size: 952 Bytes
Contents
require "hwacha/version" require "hwacha/config" require "typhoeus" class Hwacha attr_reader :max_concurrent_requests def initialize(max_concurrent_requests=20) config = Hwacha::Config.new # support the simple legacy API config.max_concurrent_requests = max_concurrent_requests # the nice configuration object API yield config if block_given? @max_concurrent_requests = config.max_concurrent_requests end def check(urls) hydra = Typhoeus::Hydra.new(:max_concurrency => @max_concurrent_requests) Array(urls).each do |url| request = Typhoeus::Request.new(url) request.on_complete do |response| yield response.effective_url, response end hydra.queue request end hydra.run end def find_existing(urls) check(urls) do |url, response| yield url if response.success? end end # Hwacha!!! alias :fire :check alias :strike_true :find_existing end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
hwacha-0.2.0 | lib/hwacha.rb |