class Pakyow::Actions::Dispatch

Public Instance Methods

call(connection) click to toggle source
# File lib/pakyow/actions/dispatch.rb, line 6
def call(connection)
  catch :halt do
    Pakyow.apps.each do |app|
      if connection.path.start_with?(app.mount_path)
        app.call(connection)
      end
    end
  end

  unless connection.halted?
    error_404(connection)
  end
rescue StandardError => error
  connection.error = error
  connection.logger.houston(error)
  error_500(connection)
end

Private Instance Methods

error_404(connection, message = "404 Not Found") click to toggle source
# File lib/pakyow/actions/dispatch.rb, line 26
def error_404(connection, message = "404 Not Found")
  connection.status = 404
  connection.body = StringIO.new(message)
end
error_500(connection, message = "500 Server Error") click to toggle source
# File lib/pakyow/actions/dispatch.rb, line 31
def error_500(connection, message = "500 Server Error")
  connection.status = 500
  connection.body = StringIO.new(message)
end