Class: Io::Flow::V0::Models::BrowserInfo

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

Overview

Shopper browser info used as part of card authentication. All of these fields are required if you are using 3DS2.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(incoming = {}) ⇒ BrowserInfo

Returns a new instance of BrowserInfo.



24191
24192
24193
24194
24195
24196
24197
24198
24199
24200
24201
24202
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24191

def initialize(incoming={})
  opts = HttpClient::Helper.symbolize_keys(incoming)
  @origin = (x = opts.delete(:origin); x.nil? ? nil : HttpClient::Preconditions.assert_class('origin', x, String))
  @language = (x = opts.delete(:language); x.nil? ? nil : HttpClient::Preconditions.assert_class('language', x, String))
  @java_enabled = (x = opts.delete(:java_enabled); x.nil? ? nil : HttpClient::Preconditions.assert_boolean('java_enabled', x))
  @color_depth = (x = opts.delete(:color_depth); x.nil? ? nil : HttpClient::Preconditions.assert_class('color_depth', x, Integer))
  @screen_height = (x = opts.delete(:screen_height); x.nil? ? nil : HttpClient::Preconditions.assert_class('screen_height', x, Integer))
  @screen_width = (x = opts.delete(:screen_width); x.nil? ? nil : HttpClient::Preconditions.assert_class('screen_width', x, Integer))
  @time_zone_offset = (x = opts.delete(:time_zone_offset); x.nil? ? nil : HttpClient::Preconditions.assert_class('time_zone_offset', x, Integer))
  @user_agent = (x = opts.delete(:user_agent); x.nil? ? nil : HttpClient::Preconditions.assert_class('user_agent', x, String))
  @accept = (x = opts.delete(:accept); x.nil? ? nil : HttpClient::Preconditions.assert_class('accept', x, String))
end

Instance Attribute Details

#acceptObject (readonly)

Returns the value of attribute accept.



24189
24190
24191
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24189

def accept
  @accept
end

#color_depthObject (readonly)

Returns the value of attribute color_depth.



24189
24190
24191
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24189

def color_depth
  @color_depth
end

#java_enabledObject (readonly)

Returns the value of attribute java_enabled.



24189
24190
24191
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24189

def java_enabled
  @java_enabled
end

#languageObject (readonly)

Returns the value of attribute language.



24189
24190
24191
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24189

def language
  @language
end

#originObject (readonly)

Returns the value of attribute origin.



24189
24190
24191
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24189

def origin
  @origin
end

#screen_heightObject (readonly)

Returns the value of attribute screen_height.



24189
24190
24191
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24189

def screen_height
  @screen_height
end

#screen_widthObject (readonly)

Returns the value of attribute screen_width.



24189
24190
24191
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24189

def screen_width
  @screen_width
end

#time_zone_offsetObject (readonly)

Returns the value of attribute time_zone_offset.



24189
24190
24191
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24189

def time_zone_offset
  @time_zone_offset
end

#user_agentObject (readonly)

Returns the value of attribute user_agent.



24189
24190
24191
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24189

def user_agent
  @user_agent
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



24208
24209
24210
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24208

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

#to_hashObject



24212
24213
24214
24215
24216
24217
24218
24219
24220
24221
24222
24223
24224
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24212

def to_hash
  {
    :origin => origin,
    :language => language,
    :java_enabled => java_enabled,
    :color_depth => color_depth,
    :screen_height => screen_height,
    :screen_width => screen_width,
    :time_zone_offset => time_zone_offset,
    :user_agent => user_agent,
    :accept => accept
  }
end

#to_jsonObject



24204
24205
24206
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24204

def to_json
  JSON.dump(to_hash)
end