class Suricate::Application

Public Class Methods

new(configuration) click to toggle source
Calls superclass method
# File lib/suricate/application.rb, line 9
def initialize(configuration)
  super(nil)
  # TODO : switch to Rack directly
  # Good : hide Sinatra complexity from outside,
  # the interface will be the same when switchting to Rack
  # Bad  : set class var from instance
  self.class.set(:configuration, configuration)
  @configuration = configuration
end

Private Instance Methods

context() click to toggle source
# File lib/suricate/application.rb, line 76
def context
  RequestContext.new(request: request, session: session, output: output)
end
output() click to toggle source
# File lib/suricate/application.rb, line 80
def output
  @output ||= SinatraOutputDriver.new(self)
end
render_page(page) click to toggle source
# File lib/suricate/application.rb, line 84
def render_page(page)
  template = template_repository.find_page(page)
  output.render(template.render)
end