class Kount::Request
This class acts as an abstract class for each type of request.
Attributes
params[RW]
Public Class Methods
new(initial_params = {})
click to toggle source
Initialize a Request
object
Example usage
Not used directly. Use Inquiry or Update instead.
@param initial_params [Hash] Initial params for request
# File lib/kount/request.rb, line 16 def initialize(initial_params = {}) @logger = Logger.new("Logs.log") raise "Cannot directly instantiate a #{self.class}." if self.class == Request @params = initial_params @logger.info("Request Objects : #{@params}") end
Public Instance Methods
add_params(hash)
click to toggle source
Add params to the current request object @param hash [Hash] Hash of values to be added
# File lib/kount/request.rb, line 26 def add_params(hash) @params.merge!(hash) end
prepare_params(version, merchant_id, response_format, _ksalt = '')
click to toggle source
This method creates the final state of the params collection such that it can be sent to RIS. Items that are specific to either the Inquiry
or Update
calls are delegated to the prepare_params
method in each respective class.
@param version [String] RIS version @param merchant_id [String] Merchant ID @param response_format [String] Response
format (JSON) @param _ksalt [String] Kount
supplied secret salt for KHASH
# File lib/kount/request.rb, line 39 def prepare_params(version, merchant_id, response_format, _ksalt = '') # The KSALT is not used here, however, it is used in the corresponding # subclass prepare_params methods. if merchant_id == '' # Check if merchant_id is set or not @logger.debug("Merchant Id not set.") elsif version.empty? # Check VERSION is set or not @logger.debug("Version not set") end params.merge!(VERS: version, MERC: merchant_id, FRMT: response_format) end