forked from rack/rack
-
Notifications
You must be signed in to change notification settings - Fork 4
/
rack.rb
77 lines (62 loc) · 2.14 KB
/
rack.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
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
# Copyright (C) 2007 Christian Neukirchen <purl.org/net/chneukirchen>
#
# Rack is freely distributable under the terms of an MIT-style license.
# See COPYING or http://www.opensource.org/licenses/mit-license.php.
$: << File.expand_path(File.dirname(__FILE__))
# The Rack main module, serving as a namespace for all core Rack
# modules and classes.
#
# All modules meant for use in your application are <tt>autoload</tt>ed here,
# so it should be enough just to <tt>require rack.rb</tt> in your code.
module Rack
# The Rack version number.
VERSION = [0,1]
# Return the Rack version as a dotted string.
def self.version
VERSION.join(".")
end
autoload :Builder, "rack/builder"
autoload :CommonLogger, "rack/commonlogger"
autoload :File, "rack/file"
autoload :ForwardRequest, "rack/recursive"
autoload :Lint, "rack/lint"
autoload :Recursive, "rack/recursive"
autoload :Reloader, "rack/reloader"
autoload :ShowExceptions, "rack/showexceptions"
autoload :Static, "rack/static"
autoload :URLMap, "rack/urlmap"
autoload :Utils, "rack/utils"
autoload :MockRequest, "rack/mock"
autoload :MockResponse, "rack/mock"
autoload :Request, "rack/request"
autoload :Response, "rack/response"
module Auth
autoload :Basic, "rack/auth/basic"
autoload :Request, "rack/auth/request"
end
module Session
autoload :Cookie, "rack/session/cookie"
end
# *Adapters* connect Rack with third party web frameworks.
#
# Rack includes adapters for Camping and Rails.
#
# Refer to the submodules for framework-specific calling details.
module Adapter
autoload :Camping, "rack/adapter/camping"
autoload :Rails, "rack/adapter/rails"
end
# *Handlers* connect web servers with Rack.
#
# Rack includes Handlers for Mongrel, WEBrick, FastCGI and CGI.
#
# Handlers usually are activated by calling <tt>MyHandler.run(myapp)</tt>.
# A second optional hash can be passed to include server-specific
# configuration.
module Handler
autoload :CGI, "rack/handler/cgi"
autoload :FastCGI, "rack/handler/fastcgi"
autoload :Mongrel, "rack/handler/mongrel"
autoload :WEBrick, "rack/handler/webrick"
end
end