class Object

Public Instance Methods

_file_system_path(gem_name) click to toggle source
# File lib/prox_gem/prox_gem.rb, line 47
def _file_system_path(gem_name)
  File.join(File.expand_path(_gem_dir), gem_name)
end
_gem_dir() click to toggle source
# File lib/prox_gem/prox_gem.rb, line 25
def _gem_dir
  gem_dir = ENV['PROX_GEM_DIR']
  
  return gem_dir if _set? gem_dir
  
  _print_gem_dir_error
  raise
end
_git_path(gem_name, options) click to toggle source
# File lib/prox_gem/prox_gem.rb, line 51
def _git_path(gem_name, options)
  prefix = options.delete :prefix

  repo_name = gem_name.gsub '_', '-'

  path = "#{_prox_gem_git_uri}/"
  path << "#{prefix}/" if prefix
  path << "#{repo_name}.git"
end
_options(gem_name, options={}) click to toggle source
# File lib/prox_gem/prox_gem.rb, line 6
def _options(gem_name, options={})
  mode = _prox_gem_mode
  if mode == "path"
    return { :path => _file_system_path(gem_name) }
  elsif mode == "git"    
    return { :git => _git_path(gem_name, options) }.merge(options)
  elsif mode == 'off'
    return options
  else
    _print_mode_error && raise
  end
end
_print_gem_dir_error() click to toggle source
# File lib/prox_gem/prox_gem.rb, line 65
def _print_gem_dir_error
  puts 'The PROX_GEM_DIR environment variable must be set to the path that contains gem project directories'
end
_print_git_repo_uri_error() click to toggle source
# File lib/prox_gem/prox_gem.rb, line 69
def _print_git_repo_uri_error
  puts 'The PROX_GEM_GIT_URI environment variable must be set to the URI of the Git repository where the gem project is housed'
end
_print_mode_error(mode) click to toggle source
# File lib/prox_gem/prox_gem.rb, line 61
def _print_mode_error(mode)
  puts "The PROX_GEM_MODE \"#{mode}\" environment variable is wrong. It must be one of \"path\", \"git\", or \"off\"."
end
_prox_gem_git_uri() click to toggle source
# File lib/prox_gem/prox_gem.rb, line 34
def _prox_gem_git_uri
  get_uri = ENV['PROX_GEM_GIT_URI']

  return git_uri if _set? git_uri

  _print_git_repo_uri_error
  raise
end
_prox_gem_mode() click to toggle source
# File lib/prox_gem/prox_gem.rb, line 19
def _prox_gem_mode
  mode = ENV['PROX_GEM_MODE']
  return mode if _set? mode
  "off"
end
_set(val) click to toggle source
# File lib/prox_gem/prox_gem.rb, line 43
def _set(val)
  !val.nil? && !val.strip.empty?
end
prox_gem(gem_name, options={}) click to toggle source
# File lib/prox_gem/prox_gem.rb, line 1
def prox_gem(gem_name, options={})
  opts = _options(gem_name, options)
  gem gem_name, opts
end