Class: Jeanine::Request
- Inherits:
-
Rack::Request
- Object
- Rack::Request
- Jeanine::Request
- Defined in:
- lib/jeanine/request.rb
Constant Summary collapse
- FORMAT_REGEX =
%r{\.(\w+)\z}
Instance Method Summary collapse
- #delete? ⇒ Boolean
- #format ⇒ Object
- #get? ⇒ Boolean
- #head? ⇒ Boolean
-
#initialize(env) ⇒ Request
constructor
A new instance of Request.
- #json? ⇒ Boolean
- #mime_type ⇒ Object
- #options? ⇒ Boolean
- #params ⇒ Object
- #patch? ⇒ Boolean
- #post? ⇒ Boolean
- #put? ⇒ Boolean
Constructor Details
#initialize(env) ⇒ Request
Returns a new instance of Request.
7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/jeanine/request.rb', line 7 def initialize(env) env['PATH_INFO'] = '/' if env['PATH_INFO'].empty? if env['PATH_INFO'].include?(".") format = env['PATH_INFO'].match(FORMAT_REGEX) if format @format = format.captures[0] env['PATH_INFO'].gsub!(FORMAT_REGEX, '') end end super end |
Instance Method Details
#delete? ⇒ Boolean
31 32 33 |
# File 'lib/jeanine/request.rb', line 31 def delete? request_method == 'DELETE' end |
#format ⇒ Object
59 60 61 |
# File 'lib/jeanine/request.rb', line 59 def format @format || Rack::Mime::MIME_TYPES[content_type] end |
#get? ⇒ Boolean
27 28 29 |
# File 'lib/jeanine/request.rb', line 27 def get? request_method == 'GET' end |
#head? ⇒ Boolean
47 48 49 |
# File 'lib/jeanine/request.rb', line 47 def head? request_method == 'head' end |
#json? ⇒ Boolean
51 52 53 |
# File 'lib/jeanine/request.rb', line 51 def json? format == 'json' end |
#mime_type ⇒ Object
55 56 57 |
# File 'lib/jeanine/request.rb', line 55 def mime_type @mime_type ||= Mimes::MIME_TYPES_INVERTED[content_type] end |
#options? ⇒ Boolean
43 44 45 |
# File 'lib/jeanine/request.rb', line 43 def request_method == 'options' end |
#params ⇒ Object
19 20 21 |
# File 'lib/jeanine/request.rb', line 19 def params super.deep_transform_keys!(&:to_sym) end |
#patch? ⇒ Boolean
39 40 41 |
# File 'lib/jeanine/request.rb', line 39 def patch? request_method == 'PATCH' end |
#post? ⇒ Boolean
23 24 25 |
# File 'lib/jeanine/request.rb', line 23 def post? request_method == 'POST' end |
#put? ⇒ Boolean
35 36 37 |
# File 'lib/jeanine/request.rb', line 35 def put? request_method == 'PUT' end |