class PhusionPassenger::Standalone::Main

def run!(argv)

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