Class: Kount::Request
- Inherits:
-
Object
- Object
- Kount::Request
- Defined in:
- lib/kount/request.rb
Overview
This class acts as an abstract class for each type of request.
Instance Attribute Summary collapse
-
#params ⇒ Object
Returns the value of attribute params.
Instance Method Summary collapse
-
#add_params(hash) ⇒ Object
Add params to the current request object.
-
#initialize(initial_params = {}) ⇒ Request
constructor
Initialize a Request object.
-
#prepare_params(version, merchant_id, response_format, _ksalt = '') ⇒ Object
This method creates the final state of the params collection such that it can be sent to RIS.
Constructor Details
#initialize(initial_params = {}) ⇒ Request
Initialize a Request object
Example usage
Not used directly. Use Inquiry or Update instead.
16 17 18 19 20 21 22 |
# 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 |
Instance Attribute Details
#params ⇒ Object
Returns the value of attribute params.
8 9 10 |
# File 'lib/kount/request.rb', line 8 def params @params end |
Instance Method Details
#add_params(hash) ⇒ Object
Add params to the current request object
26 27 28 |
# File 'lib/kount/request.rb', line 26 def add_params(hash) @params.merge!(hash) end |
#prepare_params(version, merchant_id, response_format, _ksalt = '') ⇒ Object
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.
39 40 41 42 43 44 45 46 47 48 |
# 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 |