Class: LockDiff::Gem::RubyGem::Repository
- Inherits:
-
Object
- Object
- LockDiff::Gem::RubyGem::Repository
- Defined in:
- lib/lock_diff/gem/ruby_gem.rb
Class Method Summary collapse
Class Method Details
.fetch(name) ⇒ Object
37 38 39 40 41 42 43 |
# File 'lib/lock_diff/gem/ruby_gem.rb', line 37 def fetch(name) content = HTTPClient.get_content("https://rubygems.org/api/v1/gems/#{name}.json") OpenStruct.new(JSON.parse(content)) rescue => e LockDiff.logger.warn("Could not fetch gem info of #{name} because of #{e.inspect}") NullRubyGem.new(name) end |
.find(name) ⇒ Object
31 32 33 34 35 |
# File 'lib/lock_diff/gem/ruby_gem.rb', line 31 def find(name) ruby_gem = repository[name] return ruby_gem if ruby_gem repository[name] = fetch(name) end |
.repository ⇒ Object
45 46 47 |
# File 'lib/lock_diff/gem/ruby_gem.rb', line 45 def repository @repository ||= {} end |