class Falcon::Command::Serve

def container_class

def container_class
	case @options[:container]
	when :threaded
		require 'async/container/threaded'
		return Async::Container::Threaded
	when :forked
		require 'async/container/forked'
		return Async::Container::Forked
	end
end

def invoke

def invoke
	run
	
	sleep
end

def run

def run
	app, options = Rack::Builder.parse_file(@options[:config])
	
	container_class.new(concurrency: @options[:concurrency]) do
		server = Falcon::Server.new(app, [
			Async::IO::Endpoint.parse(@options[:bind], reuse_port: true)
		])
		
		server.run
	end
end