Module: Aranha::TemporaryErrorsManager

Defined in:
lib/aranha/temporary_errors_manager.rb

Constant Summary collapse

GEMS_REGISTRY_MODULE_SUFFIX =
'TemporaryErrors'

Class Method Summary collapse

Class Method Details

.errorsException

Returns:

  • (Exception)


11
12
13
# File 'lib/aranha/temporary_errors_manager.rb', line 11

def errors
  errors_providers.flat_map(&:errors)
end

.errors_providersArray

Returns:

  • (Array)


16
17
18
# File 'lib/aranha/temporary_errors_manager.rb', line 16

def errors_providers
  gems_registry.registered.map(&:registered_module)
end

.temporary_error?(error) ⇒ Boolean

Parameters:

  • error

    Exception

Returns:

  • (Boolean)


22
23
24
25
26
# File 'lib/aranha/temporary_errors_manager.rb', line 22

def temporary_error?(error)
  return true if errors.any? { |klass| error.is_a?(klass) }

  error.cause.present? ? temporary_error?(error.cause) : false
end