class Rambutan::Base

Attributes

env[R]
request[R]
response[R]

Public Class Methods

new(method) click to toggle source
# File lib/rambutan/base.rb, line 5
def initialize(method)
  @method = method
end

Public Instance Methods

call(env) click to toggle source
# File lib/rambutan/base.rb, line 9
def call(env)
  @env = env
  @request = Rack::Request.new(env)
  @response = Rack::Response.new
  
  returned = public_send(@method)
  @response.write(returned) if returned.is_a?(String)
  @response.finish
end
params() click to toggle source
# File lib/rambutan/base.rb, line 24
def params
  @env['router.params'].merge(@request.params)
end
redirect(args) click to toggle source
# File lib/rambutan/base.rb, line 28
def redirect(args)
  @response.redirect(*args)
end
render(template) click to toggle source
# File lib/rambutan/base.rb, line 19
def render(template)
  template = ERB.new(File.read("views/#{template}.erb"))
  template.result(binding)
end