Class: WirecardCheckoutPage::RequestChecksum
- Inherits:
-
Object
- Object
- WirecardCheckoutPage::RequestChecksum
- Includes:
- Utils, ValueHandling
- Defined in:
- lib/wirecard_checkout_page/request_checksum.rb
Constant Summary collapse
- FINGERPRINT_KEYS =
%w[ secret customerId amount paymentType currency language orderDescription serviceURL successURL cancelURL failureURL confirmURL orderReference requestFingerprintOrder ].freeze
Instance Attribute Summary collapse
-
#fingerprint_keys ⇒ Object
readonly
Returns the value of attribute fingerprint_keys.
-
#values ⇒ Object
readonly
Returns the value of attribute values.
Instance Method Summary collapse
-
#initialize(values = {}) ⇒ RequestChecksum
constructor
A new instance of RequestChecksum.
- #request_parameters ⇒ Object
Methods included from ValueHandling
#add_missing_key, #missing_keys, #missing_keys?, #reset_missing_keys
Methods included from Utils
Constructor Details
#initialize(values = {}) ⇒ RequestChecksum
Returns a new instance of RequestChecksum.
25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/wirecard_checkout_page/request_checksum.rb', line 25 def initialize(values = {}) @values = stringify_keys(values) @fingerprint_keys = @values.delete('fingerprint_keys') || FINGERPRINT_KEYS @secret = @values.delete('secret') or raise WirecardCheckoutPage::ValueMissing, 'value "secret" is missing' @values = add_some_defaults @values @values.freeze @fingerprint_keys = fingerprint_keys @secret = @secret reset_missing_keys end |
Instance Attribute Details
#fingerprint_keys ⇒ Object (readonly)
Returns the value of attribute fingerprint_keys.
37 38 39 |
# File 'lib/wirecard_checkout_page/request_checksum.rb', line 37 def fingerprint_keys @fingerprint_keys end |
#values ⇒ Object (readonly)
Returns the value of attribute values.
39 40 41 |
# File 'lib/wirecard_checkout_page/request_checksum.rb', line 39 def values @values end |
Instance Method Details
#request_parameters ⇒ Object
41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/wirecard_checkout_page/request_checksum.rb', line 41 def request_parameters reset_missing_keys parameters = @values.dup parameters['requestFingerprintOrder'] = requestFingerprintOrder parameters['requestFingerprint'] = fingerprint if missing_keys? raise WirecardCheckoutPage::ValueMissing, "values #{missing_keys * ', ' } are missing" end parameters end |