class Git::Daily::Application

Attributes

commands[R]
options[R]
original_dir[R]
remote[RW]

Public Class Methods

new() click to toggle source
# File lib/git-daily/application.rb, line 11
def initialize
  @original_dir = Dir.pwd
  @commands = {}
end

Public Instance Methods

display_error_message(ex) click to toggle source
# File lib/git-daily/application.rb, line 64
def display_error_message(ex)
  $stderr.puts "git-daily aborted!"
  $stderr.puts ex.message
  if options.trace
    $stderr.puts ex.backtrace.join("\n")
  end
end
exception_handling() { || ... } click to toggle source
# File lib/git-daily/application.rb, line 51
def exception_handling
  begin
    yield
  rescue SystemExit => ex
    raise
  rescue OptionParser::InvalidOption => ex
    $stderr.puts ex.message
  rescue Exception => ex
    display_error_message(ex)
    exit(false)
  end
end
handle_options() click to toggle source
# File lib/git-daily/application.rb, line 20
def handle_options
  command = ARGV.shift
  if @commands.has_key?(command)
    @commands[command].run
  else
    $stderr.puts @commands["help"].usage
    exit
  end
end
init() click to toggle source
# File lib/git-daily/application.rb, line 36
def init
  #exception_handling do
    load_commands
    handle_options
  #end
end
load_commands() click to toggle source
# File lib/git-daily/application.rb, line 43
def load_commands
  Dir[File.join(File.dirname(__FILE__), "command", "*.rb")].each do |file|
    load file
    name = File.basename(file, ".rb")
    @commands[name] = Git::Daily.const_get(name.capitalize).new
  end
end
run() click to toggle source
# File lib/git-daily/application.rb, line 30
def run
  #exception_handling do
    init
  #end
end