summaryrefslogtreecommitdiff
path: root/lib/web/front_controller.rb
blob: beb8c5810e3465e04bff25ea261d1adf2173d8e7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
module Booty
  class FrontController
    def initialize(command_registry, view_engine)
      @command_registry = command_registry
      @view_engine = view_engine
    end
    def call(env)
      begin
        @command_registry.route_for(env).run(env).run(@view_engine)
      rescue => e
        logger.error(e)
        [501, {"Content-Type" => "text/html"}, [@view_engine.render(:template => '501', :model => e)]]
      end
    end
  end
end