Sha256: 44e48504e2824d9581184e91d4872f8a8fc05aa01802de09d0f097dbcf58e415

Contents?: true

Size: 725 Bytes

Versions: 7

Compression:

Stored size: 725 Bytes

Contents

require 'httparty'
require 'builder'

class Datatrans::XML::Transaction
  class Request 
    include HTTParty

    attr_accessor :params
    
    def initialize(params)
      @params = params
    end

    def process
      raise 'overwrite in subclass!'
    end
    
    
    private
    
    include Datatrans::Common

    def build_xml_request(service)
      xml = Builder::XmlMarkup.new
      xml.instruct!
      xml.tag! "#{service}Service", :version => 1 do
        xml.body :merchantId => Datatrans.merchant_id do |body|
          xml.transaction :refno => params[:refno] do
            xml.request do
              yield body
            end
          end
        end
      end
      xml.target!
    end
    
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
datatrans-2.3.1 lib/datatrans/xml/transaction/request.rb
datatrans-2.3.0 lib/datatrans/xml/transaction/request.rb
datatrans-2.2.2 lib/datatrans/xml/transaction/request.rb
datatrans-2.2.1 lib/datatrans/xml/transaction/request.rb
datatrans-2.2.0 lib/datatrans/xml/transaction/request.rb
datatrans-2.1.0 lib/datatrans/xml/transaction/request.rb
datatrans-2.0.0 lib/datatrans/xml/transaction/request.rb