class RocketGate::Request
Attributes
transaction[RW]
Public Class Methods
new(transaction = nil)
click to toggle source
# File lib/rocketgate/request.rb, line 7 def initialize(transaction = nil) @transaction = transaction end
Public Instance Methods
base_parameters()
click to toggle source
# File lib/rocketgate/request.rb, line 25 def base_parameters config = RocketGate.configuration config.validate! base_params = { version: config.request_version, merchantID: config.merchant_id, merchantPassword: config.merchant_password } verification_params = {} unless transaction.nil? verification_params[:cvv2Check] = yes_or_ignore(config.require_cvv) unless transaction.is_hashed? verification_params[:avsCheck] = yes_or_ignore(config.require_avs) verification_params[:scrub] = yes_or_ignore(config.require_scrub) base_params.merge!(verification_params) unless transaction.is_referenced? end base_params end
build_gateway_request()
click to toggle source
# File lib/rocketgate/request.rb, line 11 def build_gateway_request transaction.validate! parameters = base_parameters parameters.merge!(transaction.to_hash) xml_head = '<?xml version="1.0" encoding="UTF-8"?>' xml_body = Gyoku.xml({ gatewayRequest: parameters.select{|_,v| !v.nil? } }) [xml_head, xml_body].join end
yes_or_ignore(boolean)
click to toggle source
# File lib/rocketgate/request.rb, line 46 def yes_or_ignore(boolean) boolean ? 'YES' : 'IGNORE' end