module GdsApi::ExceptionHandling
def build_specific_http_error(error, url, details = nil)
def build_specific_http_error(error, url, details = nil) message = "url: #{url}\n#{error.http_body}" code = error.http_code case code when 404 GdsApi::HTTPNotFound.new(code, message, details) when 410 GdsApi::HTTPGone.new(code, message, details) when (400..499) GdsApi::HTTPClientError.new(code, message, details) when (500..599) GdsApi::HTTPServerError.new(code, message, details) else GdsApi::HTTPErrorResponse.new(code, message, details) end end
def ignoring(exception_or_exceptions, &block)
def ignoring(exception_or_exceptions, &block) yield rescue *exception_or_exceptions # Discard the exception end
def ignoring_missing(&block)
def ignoring_missing(&block) ignoring([HTTPNotFound, HTTPGone], &block) end