Class: Gemkeeper::CompactIndexServer::UpstreamCache
- Inherits:
-
Object
- Object
- Gemkeeper::CompactIndexServer::UpstreamCache
- Defined in:
- lib/gemkeeper/compact_index_server/upstream_cache.rb
Overview
Composition root for upstream RubyGems.org caching. Wires a shared on-disk store and HTTP client into the merged-index and per-gem cache collaborators.
Instance Method Summary collapse
- #gem_binary(filename) ⇒ Object
- #info(gemname) ⇒ Object
-
#initialize(cache_dir) ⇒ UpstreamCache
constructor
A new instance of UpstreamCache.
- #merged_names(private_names) ⇒ Object
- #merged_versions(private_gems) ⇒ Object
Constructor Details
#initialize(cache_dir) ⇒ UpstreamCache
Returns a new instance of UpstreamCache.
13 14 15 16 17 18 |
# File 'lib/gemkeeper/compact_index_server/upstream_cache.rb', line 13 def initialize(cache_dir) store = CacheStore.new(File.join(cache_dir, "rubygems_cache")) client = RubygemsClient.new @merger = IndexMerger.new(store, client) @gems = GemCache.new(store, client) end |
Instance Method Details
#gem_binary(filename) ⇒ Object
23 |
# File 'lib/gemkeeper/compact_index_server/upstream_cache.rb', line 23 def gem_binary(filename) = @gems.binary(filename) |
#info(gemname) ⇒ Object
22 |
# File 'lib/gemkeeper/compact_index_server/upstream_cache.rb', line 22 def info(gemname) = @gems.info(gemname) |
#merged_names(private_names) ⇒ Object
21 |
# File 'lib/gemkeeper/compact_index_server/upstream_cache.rb', line 21 def merged_names(private_names) = @merger.names(private_names) |
#merged_versions(private_gems) ⇒ Object
20 |
# File 'lib/gemkeeper/compact_index_server/upstream_cache.rb', line 20 def merged_versions(private_gems) = @merger.versions(private_gems) |