Class: Io::Flow::V0::Models::SnapshotUpserted

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

Instance Attribute Summary collapse

Attributes inherited from Event

#discriminator

Instance Method Summary collapse

Methods inherited from Event

from_json, #to_hash

Constructor Details

#initialize(incoming = {}) ⇒ SnapshotUpserted



52454
52455
52456
52457
52458
52459
52460
52461
52462
52463
52464
52465
52466
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 52454

def initialize(incoming={})
  super(:discriminator => Event::Types::SNAPSHOT_UPSERTED)
  opts = HttpClient::Helper.symbolize_keys(incoming)
  HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :snapshot_id, :available, :center_key, :item_number, :quantity], 'SnapshotUpserted')
  @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)
  @snapshot_id = HttpClient::Preconditions.assert_class('snapshot_id', opts.delete(:snapshot_id), String)
  @available = HttpClient::Preconditions.assert_class('available', opts.delete(:available), Integer)
  @center_key = HttpClient::Preconditions.assert_class('center_key', opts.delete(:center_key), String)
  @item_number = HttpClient::Preconditions.assert_class('item_number', opts.delete(:item_number), String)
  @quantity = HttpClient::Preconditions.assert_class('quantity', opts.delete(:quantity), Integer)
end

Instance Attribute Details

#availableObject (readonly)

Returns the value of attribute available.



52452
52453
52454
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 52452

def available
  @available
end

#center_keyObject (readonly)

Returns the value of attribute center_key.



52452
52453
52454
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 52452

def center_key
  @center_key
end

#event_idObject (readonly)

Returns the value of attribute event_id.



52452
52453
52454
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 52452

def event_id
  @event_id
end

#item_numberObject (readonly)

Returns the value of attribute item_number.



52452
52453
52454
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 52452

def item_number
  @item_number
end

#organizationObject (readonly)

Returns the value of attribute organization.



52452
52453
52454
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 52452

def organization
  @organization
end

#quantityObject (readonly)

Returns the value of attribute quantity.



52452
52453
52454
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 52452

def quantity
  @quantity
end

#snapshot_idObject (readonly)

Returns the value of attribute snapshot_id.



52452
52453
52454
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 52452

def snapshot_id
  @snapshot_id
end

#timestampObject (readonly)

Returns the value of attribute timestamp.



52452
52453
52454
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 52452

def timestamp
  @timestamp
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



52472
52473
52474
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 52472

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

#subtype_to_hashObject



52476
52477
52478
52479
52480
52481
52482
52483
52484
52485
52486
52487
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 52476

def subtype_to_hash
  {
    :event_id => event_id,
    :timestamp => timestamp,
    :organization => organization,
    :snapshot_id => snapshot_id,
    :available => available,
    :center_key => center_key,
    :item_number => item_number,
    :quantity => quantity
  }
end

#to_jsonObject



52468
52469
52470
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 52468

def to_json
  JSON.dump(to_hash)
end