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.



24142
24143
24144
24145
24146
24147
24148
24149
24150
24151
24152
24153
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24142

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.



24140
24141
24142
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24140

def accept
  @accept
end

#color_depthObject (readonly)

Returns the value of attribute color_depth.



24140
24141
24142
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24140

def color_depth
  @color_depth
end

#java_enabledObject (readonly)

Returns the value of attribute java_enabled.



24140
24141
24142
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24140

def java_enabled
  @java_enabled
end

#languageObject (readonly)

Returns the value of attribute language.



24140
24141
24142
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24140

def language
  @language
end

#originObject (readonly)

Returns the value of attribute origin.



24140
24141
24142
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24140

def origin
  @origin
end

#screen_heightObject (readonly)

Returns the value of attribute screen_height.



24140
24141
24142
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24140

def screen_height
  @screen_height
end

#screen_widthObject (readonly)

Returns the value of attribute screen_width.



24140
24141
24142
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24140

def screen_width
  @screen_width
end

#time_zone_offsetObject (readonly)

Returns the value of attribute time_zone_offset.



24140
24141
24142
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24140

def time_zone_offset
  @time_zone_offset
end

#user_agentObject (readonly)

Returns the value of attribute user_agent.



24140
24141
24142
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24140

def user_agent
  @user_agent
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



24159
24160
24161
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24159

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

#to_hashObject



24163
24164
24165
24166
24167
24168
24169
24170
24171
24172
24173
24174
24175
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24163

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



24155
24156
24157
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24155

def to_json
  JSON.dump(to_hash)
end