Class: Rubygems::Await::FullIndexAwaiter
- Defined in:
- lib/rubygems/await.rb
Instance Attribute Summary
Attributes inherited from Awaiter
#deadline, #gems, #name_indent, #source, #source_uri
Class Method Summary collapse
Instance Method Summary collapse
Methods inherited from Awaiter
#call, call, #compact_index_client, #downloader, #expired?, #format_element, #gem_remote_fetcher, #index_fetcher, #inherited, #initialize, #log, #log_error, #log_found, #process_element, #safe_load_marshal, subclasses
Constructor Details
This class inherits a constructor from Rubygems::Await::Awaiter
Class Method Details
.awaiter_name ⇒ Object
352 353 354 |
# File 'lib/rubygems/await.rb', line 352 def self.awaiter_name "full index" end |
Instance Method Details
#collection ⇒ Object
337 338 339 |
# File 'lib/rubygems/await.rb', line 337 def collection super.delete_if { |t| /[a-z]/i.match?(t.version.to_s) } end |
#process_collection(missing) ⇒ Object
341 342 343 344 345 346 347 348 349 350 |
# File 'lib/rubygems/await.rb', line 341 def process_collection(missing) path = source_uri + "specs.#{Gem.marshal_version}.gz" contents = gem_remote_fetcher.fetch_path(path) idx = safe_load_marshal(contents) idx.each do |found| tuple = Gem::NameTuple.new(*found.map!(&:to_s)) log_found(tuple) if missing.delete?(tuple) end end |