Class: Io::Flow::V0::Models::ThreedsTwoChallengeRequest

Inherits:
ThreedsChallengeAction show all
Defined in:
lib/flow_commerce/flow_api_v0_client.rb

Overview

Data that must be passed to the 3DS Client to help the issuer ACS render a challenge for the user.

Instance Attribute Summary collapse

Attributes inherited from ThreedsChallengeAction

#discriminator

Instance Method Summary collapse

Methods inherited from ThreedsChallengeAction

from_json, #to_hash

Constructor Details

#initialize(incoming = {}) ⇒ ThreedsTwoChallengeRequest

Returns a new instance of ThreedsTwoChallengeRequest.



70550
70551
70552
70553
70554
70555
70556
70557
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 70550

def initialize(incoming={})
  super(:discriminator => ThreedsChallengeAction::Types::THREEDS_TWO_CHALLENGE_REQUEST)
  opts = HttpClient::Helper.symbolize_keys(incoming)
  HttpClient::Preconditions.require_keys(opts, [:acs_url, :challenge_request], 'ThreedsTwoChallengeRequest')
  @acs_url = HttpClient::Preconditions.assert_class('acs_url', opts.delete(:acs_url), String)
  @challenge_request = HttpClient::Preconditions.assert_class('challenge_request', opts.delete(:challenge_request), String)
  @session_data = (x = opts.delete(:session_data); x.nil? ? nil : HttpClient::Preconditions.assert_class('session_data', x, String))
end

Instance Attribute Details

#acs_urlObject (readonly)

Returns the value of attribute acs_url.



70548
70549
70550
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 70548

def acs_url
  @acs_url
end

#challenge_requestObject (readonly)

Returns the value of attribute challenge_request.



70548
70549
70550
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 70548

def challenge_request
  @challenge_request
end

#session_dataObject (readonly)

Returns the value of attribute session_data.



70548
70549
70550
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 70548

def session_data
  @session_data
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



70563
70564
70565
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 70563

def copy(incoming={})
  ThreedsTwoChallengeRequest.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
end

#subtype_to_hashObject



70567
70568
70569
70570
70571
70572
70573
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 70567

def subtype_to_hash
  {
    :acs_url => acs_url,
    :challenge_request => challenge_request,
    :session_data => session_data
  }
end

#to_jsonObject



70559
70560
70561
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 70559

def to_json
  JSON.dump(to_hash)
end