(Not documented)
# File lib/rack/server.rb, line 119 119: def self.middleware 120: @middleware ||= begin 121: m = Hash.new {|h,k| h[k] = []} 122: m["deployment"].concat [lambda {|server| server.server =~ /CGI/ ? nil : [Rack::CommonLogger, $stderr] }] 123: m["development"].concat m["deployment"] + [[Rack::ShowExceptions], [Rack::Lint]] 124: m 125: end 126: end
(Not documented)
# File lib/rack/server.rb, line 107 107: def app 108: @app ||= begin 109: if !::File.exist? options[:config] 110: abort "configuration #{options[:config]} not found" 111: end 112: 113: app, options = Rack::Builder.parse_file(self.options[:config], opt_parser) 114: self.options.merge! options 115: app 116: end 117: end
(Not documented)
# File lib/rack/server.rb, line 96 96: def default_options 97: { 98: :environment => "development", 99: :pid => nil, 100: :Port => 9292, 101: :Host => "0.0.0.0", 102: :AccessLog => [], 103: :config => "config.ru" 104: } 105: end
(Not documented)
# File lib/rack/server.rb, line 128 128: def middleware 129: self.class.middleware 130: end
(Not documented)
# File lib/rack/server.rb, line 92 92: def options 93: @options ||= parse_options(ARGV) 94: end
(Not documented)
# File lib/rack/server.rb, line 158 158: def server 159: @_server ||= Rack::Handler.get(options[:server]) || Rack::Handler.default 160: end
(Not documented)
# File lib/rack/server.rb, line 132 132: def start 133: if options[:debug] 134: $DEBUG = true 135: require 'pp' 136: p options[:server] 137: pp wrapped_app 138: pp app 139: end 140: 141: if options[:warn] 142: $-w = true 143: end 144: 145: if includes = options[:include] 146: $LOAD_PATH.unshift *includes 147: end 148: 149: if library = options[:require] 150: require library 151: end 152: 153: daemonize_app if options[:daemonize] 154: write_pid if options[:pid] 155: server.run wrapped_app, options 156: end
(Not documented)
# File lib/rack/server.rb, line 178 178: def build_app(app) 179: middleware[options[:environment]].reverse_each do |middleware| 180: middleware = middleware.call(self) if middleware.respond_to?(:call) 181: next unless middleware 182: klass = middleware.shift 183: app = klass.new(app, *middleware) 184: end 185: app 186: end
(Not documented)
# File lib/rack/server.rb, line 192 192: def daemonize_app 193: if RUBY_VERSION < "1.9" 194: exit if fork 195: Process.setsid 196: exit if fork 197: Dir.chdir "/" 198: ::File.umask 0000 199: STDIN.reopen "/dev/null" 200: STDOUT.reopen "/dev/null", "a" 201: STDERR.reopen "/dev/null", "a" 202: else 203: Process.daemon 204: end 205: end
(Not documented)
# File lib/rack/server.rb, line 174 174: def opt_parser 175: Options.new 176: end
(Not documented)
# File lib/rack/server.rb, line 163 163: def parse_options(args) 164: options = default_options 165: 166: # Don't evaluate CGI ISINDEX parameters. 167: # http://hoohoo.ncsa.uiuc.edu/cgi/cl.html 168: args.clear if ENV.include?("REQUEST_METHOD") 169: 170: options.merge! opt_parser.parse! args 171: options 172: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.