Class: CyberSourceMergedSpec::StrongAuthentication4

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/cyber_source_merged_spec/models/strong_authentication4.rb

Overview

StrongAuthentication4 Model.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseModel

#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json

Constructor Details

#initialize(low_value_exemption_indicator: SKIP, risk_analysis_exemption_indicator: SKIP, trusted_merchant_exemption_indicator: SKIP, secure_corporate_payment_indicator: SKIP, delegated_authentication_exemption_indicator: SKIP, additional_properties: nil) ⇒ StrongAuthentication4

Returns a new instance of StrongAuthentication4.



102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
# File 'lib/cyber_source_merged_spec/models/strong_authentication4.rb', line 102

def initialize(low_value_exemption_indicator: SKIP,
               risk_analysis_exemption_indicator: SKIP,
               trusted_merchant_exemption_indicator: SKIP,
               secure_corporate_payment_indicator: SKIP,
               delegated_authentication_exemption_indicator: SKIP,
               additional_properties: nil)
  # Add additional model properties to the instance
  additional_properties = {} if additional_properties.nil?

  unless low_value_exemption_indicator == SKIP
    @low_value_exemption_indicator =
      low_value_exemption_indicator
  end
  unless risk_analysis_exemption_indicator == SKIP
    @risk_analysis_exemption_indicator =
      risk_analysis_exemption_indicator
  end
  unless trusted_merchant_exemption_indicator == SKIP
    @trusted_merchant_exemption_indicator =
      trusted_merchant_exemption_indicator
  end
  unless secure_corporate_payment_indicator == SKIP
    @secure_corporate_payment_indicator =
      secure_corporate_payment_indicator
  end
  unless delegated_authentication_exemption_indicator == SKIP
    @delegated_authentication_exemption_indicator =
      delegated_authentication_exemption_indicator
  end
  @additional_properties = additional_properties
end

Instance Attribute Details

#delegated_authentication_exemption_indicatorString

This field will contain the delegated authentication exemption indicator with one of the following values: Possible values:

  • 0 (delegated Authentication exemption does not apply to the transaction)
  • 1 (Transaction exempt from SCA as authentication has been delegated to other provider (PSP,Acquirer)) Only applicable for SCA participants. Only one of the SCA flags (senderInformation.consumerAuthentication.strongAuthentication.*) may be supplied at once.

Returns:

  • (String)


69
70
71
# File 'lib/cyber_source_merged_spec/models/strong_authentication4.rb', line 69

def delegated_authentication_exemption_indicator
  @delegated_authentication_exemption_indicator
end

#low_value_exemption_indicatorString

This field will contain the low value exemption indicator with one of the following values: Possible values:

  • 0 ( low value exemption does not apply to the transaction)
  • 1 (Transaction exempt from SCA as the merchant/acquirer has determined it to be a low value payment) Only applicable for SCA participants. Only one of the SCA flags (senderInformation.consumerAuthentication.strongAuthentication.*) may be supplied at once.

Returns:

  • (String)


22
23
24
# File 'lib/cyber_source_merged_spec/models/strong_authentication4.rb', line 22

def low_value_exemption_indicator
  @low_value_exemption_indicator
end

#risk_analysis_exemption_indicatorString

This field will contain the transaction risk analysis exemption indicator with one of the following values: Possible values:

  • 0 (TRA exemption does not apply to the transaction)
  • 1 (Transaction exempt from SCA as the merchant/acquirer has determined it to be low risk in accordance with the criteria defined by PSD2/RTS) Only applicable for SCA participants. Only one of the SCA flags (senderInformation.consumerAuthentication.strongAuthentication.*) may be supplied at once.

Returns:

  • (String)


34
35
36
# File 'lib/cyber_source_merged_spec/models/strong_authentication4.rb', line 34

def risk_analysis_exemption_indicator
  @risk_analysis_exemption_indicator
end

#secure_corporate_payment_indicatorString

This field will contain the secure corporate payment exemption indicator with one of the following values: Possible values:

  • 0 (SCA exemption does not apply to the transaction)
  • 1 (Transaction exempt from SCA as the merchant/acquirer has determined it as a secure corporate payment) Only applicable for SCA participants. Only one of the SCA flags (senderInformation.consumerAuthentication.strongAuthentication.*) may be supplied at once.

Returns:

  • (String)


56
57
58
# File 'lib/cyber_source_merged_spec/models/strong_authentication4.rb', line 56

def secure_corporate_payment_indicator
  @secure_corporate_payment_indicator
end

#trusted_merchant_exemption_indicatorString

Possible values:

  • 0 (Trusted merchant exemption does not apply to the transaction)
  • 1 (Transaction exempt from SCA as it originated at a merchant trusted by the cardholder) Only applicable for SCA participants. Only one of the SCA flags (senderInformation.consumerAuthentication.strongAuthentication.*) may be supplied at once.

Returns:

  • (String)


44
45
46
# File 'lib/cyber_source_merged_spec/models/strong_authentication4.rb', line 44

def trusted_merchant_exemption_indicator
  @trusted_merchant_exemption_indicator
end

Class Method Details

.from_element(root) ⇒ Object



166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
# File 'lib/cyber_source_merged_spec/models/strong_authentication4.rb', line 166

def self.from_element(root)
  low_value_exemption_indicator = XmlUtilities.from_element(
    root, 'lowValueExemptionIndicator', String
  )
  risk_analysis_exemption_indicator = XmlUtilities.from_element(
    root, 'riskAnalysisExemptionIndicator', String
  )
  trusted_merchant_exemption_indicator = XmlUtilities.from_element(
    root, 'trustedMerchantExemptionIndicator', String
  )
  secure_corporate_payment_indicator = XmlUtilities.from_element(
    root, 'secureCorporatePaymentIndicator', String
  )
  delegated_authentication_exemption_indicator = XmlUtilities.from_element(
    root, 'delegatedAuthenticationExemptionIndicator', String
  )

  new(low_value_exemption_indicator: low_value_exemption_indicator,
      risk_analysis_exemption_indicator: risk_analysis_exemption_indicator,
      trusted_merchant_exemption_indicator: trusted_merchant_exemption_indicator,
      secure_corporate_payment_indicator: secure_corporate_payment_indicator,
      delegated_authentication_exemption_indicator: delegated_authentication_exemption_indicator,
      additional_properties: additional_properties)
end

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
# File 'lib/cyber_source_merged_spec/models/strong_authentication4.rb', line 135

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  low_value_exemption_indicator =
    hash.key?('lowValueExemptionIndicator') ? hash['lowValueExemptionIndicator'] : SKIP
  risk_analysis_exemption_indicator =
    hash.key?('riskAnalysisExemptionIndicator') ? hash['riskAnalysisExemptionIndicator'] : SKIP
  trusted_merchant_exemption_indicator =
    hash.key?('trustedMerchantExemptionIndicator') ? hash['trustedMerchantExemptionIndicator'] : SKIP
  secure_corporate_payment_indicator =
    hash.key?('secureCorporatePaymentIndicator') ? hash['secureCorporatePaymentIndicator'] : SKIP
  delegated_authentication_exemption_indicator =
    hash.key?('delegatedAuthenticationExemptionIndicator') ? hash['delegatedAuthenticationExemptionIndicator'] : SKIP

  # Create a new hash for additional properties, removing known properties.
  new_hash = hash.reject { |k, _| names.value?(k) }

  additional_properties = APIHelper.get_additional_properties(
    new_hash, proc { |value| value }
  )

  # Create object from extracted values.
  StrongAuthentication4.new(low_value_exemption_indicator: low_value_exemption_indicator,
                            risk_analysis_exemption_indicator: risk_analysis_exemption_indicator,
                            trusted_merchant_exemption_indicator: trusted_merchant_exemption_indicator,
                            secure_corporate_payment_indicator: secure_corporate_payment_indicator,
                            delegated_authentication_exemption_indicator: delegated_authentication_exemption_indicator,
                            additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



72
73
74
75
76
77
78
79
80
81
82
83
84
# File 'lib/cyber_source_merged_spec/models/strong_authentication4.rb', line 72

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['low_value_exemption_indicator'] = 'lowValueExemptionIndicator'
  @_hash['risk_analysis_exemption_indicator'] =
    'riskAnalysisExemptionIndicator'
  @_hash['trusted_merchant_exemption_indicator'] =
    'trustedMerchantExemptionIndicator'
  @_hash['secure_corporate_payment_indicator'] =
    'secureCorporatePaymentIndicator'
  @_hash['delegated_authentication_exemption_indicator'] =
    'delegatedAuthenticationExemptionIndicator'
  @_hash
end

.nullablesObject

An array for nullable fields



98
99
100
# File 'lib/cyber_source_merged_spec/models/strong_authentication4.rb', line 98

def self.nullables
  []
end

.optionalsObject

An array for optional fields



87
88
89
90
91
92
93
94
95
# File 'lib/cyber_source_merged_spec/models/strong_authentication4.rb', line 87

def self.optionals
  %w[
    low_value_exemption_indicator
    risk_analysis_exemption_indicator
    trusted_merchant_exemption_indicator
    secure_corporate_payment_indicator
    delegated_authentication_exemption_indicator
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



228
229
230
231
232
233
234
235
236
237
# File 'lib/cyber_source_merged_spec/models/strong_authentication4.rb', line 228

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} low_value_exemption_indicator: #{@low_value_exemption_indicator.inspect},"\
  " risk_analysis_exemption_indicator: #{@risk_analysis_exemption_indicator.inspect},"\
  " trusted_merchant_exemption_indicator: #{@trusted_merchant_exemption_indicator.inspect},"\
  " secure_corporate_payment_indicator: #{@secure_corporate_payment_indicator.inspect},"\
  ' delegated_authentication_exemption_indicator:'\
  " #{@delegated_authentication_exemption_indicator.inspect}, additional_properties:"\
  " #{@additional_properties}>"
end

#to_sObject

Provides a human-readable string representation of the object.



216
217
218
219
220
221
222
223
224
225
# File 'lib/cyber_source_merged_spec/models/strong_authentication4.rb', line 216

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} low_value_exemption_indicator: #{@low_value_exemption_indicator},"\
  " risk_analysis_exemption_indicator: #{@risk_analysis_exemption_indicator},"\
  " trusted_merchant_exemption_indicator: #{@trusted_merchant_exemption_indicator},"\
  " secure_corporate_payment_indicator: #{@secure_corporate_payment_indicator},"\
  ' delegated_authentication_exemption_indicator:'\
  " #{@delegated_authentication_exemption_indicator}, additional_properties:"\
  " #{@additional_properties}>"
end

#to_xml_element(doc, root_name) ⇒ Object



191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
# File 'lib/cyber_source_merged_spec/models/strong_authentication4.rb', line 191

def to_xml_element(doc, root_name)
  root = doc.create_element(root_name)

  XmlUtilities.add_as_subelement(doc, root, 'lowValueExemptionIndicator',
                                 low_value_exemption_indicator)
  XmlUtilities.add_as_subelement(doc, root,
                                 'riskAnalysisExemptionIndicator',
                                 risk_analysis_exemption_indicator)
  XmlUtilities.add_as_subelement(doc, root,
                                 'trustedMerchantExemptionIndicator',
                                 trusted_merchant_exemption_indicator)
  XmlUtilities.add_as_subelement(doc, root,
                                 'secureCorporatePaymentIndicator',
                                 secure_corporate_payment_indicator)
  XmlUtilities.add_as_subelement(
    doc, root, 'delegatedAuthenticationExemptionIndicator',
    delegated_authentication_exemption_indicator
  )
  XmlUtilities.add_as_subelement(doc, root, 'additional_properties',
                                 additional_properties)

  root
end