Class: Smaak::RackAdaptor
- Inherits:
-
Object
- Object
- Smaak::RackAdaptor
- Defined in:
- lib/smaak/adaptors/rack_adaptor.rb
Instance Attribute Summary collapse
-
#request ⇒ Object
readonly
Returns the value of attribute request.
Instance Method Summary collapse
- #body ⇒ Object
- #header(header) ⇒ Object
-
#initialize(request) ⇒ RackAdaptor
constructor
A new instance of RackAdaptor.
- #method ⇒ Object
- #path ⇒ Object
Constructor Details
#initialize(request) ⇒ RackAdaptor
Returns a new instance of RackAdaptor.
8 9 10 11 |
# File 'lib/smaak/adaptors/rack_adaptor.rb', line 8 def initialize(request) raise ArgumentError.new("Must provide a Rack::Request") if not request.is_a? Rack::Request @request = request end |
Instance Attribute Details
#request ⇒ Object (readonly)
Returns the value of attribute request.
6 7 8 |
# File 'lib/smaak/adaptors/rack_adaptor.rb', line 6 def request @request end |
Instance Method Details
#body ⇒ Object
33 34 35 |
# File 'lib/smaak/adaptors/rack_adaptor.rb', line 33 def body @request.body end |
#header(header) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/smaak/adaptors/rack_adaptor.rb', line 13 def header(header) raise ArgumentError.new("Header must be a non-blank string") if not Smaak::Utils::non_blank_string?(header) if header == "content-length" value = @request.env["CONTENT_LENGTH"] value = 0 if value.nil? return value end return @request.env["HTTP_HOST"].split(':')[0] if not @request.env["HTTP_HOST"].nil? and header == "host" return value = @request.env["REQUEST_METHOD"] if header == "request-method" return @request.env["HTTP_#{header.upcase.gsub("-", "_")}"] end |
#method ⇒ Object
25 26 27 |
# File 'lib/smaak/adaptors/rack_adaptor.rb', line 25 def method @request.env["REQUEST_METHOD"] end |
#path ⇒ Object
29 30 31 |
# File 'lib/smaak/adaptors/rack_adaptor.rb', line 29 def path @request.env["PATH_INFO"] end |