Module: TinyBuilder::ApigatewayHelper
- Included in:
- ShopifyQuantity, WoocommerceQuantity, ZaloraQuantity
- Defined in:
- lib/tiny_builder/apigateway_helper.rb
Instance Method Summary collapse
- #apigateway_url ⇒ Object
- #headers ⇒ Object
- #inventory_item_payload(listing) ⇒ Object
- #location_payload ⇒ Object
- #rest_client(params, rescued_codes = 200) ⇒ Object
- #shopify_inventory_item_url ⇒ Object
- #shopify_location_url ⇒ Object
- #woocommerce_item_payload(listing) ⇒ Object
- #woocommerce_product_url ⇒ Object
- #zalora_stock_payload(listing) ⇒ Object
- #zalora_stock_url ⇒ Object
Instance Method Details
#apigateway_url ⇒ Object
17 18 19 |
# File 'lib/tiny_builder/apigateway_helper.rb', line 17 def apigateway_url ENV['API_GATEWAY_URL'] || raise('api gateway is not set') end |
#headers ⇒ Object
25 26 27 |
# File 'lib/tiny_builder/apigateway_helper.rb', line 25 def headers { content_type: :json, accept: :json } end |
#inventory_item_payload(listing) ⇒ Object
38 39 40 41 42 43 |
# File 'lib/tiny_builder/apigateway_helper.rb', line 38 def inventory_item_payload(listing) { "credential": credential, "data": { "local_id": listing[:local_id] } }.to_json end |
#location_payload ⇒ Object
45 46 47 48 49 |
# File 'lib/tiny_builder/apigateway_helper.rb', line 45 def location_payload { "credential": credential }.to_json end |
#rest_client(params, rescued_codes = 200) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 |
# File 'lib/tiny_builder/apigateway_helper.rb', line 5 def rest_client(params, rescued_codes = 200) RestClient::Request.execute(params.merge(timeout: 3)) do |response| code = response.code resp = response.body.to_str unless Array.wrap(rescued_codes).include?(code) raise "Response Code is #{code}" unless resp.include?('Response code = 404') end response end end |
#shopify_inventory_item_url ⇒ Object
51 52 53 |
# File 'lib/tiny_builder/apigateway_helper.rb', line 51 def shopify_inventory_item_url apigateway_url + '/shopify/data_variant' end |
#shopify_location_url ⇒ Object
55 56 57 |
# File 'lib/tiny_builder/apigateway_helper.rb', line 55 def shopify_location_url apigateway_url + '/shopify/data_location' end |
#woocommerce_item_payload(listing) ⇒ Object
63 64 65 66 67 68 |
# File 'lib/tiny_builder/apigateway_helper.rb', line 63 def woocommerce_item_payload(listing) { "credential": credential, "data": { "local_item_id": listing.local_item_id, local_id: listing[:local_id] } }.to_json end |
#woocommerce_product_url ⇒ Object
59 60 61 |
# File 'lib/tiny_builder/apigateway_helper.rb', line 59 def woocommerce_product_url apigateway_url + '/woocommerce/item' end |
#zalora_stock_payload(listing) ⇒ Object
29 30 31 32 33 34 35 36 |
# File 'lib/tiny_builder/apigateway_helper.rb', line 29 def zalora_stock_payload(listing) { "credential": credential, "data": { "productId": listing[:local_id] } }.to_json end |
#zalora_stock_url ⇒ Object
21 22 23 |
# File 'lib/tiny_builder/apigateway_helper.rb', line 21 def zalora_stock_url apigateway_url + "/zalora/listing_stock" end |