Sha256: 90b2bf9bc630ae7064c5d6ec66588e71f917c091eb529af21ccf893849ebf0e9
Contents?: true
Size: 1.02 KB
Versions: 4
Compression:
Stored size: 1.02 KB
Contents
require 'eventmachine' require 'em-http' require 'muxer/version' require 'muxer/request' require 'muxer/multiplexer' # Muxer is a parallel request module that allows timeouts for each # individual request as well as a global timeout for all requests. # In addition to the specific timeouts, Muxer will allow a pending # request to continue pending even if its timeout has passed as long # as there is still a request waiting that has a longer timeout module Muxer # Example Usage: # # response = Muxer.execute do |muxer| # muxer.add_url "http://www.rubydoc.info", timeout: 0.5 # muxer.add_url "https://www.google.com", timeout: 0.25 # end # # In the above example, Google's response could continue pending if # rubydoc.info had not yet returned or passed its timeout. # # Returns a hash like: # ```ruby # { # failed: [], # completed: [] # } # ``` # # @return [Hash] def self.execute multiplexer = Multiplexer.new yield multiplexer if block_given? multiplexer.execute end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
muxer-0.3.4 | lib/muxer.rb |
muxer-0.3.3 | lib/muxer.rb |
muxer-0.3.2 | lib/muxer.rb |
muxer-0.3.0 | lib/muxer.rb |