Class: Vpago::Acleda::PaymentRequestUpdater

Inherits:
PaymentRequestUpdater show all
Defined in:
lib/vpago/acleda/payment_request_updater.rb

Instance Attribute Summary

Attributes inherited from PaymentRequestUpdater

#error_message, #payment

Instance Method Summary collapse

Methods inherited from PaymentRequestUpdater

#ignore_on_failed?, #initialize, #success?

Constructor Details

This class inherits a constructor from Vpago::PaymentRequestUpdater

Instance Method Details

#callObject



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/vpago/acleda/payment_request_updater.rb', line 4

def call
  return if @payment.order.paid?

  checker = payment_status_checker

  if checker.success?
    @error_message = nil
    checker_result = {
      status: true,
      description: nil,
      acleda_response: checker.result
    }
    marker_options = @options.merge(checker_result)

    marker = ::Vpago::PaymentStatusMarker.new(@payment, marker_options)
    marker.call
  elsif !ignore_on_failed?
    @error_message = checker.error_message
    marker_options = @options.merge(status: false, description: @error_message)

    marker = ::Vpago::PaymentStatusMarker.new(@payment, marker_options)
    marker.call
  end
end