Sha256: 96cd68a53707d380550df29480115e4859dd3f1aa4260a4ff117f6a4256e5d57
Contents?: true
Size: 823 Bytes
Versions: 6
Compression:
Stored size: 823 Bytes
Contents
module PensioAPI module Callback FakeRequest = Struct.new(:headers, :body) def self.parse_success(xml) parse(xml, :success) end def self.parse_failure(xml) parse(xml, :failure) end def self.parse_chargeback(xml) parse(xml, :chargeback) end private def self.parse(xml, handler) params = MultiXml.parse(xml) request = FakeRequest.new( params['APIResponse']['Header'], params['APIResponse']['Body'] ) case handler when :success PensioAPI::Responses::SuccessCallback.new(request) when :failure PensioAPI::Responses::SubscriptionFailureCallback.new(request) when :chargeback PensioAPI::Responses::ChargebackCallback.new(request) end end end end
Version data entries
6 entries across 6 versions & 1 rubygems