Sha256: 0dc36687895a6f666534ea2592b3beadbd9bacf24e01b39f121a17f54ebb65d9

Contents?: true

Size: 398 Bytes

Versions: 2

Compression:

Stored size: 398 Bytes

Contents

module RestCore
  class ErrorHandler
    def self.members; [:error_handler]; end
    include Middleware

    def call env
      app.call(env){ |res|
        h = error_handler(res)
        f = res[FAIL] || []
        yield(if f.empty? || f.find{ |ff| ff.kind_of?(Exception) } || !h
                res
              else
                fail(res, h.call(res))
              end)}
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rest-core-4.0.1 lib/rest-core/middleware/error_handler.rb
rest-core-4.0.0 lib/rest-core/middleware/error_handler.rb