Class: Io::Flow::Reference::V0::Models::Country
- Inherits:
-
Object
- Object
- Io::Flow::Reference::V0::Models::Country
- Defined in:
- lib/io_flow_reference_v0.rb,
lib/flow_reference_v0_client.rb,
lib/flow-reference.rb
Overview
ISO 3166 country codes. Note Flow APIs will accept either the 2 or 3 character country code, but internally we normalize data and store as the 3 character, upper case ISO code. See api.flow.io/reference/countries
Instance Attribute Summary collapse
-
#default_currency ⇒ Object
readonly
Returns the value of attribute default_currency.
-
#default_delivered_duty ⇒ Object
readonly
Returns the value of attribute default_delivered_duty.
-
#iso_3166_2 ⇒ Object
readonly
Returns the value of attribute iso_3166_2.
-
#iso_3166_3 ⇒ Object
readonly
Returns the value of attribute iso_3166_3.
-
#languages ⇒ Object
readonly
Returns the value of attribute languages.
-
#measurement_system ⇒ Object
readonly
Returns the value of attribute measurement_system.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#timezones ⇒ Object
readonly
Returns the value of attribute timezones.
Instance Method Summary collapse
- #copy(incoming = {}) ⇒ Object
-
#initialize(incoming = {}) ⇒ Country
constructor
A new instance of Country.
- #locales ⇒ Object
- #to_hash ⇒ Object
- #to_json ⇒ Object
Constructor Details
#initialize(incoming = {}) ⇒ Country
Returns a new instance of Country.
279 280 281 282 283 284 285 286 287 288 289 290 |
# File 'lib/io_flow_reference_v0.rb', line 279 def initialize(incoming={}) opts = HttpClient::Helper.symbolize_keys(incoming) HttpClient::Preconditions.require_keys(opts, [:name, :iso_3166_2, :iso_3166_3, :languages, :measurement_system, :timezones], 'Country') @name = HttpClient::Preconditions.assert_class('name', opts.delete(:name), String) @iso_3166_2 = HttpClient::Preconditions.assert_class('iso_3166_2', opts.delete(:iso_3166_2), String) @iso_3166_3 = HttpClient::Preconditions.assert_class('iso_3166_3', opts.delete(:iso_3166_3), String) @languages = HttpClient::Preconditions.assert_class('languages', opts.delete(:languages), Array).map { |v| HttpClient::Preconditions.assert_class('languages', v, String) } @measurement_system = HttpClient::Preconditions.assert_class('measurement_system', opts.delete(:measurement_system), String) @default_currency = (x = opts.delete(:default_currency); x.nil? ? nil : HttpClient::Preconditions.assert_class('default_currency', x, String)) @timezones = HttpClient::Preconditions.assert_class('timezones', opts.delete(:timezones), Array).map { |v| HttpClient::Preconditions.assert_class('timezones', v, String) } @default_delivered_duty = (x = opts.delete(:default_delivered_duty); x.nil? ? nil : HttpClient::Preconditions.assert_class('default_delivered_duty', x, String)) end |
Instance Attribute Details
#default_currency ⇒ Object (readonly)
Returns the value of attribute default_currency.
277 278 279 |
# File 'lib/io_flow_reference_v0.rb', line 277 def default_currency @default_currency end |
#default_delivered_duty ⇒ Object (readonly)
Returns the value of attribute default_delivered_duty.
277 278 279 |
# File 'lib/io_flow_reference_v0.rb', line 277 def default_delivered_duty @default_delivered_duty end |
#iso_3166_2 ⇒ Object (readonly)
Returns the value of attribute iso_3166_2.
277 278 279 |
# File 'lib/io_flow_reference_v0.rb', line 277 def iso_3166_2 @iso_3166_2 end |
#iso_3166_3 ⇒ Object (readonly)
Returns the value of attribute iso_3166_3.
277 278 279 |
# File 'lib/io_flow_reference_v0.rb', line 277 def iso_3166_3 @iso_3166_3 end |
#languages ⇒ Object (readonly)
Returns the value of attribute languages.
277 278 279 |
# File 'lib/io_flow_reference_v0.rb', line 277 def languages @languages end |
#measurement_system ⇒ Object (readonly)
Returns the value of attribute measurement_system.
277 278 279 |
# File 'lib/io_flow_reference_v0.rb', line 277 def measurement_system @measurement_system end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
277 278 279 |
# File 'lib/io_flow_reference_v0.rb', line 277 def name @name end |
#timezones ⇒ Object (readonly)
Returns the value of attribute timezones.
277 278 279 |
# File 'lib/io_flow_reference_v0.rb', line 277 def timezones @timezones end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
296 297 298 |
# File 'lib/io_flow_reference_v0.rb', line 296 def copy(incoming={}) Country.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#locales ⇒ Object
119 120 121 122 123 |
# File 'lib/flow-reference.rb', line 119 def locales list = 'country_%s' % @iso_3166_3.downcase ref = ::Flow::Reference::Locales::Data ref.respond_to?(list) ? ref.send(list) : nil end |
#to_hash ⇒ Object
300 301 302 303 304 305 306 307 308 309 310 311 |
# File 'lib/io_flow_reference_v0.rb', line 300 def to_hash { :name => name, :iso_3166_2 => iso_3166_2, :iso_3166_3 => iso_3166_3, :languages => languages, :measurement_system => measurement_system, :default_currency => default_currency, :timezones => timezones, :default_delivered_duty => default_delivered_duty } end |
#to_json ⇒ Object
292 293 294 |
# File 'lib/io_flow_reference_v0.rb', line 292 def to_json JSON.dump(to_hash) end |