module PrivateGemServer

Constants

VERSION

Attributes

logger[W]

Public Class Methods

add(file) click to toggle source
# File lib/private_gem_server.rb, line 20
def add(file)
  @gems = nil
  Geminabox::GemStore.create Geminabox::IncomingGem.new File.open(file, 'rb')
end
gems() click to toggle source
# File lib/private_gem_server.rb, line 25
def gems
  @gems ||= Dir["#{Geminabox.data}/gems/*.gem"].group_by { |x| x[%r{(\w+(-\D\w*)*)[^/]+$}, 1] }.map { |k, v| [k, v.map { |z| z[/(\d+[\.\d+]*)\.gem$/, 1] }] }.to_h
end
has(name, version) click to toggle source
# File lib/private_gem_server.rb, line 15
def has(name, version)
  gem = gems[name]
  gem.include? version if gem
end
logger() click to toggle source
# File lib/private_gem_server.rb, line 29
def logger
  @logger ||= Logger.new(STDOUT)
end