| Class | Gem::Indexer::MasterIndexBuilder |
| In: |
lib/rubygems/indexer/master_index_builder.rb
|
| Parent: | Gem::Indexer::AbstractIndexBuilder |
Construct the master Gem index file.
# File lib/rubygems/indexer/master_index_builder.rb, line 39
39: def add(spec)
40: @index.add_spec(spec)
41: end
# File lib/rubygems/indexer/master_index_builder.rb, line 28
28: def cleanup
29: super
30:
31: index_file_name = File.join @directory, @filename
32:
33: compress index_file_name, "Z"
34: paranoid index_file_name, "#{index_file_name}.Z"
35:
36: @files << "#{@filename}.Z"
37: end
# File lib/rubygems/indexer/master_index_builder.rb, line 13
13: def end_index
14: super
15:
16: @file.puts "--- !ruby/object:#{@index.class}"
17: @file.puts "gems:"
18:
19: gems = @index.sort_by { |name, gemspec| gemspec.sort_obj }
20: gems.each do |name, gemspec|
21: yaml = gemspec.to_yaml.gsub(/^/, ' ')
22: yaml = yaml.sub(/\A ---/, '') # there's a needed extra ' ' here
23: @file.print " #{gemspec.original_name}:"
24: @file.puts yaml
25: end
26: end