Class: PhusionPassenger::Standalone::Main
- Inherits:
-
Object
- Object
- PhusionPassenger::Standalone::Main
- Defined in:
- lib/phusion_passenger/standalone/main.rb
Constant Summary
- COMMANDS =
[ ['start', 'StartCommand'], ['stop', 'StopCommand'], ['status', 'StatusCommand'], ['package-runtime', 'PackageRuntimeCommand'], ['version', 'VersionCommand'], ['help', 'HelpCommand'] ]
Class Method Summary (collapse)
Instance Method Summary (collapse)
Class Method Details
+ (Object) each_command
42 43 44 45 46 47 48 49 50 |
# File 'lib/phusion_passenger/standalone/main.rb', line 42 def self.each_command COMMANDS.each do |command_spec| command_name = command_spec[0] filename = command_name.sub(/-/, '_') + "_command" require "phusion_passenger/standalone/#{filename}" command_class = Standalone.const_get(command_spec[1]) yield(command_name, command_class) end end |
+ (Object) run!(argv)
38 39 40 |
# File 'lib/phusion_passenger/standalone/main.rb', line 38 def self.run!(argv) new.run!(argv) end |
Instance Method Details
- (Object) run!(argv)
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/phusion_passenger/standalone/main.rb', line 52 def run!(argv) command = argv[0] if command.nil? || command == '-h' || command == '--help' run_command('help') exit elsif command == '-v' || command == '--version' run_command('version') exit elsif command_exists?(command) begin run_command(command, argv[1..-1]) rescue => e if defined?(OptionParser::ParseError) && e.is_a?(OptionParser::ParseError) puts e puts puts "Please see '--help' for valid options." exit 1 elsif defined?(ConfigFile::DisallowedContextError) && e.is_a?(ConfigFile::DisallowedContextError) puts "*** Error in #{e.filename} line #{e.line}:" puts e exit 1 else raise e end end else STDERR.puts "Unknown command '#{command}'. Please type --help for options." exit 1 end end |