Class: Freud::Runner

Inherits:
Object
  • Object
show all
Includes:
Logging
Defined in:
lib/freud/runner.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Logging

#exit, log_to, logger, #logger

Class Method Details

.run(args = ARGV) ⇒ Object



10
11
12
13
14
15
16
# File 'lib/freud/runner.rb', line 10

def self.run(args = ARGV)
    begin
        new.run(args)
    rescue RunnerExit => exception
        exit(exception.value)
    end
end

Instance Method Details

#run(args) ⇒ Object



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/freud/runner.rb', line 18

def run(args)
    command = extract_command(args)
    case(command)
    when "version" then run_version
    when "generate", "g" then run_generate(args)
    when "@check" then run_check(args)
    when "@wait-up" then run_wait_up(args)
    when "@wait-down" then run_wait_down(args)
    when "@signal-term" then run_signal(args, "TERM")
    when "@signal-kill" then run_signal(args, "KILL")
    when "@signal-hup" then run_signal(args, "HUP")
    when "@dump" then run_dump(args)
    else Launcher.new(fetch_config(args).to_hash).run(command, args)
    end
end