class Generic::Target
Attributes
attr_reader[R]
request[R]
response[R]
Public Class Methods
new(p)
click to toggle source
# File lib/generic/target.rb, line 12 def initialize(p) @request = Request.new(p) @response = Response.new [], 200, {'Content-Type' => 'text/html'} end
Public Instance Methods
apply(&handler)
click to toggle source
# File lib/generic/target.rb, line 40 def apply(&handler) data = instance_eval(&handler) data.respond_to?(:each) ? response.body = data : response.write(data) cookies.finish!(response) if @cookies response end
Private Instance Methods
exit(status, headers={}, body='')
click to toggle source
# File lib/generic/target.rb, line 26 def exit(status, headers={}, body='') @response = Response.new(body, status, headers) cookies.finish!(response) if @cookies throw :halt, response end
status(code)
click to toggle source
# File lib/generic/target.rb, line 22 def status(code) response.status = code end
system_redirect(uri, status=302)
click to toggle source
# File lib/generic/target.rb, line 18 def system_redirect(uri, status=302) exit(status, {'Location' => uri}) end