Class: Io::Flow::V0::Models::OrganizationRatesPublished
- Defined in:
- lib/flow_commerce/flow_api_v0_client.rb
Overview
Represents the full list of exchange rates in effect for an organization. This is a bulk event - meaning any time an individual rate changes, we publish the new complete list of exchange rates. Note this event is published a few minutes after a rate is published, allowing us to aggregate multiple changes in a short period of time to reduce the number of organization_rates_published we publish.
Instance Attribute Summary collapse
-
#data ⇒ Object
readonly
Returns the value of attribute data.
-
#event_id ⇒ Object
readonly
Returns the value of attribute event_id.
-
#organization ⇒ Object
readonly
Returns the value of attribute organization.
-
#timestamp ⇒ Object
readonly
Returns the value of attribute timestamp.
Attributes inherited from Event
Instance Method Summary collapse
- #copy(incoming = {}) ⇒ Object
-
#initialize(incoming = {}) ⇒ OrganizationRatesPublished
constructor
A new instance of OrganizationRatesPublished.
- #subtype_to_hash ⇒ Object
- #to_json ⇒ Object
Methods inherited from Event
Constructor Details
#initialize(incoming = {}) ⇒ OrganizationRatesPublished
Returns a new instance of OrganizationRatesPublished.
31287 31288 31289 31290 31291 31292 31293 31294 31295 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31287 def initialize(incoming={}) super(:discriminator => Event::Types::ORGANIZATION_RATES_PUBLISHED) opts = HttpClient::Helper.symbolize_keys(incoming) HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :data], 'OrganizationRatesPublished') @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String) @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime) @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String) @data = (x = opts.delete(:data); x.is_a?(::Io::Flow::V0::Models::OrganizationRatesData) ? x : ::Io::Flow::V0::Models::OrganizationRatesData.new(x)) end |
Instance Attribute Details
#data ⇒ Object (readonly)
Returns the value of attribute data.
31285 31286 31287 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31285 def data @data end |
#event_id ⇒ Object (readonly)
Returns the value of attribute event_id.
31285 31286 31287 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31285 def event_id @event_id end |
#organization ⇒ Object (readonly)
Returns the value of attribute organization.
31285 31286 31287 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31285 def organization @organization end |
#timestamp ⇒ Object (readonly)
Returns the value of attribute timestamp.
31285 31286 31287 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31285 def @timestamp end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
31301 31302 31303 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31301 def copy(incoming={}) OrganizationRatesPublished.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#subtype_to_hash ⇒ Object
31305 31306 31307 31308 31309 31310 31311 31312 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31305 def subtype_to_hash { :event_id => event_id, :timestamp => , :organization => organization, :data => data.to_hash } end |
#to_json ⇒ Object
31297 31298 31299 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31297 def to_json JSON.dump(to_hash) end |