Methods

Class/Module Index [+]

Quicksearch

Mercenary::Program

Attributes

config[R]
optparse[R]

Public Class Methods

new(name) click to toggle source

Public: Creates a new Program

name - the name of the program

Returns nothing

# File lib/mercenary/program.rb, line 11
def initialize(name)
  @config = {}
  super(name)
end

Public Instance Methods

go(argv) click to toggle source

Public: Run the program

argv - an array of string args (usually ARGV)

Returns nothing

# File lib/mercenary/program.rb, line 21
def go(argv)
  logger.debug("Using args passed in: #{argv.inspect}")

  cmd = nil

  @optparse = OptionParser.new do |opts|
    cmd = super(argv, opts, @config)
  end

  @optparse.parse!(argv)

  logger.debug("Parsed config: #{@config.inspect}")

  begin
    cmd.execute(argv, @config)
  rescue => e
    if cmd.trace
      raise e
    else
      logger.error e.message
      abort
    end
  end
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.