class Eco::API::Error::Handlers

Public Instance Methods

add(handler) click to toggle source
Calls superclass method Eco::API::UseCases#add
# File lib/eco/api/error/handlers.rb, line 21
def add(handler)
  raise "Expected Eco::API::Error::Handler object. Given: #{policy}" unless handler.is_a?(Eco::API::Error::Handler)
  super(handler)
end
define(*args) click to toggle source
# File lib/eco/api/error/handlers.rb, line 8
def define(*args)
  raise "Missusage. You should use 'on' method instead"
end
on(klass_err, type: :error_handler, retry: true, &block) click to toggle source

@param klass_err [Eco::API::Error] the specific error class that triggers this handler.

# File lib/eco/api/error/handlers.rb, line 13
def on(klass_err, type: :error_handler, retry: true, &block)
  Eco::API::Error.validate_err_class(klass_err)
  raise "Expected block but not given" unless block
  Eco::API::Error::Handler.new(klass_err, type: type, root: self, &block).tap do |handler|
    add(handler)
  end
end