class GemfileUtils::Parser::RubyGems
Constants
- API_URL
Attributes
connection[R]
gems[R]
responses[R]
Public Class Methods
new(gems)
click to toggle source
# File lib/gemfile_utils/parser/ruby_gems.rb, line 12 def initialize(gems) @gems = gems @connection = Faraday.new(url: API_URL) do |faraday| faraday.adapter :typhoeus end end
Public Instance Methods
info(gem_name)
click to toggle source
# File lib/gemfile_utils/parser/ruby_gems.rb, line 32 def info(gem_name) responses.has_key?(gem_name) ? JSON.parse(responses[gem_name].body) : {} end
request!()
click to toggle source
# File lib/gemfile_utils/parser/ruby_gems.rb, line 19 def request! # @responses = {} connection.in_parallel(Typhoeus::Hydra.new(max_concurrency: 10)) do gems.map do |gem_name| @responses[gem_name] = connection.get("#{gem_name}") end end #keep only successful responses @responses.reject! { |_, response| response.status >= 400 } end