Class: Io::Flow::V0::Clients::ShippingConfigurations

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

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ ShippingConfigurations

Returns a new instance of ShippingConfigurations.



4535
4536
4537
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 4535

def initialize(client)
  @client = HttpClient::Preconditions.assert_class('client', client, ::Io::Flow::V0::Client)
end

Instance Method Details

#delete_by_key(organization, key) ⇒ Object



4587
4588
4589
4590
4591
4592
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 4587

def delete_by_key(organization, key)
  HttpClient::Preconditions.assert_class('organization', organization, String)
  HttpClient::Preconditions.assert_class('key', key, String)
  r = @client.request("/#{CGI.escape(organization)}/shipping/configuration/#{CGI.escape(key)}").delete
  nil
end

#delete_lanes_by_key_and_id(organization, key, id) ⇒ Object



4647
4648
4649
4650
4651
4652
4653
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 4647

def delete_lanes_by_key_and_id(organization, key, id)
  HttpClient::Preconditions.assert_class('organization', organization, String)
  HttpClient::Preconditions.assert_class('key', key, String)
  HttpClient::Preconditions.assert_class('id', id, String)
  r = @client.request("/#{CGI.escape(organization)}/shipping/configuration/#{CGI.escape(key)}/lanes/#{CGI.escape(id)}").delete
  nil
end

#get(organization, incoming = {}) ⇒ Object



4539
4540
4541
4542
4543
4544
4545
4546
4547
4548
4549
4550
4551
4552
4553
4554
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 4539

def get(organization, incoming={})
  HttpClient::Preconditions.assert_class('organization', organization, String)
  opts = HttpClient::Helper.symbolize_keys(incoming)
  query = {
    :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
    :key => (x = opts.delete(:key); x.nil? ? nil : HttpClient::Preconditions.assert_class('key', x, Array).map { |v| HttpClient::Preconditions.assert_class('key', v, String) }),
    :name => (x = opts.delete(:name); x.nil? ? nil : HttpClient::Preconditions.assert_class('name', x, String)),
    :experience => (x = opts.delete(:experience); x.nil? ? nil : HttpClient::Preconditions.assert_class('experience', x, String)),
    :expand => (x = opts.delete(:expand); x.nil? ? nil : HttpClient::Preconditions.assert_class('expand', x, Array).map { |v| HttpClient::Preconditions.assert_class('expand', v, String) }),
    :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
    :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
    :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "name" : x), String)
  }.delete_if { |k, v| v.nil? }
  r = @client.request("/#{CGI.escape(organization)}/shipping/configuration").with_query(query).get
  r.map { |x| ::Io::Flow::V0::Models::ShippingConfiguration.new(x) }
end

#get_by_key(organization, key, incoming = {}) ⇒ Object



4563
4564
4565
4566
4567
4568
4569
4570
4571
4572
4573
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 4563

def get_by_key(organization, key, incoming={})
  HttpClient::Preconditions.assert_class('organization', organization, String)
  HttpClient::Preconditions.assert_class('key', key, String)
  opts = HttpClient::Helper.symbolize_keys(incoming)
  query = {
    :experience => (x = opts.delete(:experience); x.nil? ? nil : HttpClient::Preconditions.assert_class('experience', x, String)),
    :expand => (x = opts.delete(:expand); x.nil? ? nil : HttpClient::Preconditions.assert_class('expand', x, Array).map { |v| HttpClient::Preconditions.assert_class('expand', v, String) })
  }.delete_if { |k, v| v.nil? }
  r = @client.request("/#{CGI.escape(organization)}/shipping/configuration/#{CGI.escape(key)}").with_query(query).get
  ::Io::Flow::V0::Models::ShippingConfiguration.new(r)
end

#get_lanes_and_defaults_and_tiers_by_key_and_id(organization, key, id) ⇒ Object

Endpoint to retrieve the default tier of a shipping lane



4656
4657
4658
4659
4660
4661
4662
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 4656

def get_lanes_and_defaults_and_tiers_by_key_and_id(organization, key, id)
  HttpClient::Preconditions.assert_class('organization', organization, String)
  HttpClient::Preconditions.assert_class('key', key, String)
  HttpClient::Preconditions.assert_class('id', id, String)
  r = @client.request("/#{CGI.escape(organization)}/shipping/configuration/#{CGI.escape(key)}/lanes/#{CGI.escape(id)}/defaults/tiers").get
  ::Io::Flow::V0::Models::ShippingLaneDefaultTier.new(r)
end

#get_lanes_by_key(organization, key, incoming = {}) ⇒ Object



4594
4595
4596
4597
4598
4599
4600
4601
4602
4603
4604
4605
4606
4607
4608
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 4594

def get_lanes_by_key(organization, key, incoming={})
  HttpClient::Preconditions.assert_class('organization', organization, String)
  HttpClient::Preconditions.assert_class('key', key, String)
  opts = HttpClient::Helper.symbolize_keys(incoming)
  query = {
    :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
    :region => (x = opts.delete(:region); x.nil? ? nil : HttpClient::Preconditions.assert_class('region', x, String)),
    :expand => (x = opts.delete(:expand); x.nil? ? nil : HttpClient::Preconditions.assert_class('expand', x, Array).map { |v| HttpClient::Preconditions.assert_class('expand', v, String) }),
    :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
    :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
    :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "-created_at" : x), String)
  }.delete_if { |k, v| v.nil? }
  r = @client.request("/#{CGI.escape(organization)}/shipping/configuration/#{CGI.escape(key)}/lanes").with_query(query).get
  r.map { |x| ::Io::Flow::V0::Models::ShippingLane.new(x) }
end

#get_lanes_by_key_and_id(organization, key, id, incoming = {}) ⇒ Object



4622
4623
4624
4625
4626
4627
4628
4629
4630
4631
4632
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 4622

def get_lanes_by_key_and_id(organization, key, id, incoming={})
  HttpClient::Preconditions.assert_class('organization', organization, String)
  HttpClient::Preconditions.assert_class('key', key, String)
  HttpClient::Preconditions.assert_class('id', id, String)
  opts = HttpClient::Helper.symbolize_keys(incoming)
  query = {
    :expand => (x = opts.delete(:expand); x.nil? ? nil : HttpClient::Preconditions.assert_class('expand', x, Array).map { |v| HttpClient::Preconditions.assert_class('expand', v, String) })
  }.delete_if { |k, v| v.nil? }
  r = @client.request("/#{CGI.escape(organization)}/shipping/configuration/#{CGI.escape(key)}/lanes/#{CGI.escape(id)}").with_query(query).get
  ::Io::Flow::V0::Models::ShippingLane.new(r)
end

#post(organization, shipping_configuration_form) ⇒ Object



4556
4557
4558
4559
4560
4561
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 4556

def post(organization, shipping_configuration_form)
  HttpClient::Preconditions.assert_class('organization', organization, String)
  (x = shipping_configuration_form; x.is_a?(::Io::Flow::V0::Models::ShippingConfigurationForm) ? x : ::Io::Flow::V0::Models::ShippingConfigurationForm.new(x))
  r = @client.request("/#{CGI.escape(organization)}/shipping/configuration").with_json(shipping_configuration_form.to_json).post
  ::Io::Flow::V0::Models::ShippingConfiguration.new(r)
end

#post_lanes_by_key(organization, key, shipping_lane_form, incoming = {}) ⇒ Object



4610
4611
4612
4613
4614
4615
4616
4617
4618
4619
4620
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 4610

def post_lanes_by_key(organization, key, shipping_lane_form, incoming={})
  HttpClient::Preconditions.assert_class('organization', organization, String)
  HttpClient::Preconditions.assert_class('key', key, String)
  opts = HttpClient::Helper.symbolize_keys(incoming)
  query = {
    :expand => (x = opts.delete(:expand); x.nil? ? nil : HttpClient::Preconditions.assert_class('expand', x, Array).map { |v| HttpClient::Preconditions.assert_class('expand', v, String) })
  }.delete_if { |k, v| v.nil? }
  (x = shipping_lane_form; x.is_a?(::Io::Flow::V0::Models::ShippingLaneForm) ? x : ::Io::Flow::V0::Models::ShippingLaneForm.new(x))
  r = @client.request("/#{CGI.escape(organization)}/shipping/configuration/#{CGI.escape(key)}/lanes").with_query(query).with_json(shipping_lane_form.to_json).post
  ::Io::Flow::V0::Models::ShippingLane.new(r)
end

#put_by_key(organization, key, shipping_configuration_form, incoming = {}) ⇒ Object



4575
4576
4577
4578
4579
4580
4581
4582
4583
4584
4585
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 4575

def put_by_key(organization, key, shipping_configuration_form, incoming={})
  HttpClient::Preconditions.assert_class('organization', organization, String)
  HttpClient::Preconditions.assert_class('key', key, String)
  opts = HttpClient::Helper.symbolize_keys(incoming)
  query = {
    :expand => (x = opts.delete(:expand); x.nil? ? nil : HttpClient::Preconditions.assert_class('expand', x, Array).map { |v| HttpClient::Preconditions.assert_class('expand', v, String) })
  }.delete_if { |k, v| v.nil? }
  (x = shipping_configuration_form; x.is_a?(::Io::Flow::V0::Models::ShippingConfigurationForm) ? x : ::Io::Flow::V0::Models::ShippingConfigurationForm.new(x))
  r = @client.request("/#{CGI.escape(organization)}/shipping/configuration/#{CGI.escape(key)}").with_query(query).with_json(shipping_configuration_form.to_json).put
  ::Io::Flow::V0::Models::ShippingConfiguration.new(r)
end

#put_lanes_and_defaults_and_tiers_by_key_and_id(organization, key, id, shipping_lane_default_tier_form) ⇒ Object

Endpoint to set or udpate the default tier of a shipping lane



4665
4666
4667
4668
4669
4670
4671
4672
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 4665

def put_lanes_and_defaults_and_tiers_by_key_and_id(organization, key, id, shipping_lane_default_tier_form)
  HttpClient::Preconditions.assert_class('organization', organization, String)
  HttpClient::Preconditions.assert_class('key', key, String)
  HttpClient::Preconditions.assert_class('id', id, String)
  (x = shipping_lane_default_tier_form; x.is_a?(::Io::Flow::V0::Models::ShippingLaneDefaultTierForm) ? x : ::Io::Flow::V0::Models::ShippingLaneDefaultTierForm.new(x))
  r = @client.request("/#{CGI.escape(organization)}/shipping/configuration/#{CGI.escape(key)}/lanes/#{CGI.escape(id)}/defaults/tiers").with_json(shipping_lane_default_tier_form.to_json).put
  ::Io::Flow::V0::Models::ShippingLaneDefaultTier.new(r)
end

#put_lanes_by_key_and_id(organization, key, id, shipping_lane_form, incoming = {}) ⇒ Object



4634
4635
4636
4637
4638
4639
4640
4641
4642
4643
4644
4645
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 4634

def put_lanes_by_key_and_id(organization, key, id, shipping_lane_form, incoming={})
  HttpClient::Preconditions.assert_class('organization', organization, String)
  HttpClient::Preconditions.assert_class('key', key, String)
  HttpClient::Preconditions.assert_class('id', id, String)
  opts = HttpClient::Helper.symbolize_keys(incoming)
  query = {
    :expand => (x = opts.delete(:expand); x.nil? ? nil : HttpClient::Preconditions.assert_class('expand', x, Array).map { |v| HttpClient::Preconditions.assert_class('expand', v, String) })
  }.delete_if { |k, v| v.nil? }
  (x = shipping_lane_form; x.is_a?(::Io::Flow::V0::Models::ShippingLaneForm) ? x : ::Io::Flow::V0::Models::ShippingLaneForm.new(x))
  r = @client.request("/#{CGI.escape(organization)}/shipping/configuration/#{CGI.escape(key)}/lanes/#{CGI.escape(id)}").with_query(query).with_json(shipping_lane_form.to_json).put
  ::Io::Flow::V0::Models::ShippingLane.new(r)
end