Class: Io::Flow::V0::Models::DeliveryWindowComponents

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

Overview

Components and information taken into account when calculating a final delivery window.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(incoming = {}) ⇒ DeliveryWindowComponents

Returns a new instance of DeliveryWindowComponents.



36135
36136
36137
36138
36139
36140
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 36135

def initialize(incoming={})
  opts = HttpClient::Helper.symbolize_keys(incoming)
  HttpClient::Preconditions.require_keys(opts, [:shipment_estimate, :transit_estimate], 'DeliveryWindowComponents')
  @shipment_estimate = (x = opts.delete(:shipment_estimate); x.is_a?(::Io::Flow::V0::Models::DeliveryWindowComponent) ? x : ::Io::Flow::V0::Models::DeliveryWindowComponent.new(x))
  @transit_estimate = (x = opts.delete(:transit_estimate); x.is_a?(::Io::Flow::V0::Models::DeliveryWindowComponent) ? x : ::Io::Flow::V0::Models::DeliveryWindowComponent.new(x))
end

Instance Attribute Details

#shipment_estimateObject (readonly)

Returns the value of attribute shipment_estimate.



36133
36134
36135
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 36133

def shipment_estimate
  @shipment_estimate
end

#transit_estimateObject (readonly)

Returns the value of attribute transit_estimate.



36133
36134
36135
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 36133

def transit_estimate
  @transit_estimate
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



36146
36147
36148
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 36146

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

#to_hashObject



36150
36151
36152
36153
36154
36155
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 36150

def to_hash
  {
    :shipment_estimate => shipment_estimate.to_hash,
    :transit_estimate => transit_estimate.to_hash
  }
end

#to_jsonObject



36142
36143
36144
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 36142

def to_json
  JSON.dump(to_hash)
end