class EsiErrors::Base
Constants
- PAUSE_DURATION_VALUE
- RETRY
Public Class Methods
dispatch( exception, debug_mode: false )
click to toggle source
# File lib/errors/base.rb, line 10 def self.dispatch( exception, debug_mode: false ) # return EsiErrors::SocketError.new if exception.message =~ /SocketError/ puts "EsiErrors::Base got exception : #{exception.inspect}" if debug_mode case exception.message when '500 Internal Server Error' error = EsiErrors::GatewayTimeout.new when '504 Gateway Timeout', '504 Gateway Time-out' error = EsiErrors::GatewayTimeout.new when '502 Bad Gateway' error = EsiErrors::BadGateway.new when '403 Forbidden' error = EsiErrors::Forbidden.new when '420 status code 420' error = EsiErrors::ErrorLimited.new when '404 Not Found' error = EsiErrors::NotFound.new when 'Net::OpenTimeout' error = EsiErrors::OpenTimeout.new when 'SocketError' error = EsiErrors::SocketError.new when '503 Service Unavailable' error = EsiErrors::ServiceUnavailable.new when '520 status code 520' error = EsiErrors::UnknownError.new else puts exception.full_message # pp exception.backtrace_locations raise 'Unhandled error' end if debug_mode puts "EsiErrors::Base about to return : #{error.inspect}" puts "EsiErrors::Base : retry = #{error.retry?}" end error end
Public Instance Methods
pause( test_mode: false )
click to toggle source
# File lib/errors/base.rb, line 56 def pause( test_mode: false ) sleep( self.class::PAUSE_DURATION_VALUE ) unless test_mode end
retry?()
click to toggle source
# File lib/errors/base.rb, line 52 def retry? self.class::RETRY end