Class: PagSeguro::Payment::Serializer

Inherits:
Object
  • Object
show all
Defined in:
lib/pagseguro/payment/serializer.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(payment) ⇒ Serializer

Returns a new instance of Serializer.



7
8
9
10
# File 'lib/pagseguro/payment/serializer.rb', line 7

def initialize(payment)
  @payment = payment
  @params = {}
end

Instance Attribute Details

#paymentObject (readonly)

The payment request that will be serialized.



5
6
7
# File 'lib/pagseguro/payment/serializer.rb', line 5

def payment
  @payment
end

Instance Method Details

#to_paramsObject



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/pagseguro/payment/serializer.rb', line 12

def to_params
  params[:notificationURL] = payment.notification_url
  params[:currency] = payment.currency
  params[:paymentMethod] = payment.payment_method
  params[:paymentMode] = payment.payment_mode
  params[:reference] = payment.reference
  params[:extraAmount] = payment.extra_amount
  params[:noInterestInstallmentQuantity] = payment.max_installment_no_interest

  payment.items.each.with_index(1) do |item, index|
    serialize_item(item, index)
  end

  serialize_sender(payment.sender)
  serialize_bank(payment.bank)
  serialize_credit_card(payment.credit_card)
  serialize_shipping(payment.shipping)


  params[:receiverEmail] = payment.receiver_email if payment.receiver_email

  params.delete_if {|key, value| value.nil? }

  params
end