Sha256: e68e833ed3a92c1c5027762a671d1c5cdae2b47cee76026b5871f5d82575e7c5

Contents?: true

Size: 667 Bytes

Versions: 4

Compression:

Stored size: 667 Bytes

Contents

module Appfuel
  module Application
    module Dispatcher

      def dispatch(request, container)
        begin
          container[:feature_initializer].call(request.feature, container)
          action = container[:action_loader].call(request.namespace, container)
          response = action.run(request.inputs)
        rescue => e
          handle_error(e, container)
        end

        if response.failure?
          handle_error(contaier,  :failed, error)
        end
      end

      private
      def handle_error(e, container)
        p e.message
        p e.backtrace
      end

      def default_error_handling(e, container)

      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
appfuel-0.2.10 lib/appfuel/application/dispatcher.rb
appfuel-0.2.9 lib/appfuel/application/dispatcher.rb
appfuel-0.2.8 lib/appfuel/application/dispatcher.rb
appfuel-0.2.7 lib/appfuel/application/dispatcher.rb