Class: Io::Flow::V0::Models::AuthorizationResult

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

Overview

Contains the result of the authorization. If an immediate response is not available, the state will be ‘pending’ - this usually indicates fraud review requires additional time / verification (or a potential network issue with the issuing bank).

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(incoming = {}) ⇒ AuthorizationResult

Returns a new instance of AuthorizationResult.



31247
31248
31249
31250
31251
31252
31253
31254
31255
31256
31257
31258
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31247

def initialize(incoming={})
  opts = HttpClient::Helper.symbolize_keys(incoming)
  HttpClient::Preconditions.require_keys(opts, [:status], 'AuthorizationResult')
  @status = (x = opts.delete(:status); x.is_a?(::Io::Flow::V0::Models::AuthorizationStatus) ? x : ::Io::Flow::V0::Models::AuthorizationStatus.apply(x))
  @action = (x = opts.delete(:action); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::AuthorizationResultAction) ? x : ::Io::Flow::V0::Models::AuthorizationResultAction.from_json(x)))
  @decline_code = (x = opts.delete(:decline_code); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::AuthorizationDeclineCode) ? x : ::Io::Flow::V0::Models::AuthorizationDeclineCode.apply(x)))
  @avs = (x = opts.delete(:avs); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Avs) ? x : ::Io::Flow::V0::Models::Avs.new(x)))
  @cvv = (x = opts.delete(:cvv); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Cvv) ? x : ::Io::Flow::V0::Models::Cvv.new(x)))
  @three_d_secure = (x = opts.delete(:three_d_secure); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ThreeDSecure) ? x : ::Io::Flow::V0::Models::ThreeDSecure.new(x)))
  @description = (x = opts.delete(:description); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::AuthorizationResultDescription) ? x : ::Io::Flow::V0::Models::AuthorizationResultDescription.new(x)))
  @authorization_code = (x = opts.delete(:authorization_code); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::AuthorizationCode) ? x : ::Io::Flow::V0::Models::AuthorizationCode.new(x)))
end

Instance Attribute Details

#actionObject (readonly)

Returns the value of attribute action.



31245
31246
31247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31245

def action
  @action
end

#authorization_codeObject (readonly)

Returns the value of attribute authorization_code.



31245
31246
31247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31245

def authorization_code
  @authorization_code
end

#avsObject (readonly)

Returns the value of attribute avs.



31245
31246
31247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31245

def avs
  @avs
end

#cvvObject (readonly)

Returns the value of attribute cvv.



31245
31246
31247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31245

def cvv
  @cvv
end

#decline_codeObject (readonly)

Returns the value of attribute decline_code.



31245
31246
31247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31245

def decline_code
  @decline_code
end

#descriptionObject (readonly)

Returns the value of attribute description.



31245
31246
31247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31245

def description
  @description
end

#statusObject (readonly)

Returns the value of attribute status.



31245
31246
31247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31245

def status
  @status
end

#three_d_secureObject (readonly)

Returns the value of attribute three_d_secure.



31245
31246
31247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31245

def three_d_secure
  @three_d_secure
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



31264
31265
31266
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31264

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

#to_hashObject



31268
31269
31270
31271
31272
31273
31274
31275
31276
31277
31278
31279
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31268

def to_hash
  {
    :status => status.value,
    :action => action.nil? ? nil : action.to_hash,
    :decline_code => decline_code.nil? ? nil : decline_code.value,
    :avs => avs.nil? ? nil : avs.to_hash,
    :cvv => cvv.nil? ? nil : cvv.to_hash,
    :three_d_secure => three_d_secure.nil? ? nil : three_d_secure.to_hash,
    :description => description.nil? ? nil : description.to_hash,
    :authorization_code => authorization_code.nil? ? nil : authorization_code.to_hash
  }
end

#to_jsonObject



31260
31261
31262
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31260

def to_json
  JSON.dump(to_hash)
end