class Desertcart::Client
Constants
- REQUEST_HEADERS
- ROOT_URI
Attributes
store_id[R]
store_token[R]
user_id[R]
user_token[R]
Public Class Methods
new(args = {})
click to toggle source
# File lib/desertcart/client.rb, line 17 def initialize(args = {}) @user_id = args[:user_id] @user_token = args[:user_token] @store_id = args[:store_id] @store_token = args[:store_token] end
Public Instance Methods
auth_headers()
click to toggle source
# File lib/desertcart/client.rb, line 36 def auth_headers { 'X-User-Id' => @user_id, 'X-User-Token' => @user_token, 'X-Store-Id' => @store_id, 'X-Store-Token' => @store_token } end
create(**keywords)
click to toggle source
# File lib/desertcart/client.rb, line 28 def create(**keywords) request(keywords.merge(method: :post)) end
read(**keywords)
click to toggle source
# File lib/desertcart/client.rb, line 24 def read(**keywords) request(keywords.merge(method: :get)) end
request(args = {})
click to toggle source
# File lib/desertcart/client.rb, line 45 def request(args = {}) request = LedgerSync::Ledgers::Request.new( body: args.fetch(:body, nil), headers: args.fetch(:headers, {}) .merge(REQUEST_HEADERS) .merge(auth_headers), method: args.fetch(:method), url: url_from_path(path: args.fetch(:path)), params: args.fetch(:params, {}) ) request.perform end
update(**keywords)
click to toggle source
# File lib/desertcart/client.rb, line 32 def update(**keywords) request(keywords.merge(method: :put)) end
url_from_path(path:)
click to toggle source
# File lib/desertcart/client.rb, line 59 def url_from_path(path:) request_url = ROOT_URI request_url += '/' unless path.to_s.start_with?('/') request_url + path.to_s end