Class: WrappersCommand

Inherits:
Gem::Command
  • Object
show all
Defined in:
lib/gem-wrappers/command.rb,
lib/gem-wrappers/command/file_exist.rb

Defined Under Namespace

Classes: FileExist

Instance Method Summary collapse

Constructor Details

#initializeWrappersCommand

Returns a new instance of WrappersCommand.



8
9
10
# File 'lib/gem-wrappers/command.rb', line 8

def initialize
  super 'regenerate_binstubs', 'Re run generation of environment wrappers for gems.'
end

Instance Method Details

#argumentsObject

:nodoc:



12
13
14
# File 'lib/gem-wrappers/command.rb', line 12

def arguments # :nodoc:
  "regenerate        regenerate environment wrappers for current Gem.home"
end

#defaults_strObject

:nodoc:



20
21
22
# File 'lib/gem-wrappers/command.rb', line 20

def defaults_str # :nodoc:
  ""
end

#descriptionObject

:nodoc:



24
25
26
27
28
# File 'lib/gem-wrappers/command.rb', line 24

def description # :nodoc:
  <<-DOC
Show (default) or regenerate environment wrappers for current 'GEM_HOME'.
DOC
end

#executeObject



30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/gem-wrappers/command.rb', line 30

def execute
  subcommand = get_one_optional_argument || ''
  case subcommand
  when ''
    execute_show
  when 'regenerate'
    execute_regenerate
  when FileExist
    execute_regenerate([File.expand_path(subcommand)])
  else
    execute_unknown subcommand
  end
end

#execute_regenerate(list = executables) ⇒ Object



56
57
58
# File 'lib/gem-wrappers/command.rb', line 56

def execute_regenerate(list = executables)
  gem_wrappers.install(list)
end

#execute_showObject



44
45
46
47
48
# File 'lib/gem-wrappers/command.rb', line 44

def execute_show
  $stdout.puts description
  $stdout.puts "   Wrappers path: #{gem_wrappers.wrappers_path}"
  $stdout.puts "Environment file: #{gem_wrappers.environment_file}"
end

#execute_unknown(subcommand) ⇒ Object



50
51
52
53
54
# File 'lib/gem-wrappers/command.rb', line 50

def execute_unknown(subcommand)
  $stderr.puts "Unknown wrapper subcommand: #{subcommand}"
  $stdout.puts description
  false
end

#usageObject

:nodoc:



16
17
18
# File 'lib/gem-wrappers/command.rb', line 16

def usage # :nodoc:
  "#{program_name} [regenerate]"
end