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.



24043
24044
24045
24046
24047
24048
24049
24050
24051
24052
24053
24054
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24043

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.



24041
24042
24043
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24041

def accept
  @accept
end

#color_depthObject (readonly)

Returns the value of attribute color_depth.



24041
24042
24043
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24041

def color_depth
  @color_depth
end

#java_enabledObject (readonly)

Returns the value of attribute java_enabled.



24041
24042
24043
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24041

def java_enabled
  @java_enabled
end

#languageObject (readonly)

Returns the value of attribute language.



24041
24042
24043
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24041

def language
  @language
end

#originObject (readonly)

Returns the value of attribute origin.



24041
24042
24043
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24041

def origin
  @origin
end

#screen_heightObject (readonly)

Returns the value of attribute screen_height.



24041
24042
24043
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24041

def screen_height
  @screen_height
end

#screen_widthObject (readonly)

Returns the value of attribute screen_width.



24041
24042
24043
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24041

def screen_width
  @screen_width
end

#time_zone_offsetObject (readonly)

Returns the value of attribute time_zone_offset.



24041
24042
24043
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24041

def time_zone_offset
  @time_zone_offset
end

#user_agentObject (readonly)

Returns the value of attribute user_agent.



24041
24042
24043
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24041

def user_agent
  @user_agent
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



24060
24061
24062
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24060

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

#to_hashObject



24064
24065
24066
24067
24068
24069
24070
24071
24072
24073
24074
24075
24076
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24064

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



24056
24057
24058
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24056

def to_json
  JSON.dump(to_hash)
end