class Ecogem::Cli

Public Class Methods

new(argv) click to toggle source
# File lib/ecogem/cli.rb, line 9
def initialize(argv)
  @args = ::Ecogem::Cli::Args.new(argv)
end
start(argv) click to toggle source
# File lib/ecogem/cli.rb, line 5
def self.start(argv)
  self.new(argv).execute
end

Public Instance Methods

execute() click to toggle source
# File lib/ecogem/cli.rb, line 13
def execute
  raise "Unknown command: #{@args.command}" unless %w[install update].include?(@args.command)
  require_relative "cli/commands/#{@args.command}"
  klass_name = @args.command.split(/_/).map{|i| i[0].upcase + i[1..-1]}.join('')
  klass = ::Ecogem::Cli::Commands.const_get(klass_name, false)
  klass.new(@args).execute
end