Sha256: 338745f822178a0a931a8dc66af6d70d595bed891b8d7315848e8b9ba46cf7d8

Contents?: true

Size: 513 Bytes

Versions: 4

Compression:

Stored size: 513 Bytes

Contents

# frozen_string_literal: true

require 'active_merchant/network_connection_retries'

module SolidusPaypalBraintree
  module RequestProtection
    include ActiveMerchant::NetworkConnectionRetries

    def protected_request
      raise ArgumentError unless block_given?

      options = {
        connection_exceptions: {
          Braintree::BraintreeError => 'Error while connecting to Braintree gateway'
        },
        logger: Rails.logger
      }
      retry_exceptions(options) { yield }
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
solidus_paypal_braintree-1.1.2 lib/solidus_paypal_braintree/request_protection.rb
solidus_paypal_braintree-1.1.1 lib/solidus_paypal_braintree/request_protection.rb
solidus_paypal_braintree-1.1.0 lib/solidus_paypal_braintree/request_protection.rb
solidus_paypal_braintree-1.0.0 lib/solidus_paypal_braintree/request_protection.rb