Sha256: 913f5e18b277bc3e5935e3768e1355f4917d34223eb0f69ea80a77c7debcd220
Contents?: true
Size: 1.76 KB
Versions: 2
Compression:
Stored size: 1.76 KB
Contents
class OpenpayExceptionFactory def OpenpayExceptionFactory::create(exception) LOG.warn("An exception has been raised (original exception class: #{exception.class})") case exception #resource not found #malformed jason, invalid data, invalid request when RestClient::BadRequest , RestClient::ResourceNotFound , RestClient::Conflict , RestClient::PaymentRequired , RestClient::UnprocessableEntity oe=OpenpayTransactionException.new exception.http_body LOG.warn "-OpenpayTransactionException: #{exception.http_body}" @errors=true raise oe #connection, timeouts, network related errors when Errno::EADDRINUSE , Errno::ETIMEDOUT ,OpenSSL::SSL::SSLError #since this execeptions are not based on the rest api exeptions #we do not have the json message so we just build the exception #with the original exception message set in e.description and e.message oe=OpenpayConnectionException.new(exception.message,false) LOG.warn exception.message @errors=true raise oe #badgateway-connection error, invalid credentials when RestClient::BadGateway, RestClient::Unauthorized oe=OpenpayConnectionException.new exception.http_body LOG.warn exception.http_body @errors=true raise oe when RestClient::Exception , RestClient::InternalServerError oe=OpenpayException.new exception.http_body LOG.warn exception.http_body @errors=true raise oe else #We won't hide unknown exceptions , those should be raised LOG.warn exception.message raise exception end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
openpay-1.0.1 | lib/OpenPay/errors/openpay_exception_factory.rb |
openpay-0.9.8 | lib/OpenPay/errors/open_pay_exception_factory.rb |