class PagSeguro::Subscription::ResponseSerializer

Attributes

xml[R]

Public Class Methods

new(xml) click to toggle source
# File lib/pagseguro/subscription/response_serializer.rb, line 6
def initialize(xml)
  @xml = xml
end

Public Instance Methods

serialize() click to toggle source
# File lib/pagseguro/subscription/response_serializer.rb, line 10
def serialize
  {}.tap do |data|
    data[:code] = xml.css('directPreApproval > code').text
  end
end

Private Instance Methods

serialize_address() click to toggle source
# File lib/pagseguro/subscription/response_serializer.rb, line 48
def serialize_address
  {}.tap do |data|
    data[:street] = xml.at_css('sender > address > street').text
    data[:number] = xml.at_css('sender > address > number').text
    data[:complement] = xml.at_css('sender > address > complement').text
    data[:district] = xml.at_css('sender > address > district').text
    data[:city] = xml.at_css('sender > address > city').text
    data[:state] = xml.at_css('sender > address > state').text
    data[:country] = xml.at_css('sender > address > country').text
    data[:postal_code] = xml.at_css('sender > address > postalCode').text
  end
end
serialize_phone() click to toggle source
# File lib/pagseguro/subscription/response_serializer.rb, line 41
def serialize_phone
  {}.tap do |data|
    data[:area_code] = xml.css('sender > phone > areaCode').text
    data[:number] = xml.css('sender > phone > number').text
  end
end
serialize_sender() click to toggle source
# File lib/pagseguro/subscription/response_serializer.rb, line 32
def serialize_sender
  {}.tap do |data|
    data[:name] = xml.at_css('sender > name').text
    data[:email] = xml.at_css('sender > email').text
    data[:phone] = serialize_phone if xml.at_css('phone')
    data[:address] = serialize_address if xml.at_css('address')
  end
end